public class HashTable extends LispObject implements org.armedbear.lisp.protocol.Hashtable
Modifier and Type | Class and Description |
---|---|
protected static class |
HashTable.Comparator |
protected static class |
HashTable.EqlComparator |
protected static class |
HashTable.EqualComparator |
protected static class |
HashTable.EqualpComparator |
protected static class |
HashTable.HashEntry |
Modifier and Type | Field and Description |
---|---|
protected HashTable.HashEntry[] |
buckets |
protected int |
count |
protected static float |
loadFactor |
protected LispObject |
rehashSize |
protected LispObject |
rehashThreshold |
protected int |
threshold |
Modifier | Constructor and Description |
---|---|
protected |
HashTable(HashTable.Comparator c,
int size,
LispObject rehashSize,
LispObject rehashThreshold) |
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, ZEROP
protected static final float loadFactor
protected final LispObject rehashSize
protected final LispObject rehashThreshold
protected int threshold
protected volatile HashTable.HashEntry[] buckets
protected volatile int count
protected HashTable(HashTable.Comparator c, int size, LispObject rehashSize, LispObject rehashThreshold)
protected static int calculateInitialCapacity(int size)
public static HashTable newEqHashTable(int size, LispObject rehashSize, LispObject rehashThreshold)
public static HashTable newEqlHashTable(int size, LispObject rehashSize, LispObject rehashThreshold)
public static HashTable newEqualHashTable(int size, LispObject rehashSize, LispObject rehashThreshold)
public static LispObject newEqualpHashTable(int size, LispObject rehashSize, LispObject rehashThreshold)
public final LispObject getRehashSize()
public final LispObject getRehashThreshold()
public int getSize()
public int getCount()
public LispObject typeOf()
typeOf
in interface org.armedbear.lisp.protocol.LispObject
typeOf
in class LispObject
public LispObject classOf()
classOf
in class LispObject
public LispObject typep(LispObject type)
typep
in class LispObject
public boolean equalp(LispObject obj)
equalp
in class LispObject
public LispObject getParts()
LispObject
getParts
in class LispObject
public 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 LispObject
public Symbol getTest()
protected HashTable.HashEntry getEntry(LispObject key)
public LispObject get(LispObject key)
public void put(LispObject key, LispObject value)
public LispObject remove(LispObject key)
protected void rehash()
public LispObject ENTRIES()
ENTRIES
in interface org.armedbear.lisp.protocol.Hashtable
public LispObject getEntries()
getEntries
in interface org.armedbear.lisp.protocol.Hashtable
public LispObject MAPHASH(LispObject function)
public int psxhash()
psxhash
in class LispObject