Class CompactStringObjectMap
- java.lang.Object
-
- com.fasterxml.jackson.databind.util.CompactStringObjectMap
-
- All Implemented Interfaces:
java.io.Serializable
public final class CompactStringObjectMap extends java.lang.Object implements java.io.SerializableSpecialized lookup class that implements functionality similar toMap, but for special case of key always beingStringand using more compact (and memory-access friendly) hashing scheme. Assumption is also that keys are typically intern()ed.Generics are not used to avoid bridge methods and since these maps are not exposed as part of external API.
- Since:
- 2.6
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Object[]_hashAreaprivate int_hashMaskprivate int_spillCountprivate static CompactStringObjectMapEMPTYShared instance that can be used when there are no contents to Map.private static longserialVersionUID
-
Constructor Summary
Constructors Modifier Constructor Description privateCompactStringObjectMap(int hashMask, int spillCount, java.lang.Object[] hashArea)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.Object_find2(java.lang.String key, int slot, java.lang.Object match)static <T> CompactStringObjectMapconstruct(java.util.Map<java.lang.String,T> all)java.lang.Objectfind(java.lang.String key)java.lang.ObjectfindCaseInsensitive(java.lang.String key)private static intfindSize(int size)java.util.List<java.lang.String>keys()
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
EMPTY
private static final CompactStringObjectMap EMPTY
Shared instance that can be used when there are no contents to Map.
-
_hashMask
private final int _hashMask
-
_spillCount
private final int _spillCount
-
_hashArea
private final java.lang.Object[] _hashArea
-
-
Method Detail
-
construct
public static <T> CompactStringObjectMap construct(java.util.Map<java.lang.String,T> all)
-
findSize
private static final int findSize(int size)
-
find
public java.lang.Object find(java.lang.String key)
-
_find2
private final java.lang.Object _find2(java.lang.String key, int slot, java.lang.Object match)
-
findCaseInsensitive
public java.lang.Object findCaseInsensitive(java.lang.String key)
- Since:
- 2.9
-
keys
public java.util.List<java.lang.String> keys()
-
-