Package org.armedbear.lisp
Class Layout
- java.lang.Object
-
- org.armedbear.lisp.LispObject
-
- org.armedbear.lisp.Layout
-
public class Layout extends LispObject
-
-
Field Summary
Fields Modifier and Type Field Description java.util.concurrent.ConcurrentHashMap<LispObject,LispObject>
slotTable
-
Constructor Summary
Constructors Constructor Description Layout(LispObject lispClass, LispObject[] instanceSlotNames, LispObject sharedSlots)
Layout(LispObject lispClass, LispObject instanceSlots, LispObject sharedSlots)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected LispObject
generateSlotDefinitions()
int
getLength()
LispObject
getLispClass()
LispObject
getParts()
Implementing the getParts() protocol will allow INSPECT to return information about the substructure of a descendent of LispObject.LispObject
getSharedSlotLocation(LispObject slotName)
LispObject
getSharedSlots()
int
getSlotIndex(LispObject slotName)
LispObject[]
getSlotNames()
void
invalidate()
boolean
isInvalid()
java.lang.String
printObject()
-
Methods inherited from class org.armedbear.lisp.LispObject
ABS, add, add, aref, AREF, AREF, aref_long, aset, aset, aset, ash, ash, atom, ATOM, caddr, cadr, car, cddr, cdr, CHAR, characterp, CHARACTERP, chars, classOf, COMPLEXP, constantp, CONSTANTP, copyToArray, decr, DENOMINATOR, dispatch, divideBy, doubleValue, elt, endp, ENDP, EQ, eql, eql, eql, EQL, equal, equal, EQUAL, equalp, 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, getSlotValue_0, getSlotValue_1, getSlotValue_2, getSlotValue_3, 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, psxhash, push, rationalp, RATIONALP, realp, REALP, resolve, reverse, RPLACA, RPLACD, SCHAR, setCallCount, setCar, setCdr, setDocumentation, setHotCount, setPropertyList, setSlotValue, setSlotValue, setSlotValue_0, setSlotValue_1, setSlotValue_2, setSlotValue_3, SIMPLE_STRING_P, SLOT_VALUE, STRING, stringp, STRINGP, subtract, subtract, SVREF, svset, sxhash, SYMBOLP, truncate, typeOf, typep, unreadableString, unreadableString, VECTOR_PUSH_EXTEND, VECTOR_PUSH_EXTEND, vectorp, VECTORP, vectorPushExtend, zerop, ZEROP
-
-
-
-
Field Detail
-
slotTable
public final java.util.concurrent.ConcurrentHashMap<LispObject,LispObject> slotTable
-
-
Constructor Detail
-
Layout
public Layout(LispObject lispClass, LispObject instanceSlots, LispObject sharedSlots)
-
Layout
public Layout(LispObject lispClass, LispObject[] instanceSlotNames, LispObject sharedSlots)
-
-
Method Detail
-
getParts
public LispObject getParts()
Description copied from class:LispObject
Implementing the getParts() protocol will allow INSPECT to return information about the substructure of a descendent of LispObject. The protocol is to return a List of Cons pairs, where the car of each pair contains a decriptive string, and the cdr returns a subobject for inspection.- Overrides:
getParts
in classLispObject
-
getLispClass
public LispObject getLispClass()
-
isInvalid
public boolean isInvalid()
-
invalidate
public void invalidate()
-
getSlotNames
public LispObject[] getSlotNames()
-
getLength
public int getLength()
-
getSharedSlots
public LispObject getSharedSlots()
-
printObject
public java.lang.String printObject()
- Overrides:
printObject
in classLispObject
-
generateSlotDefinitions
protected LispObject generateSlotDefinitions()
-
getSlotIndex
public int getSlotIndex(LispObject slotName)
-
getSharedSlotLocation
public LispObject getSharedSlotLocation(LispObject slotName)
-
-