public class WeakHashTable extends LispObject implements Hashtable
| Modifier and Type | Class and Description |
|---|---|
protected static class |
WeakHashTable.Comparator |
protected static class |
WeakHashTable.EqlComparator |
protected static class |
WeakHashTable.EqualComparator |
protected static class |
WeakHashTable.EqualpComparator |
| Modifier and Type | Field and Description |
|---|---|
protected org.armedbear.lisp.WeakHashTable.HashEntry[] |
buckets
Array containing the actual key-value mappings.
|
protected int |
count
The actual current number of key-value pairs.
|
protected static float |
loadFactor |
protected LispObject |
rehashSize |
protected LispObject |
rehashThreshold |
protected int |
threshold
The rounded product of the capacity and the load factor.
|
| Modifier and Type | Method and Description |
|---|---|
protected static int |
calculateInitialCapacity(int size) |
LispObject |
classOf() |
void |
clear() |
LispObject |
ENTRIES()
Deprecated.
|
boolean |
equalp(LispObject obj) |
LispObject |
get(LispObject key) |
int |
getCount()
Number of entries stored in the hash buckets.
|
LispObject |
getEntries() |
protected org.armedbear.lisp.WeakHashTable.HashEntry |
getEntry(LispObject key) |
LispObject |
gethash(LispObject key) |
LispObject |
gethash(LispObject key,
LispObject defaultValue) |
LispObject |
gethash1(LispObject key) |
LispObject |
getParts()
Implementing the getParts() protocol will allow INSPECT to
return information about the substructure of a descendent of
LispObject.
|
LispObject |
getRehashSize() |
LispObject |
getRehashThreshold() |
int |
getSize()
How many hash buckets exist in the underlying data structure.
|
Symbol |
getTest() |
LispObject |
getWeakness() |
LispObject |
MAPHASH(LispObject function) |
static WeakHashTable |
newEqHashTable(int size,
LispObject rehashSize,
LispObject rehashThreshold,
LispObject weakness) |
static WeakHashTable |
newEqlHashTable(int size,
LispObject rehashSize,
LispObject rehashThreshold,
LispObject weakness) |
static WeakHashTable |
newEqualHashTable(int size,
LispObject rehashSize,
LispObject rehashThreshold,
LispObject weakness) |
static WeakHashTable |
newEqualpHashTable(int size,
LispObject rehashSize,
LispObject rehashThreshold,
LispObject weakness) |
java.lang.String |
printObject() |
int |
psxhash() |
void |
put(LispObject key,
LispObject value) |
LispObject |
puthash(LispObject key,
LispObject newValue) |
protected void |
rehash() |
LispObject |
remhash(LispObject key) |
LispObject |
remove(LispObject key) |
LispObject |
typeOf() |
LispObject |
typep(LispObject type) |
ABS, add, add, aref_long, aref, AREF, AREF, aset, aset, aset, ash, ash, atom, ATOM, caddr, cadr, car, cddr, cdr, CHAR, characterp, CHARACTERP, chars, COMPLEXP, constantp, CONSTANTP, copyToArray, decr, DENOMINATOR, dispatch, divideBy, doubleValue, elt, endp, ENDP, EQ, eql, eql, eql, EQL, equal, equal, EQUAL, equalp, evenp, EVENP, execute, execute, execute, execute, execute, execute, execute, execute, execute, execute, execute, floatp, FLOATP, floatValue, getBooleanValue, getCallCount, getDescription, getDocumentation, getFixnumSlotValue, getHotCount, getInstance, getPropertyList, getSlotValue_0, getSlotValue_1, getSlotValue_2, getSlotValue_3, getSlotValue, getSlotValueAsBoolean, getStringChars, getStringValue, getSymbolFunction, getSymbolFunctionOrDie, getSymbolSetfFunction, getSymbolSetfFunctionOrDie, getSymbolValue, incr, incrementCallCount, incrementHotCount, integerp, INTEGERP, intValue, IS_E, IS_GE, IS_GT, IS_LE, IS_LT, IS_NE, isEqualTo, isEqualTo, isGreaterThan, isGreaterThan, isGreaterThanOrEqualTo, isGreaterThanOrEqualTo, isLessThan, isLessThan, isLessThanOrEqualTo, isLessThanOrEqualTo, isNotEqualTo, isNotEqualTo, isSpecialOperator, isSpecialVariable, javaInstance, javaInstance, LDB, length, LENGTH, listp, LISTP, lockableInstance, LOGAND, LOGAND, LOGIOR, LOGIOR, LOGNOT, LOGXOR, LOGXOR, longValue, minusp, MINUSP, MOD, MOD, multiplyBy, multiplyBy, negate, noFillPointer, NOT, nreverse, NTH, NTH, nthcdr, numberp, NUMBERP, NUMERATOR, oddp, ODDP, plusp, PLUSP, princToString, psxhash, push, rationalp, RATIONALP, realp, REALP, resolve, reverse, RPLACA, RPLACD, SCHAR, setCallCount, setCar, setCdr, setDocumentation, setHotCount, setPropertyList, setSlotValue_0, setSlotValue_1, setSlotValue_2, setSlotValue_3, setSlotValue, setSlotValue, SIMPLE_STRING_P, SLOT_VALUE, STRING, stringp, STRINGP, subtract, subtract, SVREF, svset, sxhash, SYMBOLP, truncate, unreadableString, unreadableString, VECTOR_PUSH_EXTEND, VECTOR_PUSH_EXTEND, vectorp, VECTORP, vectorPushExtend, zerop, ZEROPprotected static final float loadFactor
protected final LispObject rehashSize
protected final LispObject rehashThreshold
protected int threshold
protected volatile org.armedbear.lisp.WeakHashTable.HashEntry[] buckets
protected volatile int count
protected static int calculateInitialCapacity(int size)
public static WeakHashTable newEqHashTable(int size, LispObject rehashSize, LispObject rehashThreshold, LispObject weakness)
public static WeakHashTable newEqlHashTable(int size, LispObject rehashSize, LispObject rehashThreshold, LispObject weakness)
public static WeakHashTable newEqualHashTable(int size, LispObject rehashSize, LispObject rehashThreshold, LispObject weakness)
public static WeakHashTable newEqualpHashTable(int size, LispObject rehashSize, LispObject rehashThreshold, LispObject weakness)
public final LispObject getRehashSize()
public final LispObject getRehashThreshold()
public int getSize()
public int getCount()
public LispObject typeOf()
typeOf in interface LispObjecttypeOf in class LispObjectpublic LispObject classOf()
classOf in class LispObjectpublic LispObject typep(LispObject type)
typep in class LispObjectpublic boolean equalp(LispObject obj)
equalp in class LispObjectpublic LispObject getParts()
LispObjectgetParts in class LispObjectpublic void clear()
public LispObject gethash(LispObject key)
public LispObject gethash(LispObject key, LispObject defaultValue)
public LispObject gethash1(LispObject key)
public LispObject puthash(LispObject key, LispObject newValue)
public LispObject remhash(LispObject key)
public java.lang.String printObject()
printObject in class LispObjectpublic Symbol getTest()
public LispObject getWeakness()
protected org.armedbear.lisp.WeakHashTable.HashEntry getEntry(LispObject key)
public LispObject get(LispObject key)
public void put(LispObject key, LispObject value)
public LispObject remove(LispObject key)
protected void rehash()
@Deprecated public LispObject ENTRIES()
public LispObject getEntries()
getEntries in interface Hashtablepublic LispObject MAPHASH(LispObject function)
public int psxhash()
psxhash in class LispObject