Package org.mozilla.javascript
Class UintMap
java.lang.Object
org.mozilla.javascript.UintMap
- All Implemented Interfaces:
Serializable
Map to associate non-negative integers to objects or integers. The map does not synchronize any
of its operation, so either use it from a single thread or do own synchronization or perform all
mutation operations on one thread before passing the map to others.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intprivate static final booleanprivate static final intprivate static final intprivate intprivate intprivate int[]private intprivate intprivate static final longprivate Object[] -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()private intensureIndex(int key, boolean intType) private intfindIndex(int key) intgetExistingInt(int key) Get integer value assigned with key.intgetInt(int key, int defaultValue) Get integer value assigned with key.int[]getKeys()Return array of present keysgetObject(int key) Get object value assigned with key.booleanhas(int key) private intinsertNewKey(int key) booleanisEmpty()voidput(int key, int value) Set int value of the key.voidSet object value of the key.private voidprivate voidrehashTable(boolean ensureIntSpace) voidremove(int key) intsize()private static inttableLookupStep(int fraction, int mask, int power) private void
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
A
private static final int A- See Also:
-
EMPTY
private static final int EMPTY- See Also:
-
DELETED
private static final int DELETED- See Also:
-
keys
private transient int[] keys -
values
-
power
private int power -
keyCount
private int keyCount -
occupiedCount
private transient int occupiedCount -
ivaluesShift
private transient int ivaluesShift -
check
private static final boolean check- See Also:
-
-
Constructor Details
-
UintMap
public UintMap() -
UintMap
public UintMap(int initialCapacity)
-
-
Method Details
-
isEmpty
public boolean isEmpty() -
size
public int size() -
has
public boolean has(int key) -
getObject
Get object value assigned with key.- Returns:
- key object value or null if key is absent
-
getInt
public int getInt(int key, int defaultValue) Get integer value assigned with key.- Returns:
- key integer value or defaultValue if key is absent
-
getExistingInt
public int getExistingInt(int key) Get integer value assigned with key.- Returns:
- key integer value or defaultValue if key does not exist or does not have int value
- Throws:
RuntimeException- if key does not exist
-
put
Set object value of the key. If key does not exist, also set its int value to 0. -
put
public void put(int key, int value) Set int value of the key. If key does not exist, also set its object value to null. -
remove
public void remove(int key) -
clear
public void clear() -
getKeys
public int[] getKeys()Return array of present keys -
tableLookupStep
private static int tableLookupStep(int fraction, int mask, int power) -
findIndex
private int findIndex(int key) -
insertNewKey
private int insertNewKey(int key) -
rehashTable
private void rehashTable(boolean ensureIntSpace) -
ensureIndex
private int ensureIndex(int key, boolean intType) -
writeObject
- Throws:
IOException
-
readObject
- Throws:
IOExceptionClassNotFoundException
-