public final class LispThread extends LispObject implements Inspectable
| Modifier and Type | Field and Description |
|---|---|
LispObject[] |
_values |
static Primitive |
BACKTRACE |
static Primitive |
CURRENT_THREAD |
java.util.Stack<Environment> |
envStack
Stack holding bindings for evaluated functions
|
static Primitive |
FRAME_TO_LIST |
static Primitive |
FRAME_TO_STRING |
static Symbol |
NATIVE_THREADS |
static Primitive |
OBJECT_NOTIFY |
static Primitive |
OBJECT_NOTIFY_ALL |
static Primitive |
OBJECT_WAIT |
static SpecialOperator |
SYNCHRONIZED_ON |
static Symbol |
VIRTUAL_THREADS |
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, equalp, evenp, EVENP, 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, 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, ZEROPpublic LispObject[] _values
public java.util.Stack<Environment> envStack
public static Symbol NATIVE_THREADS
public static Symbol VIRTUAL_THREADS
public static final Primitive CURRENT_THREAD
public static final Primitive BACKTRACE
public static final Primitive FRAME_TO_STRING
public static final Primitive FRAME_TO_LIST
public static final SpecialOperator SYNCHRONIZED_ON
public static final Primitive OBJECT_WAIT
public static final Primitive OBJECT_NOTIFY
public static final Primitive OBJECT_NOTIFY_ALL
public static final LispThread currentThread()
public LispObject getParts()
LispObjectgetParts in interface InspectablegetParts in class LispObjectpublic static boolean virtualThreadingAvailable()
public java.lang.StackTraceElement[] getJavaStackTrace()
public LispObject typeOf()
typeOf in class LispObjectpublic LispObject classOf()
classOf in class LispObjectpublic LispObject typep(LispObject typeSpecifier)
typep in class LispObjectpublic final boolean isDestroyed()
public final LispObject[] getValues()
public final LispObject[] getValues(LispObject result, int count)
public final LispObject[] accumulateValues(LispObject result, LispObject[] oldValues)
public final LispObject setValues()
public final LispObject setValues(LispObject value1)
public final LispObject setValues(LispObject value1, LispObject value2)
public final LispObject setValues(LispObject value1, LispObject value2, LispObject value3)
public final LispObject setValues(LispObject value1, LispObject value2, LispObject value3, LispObject value4)
public final LispObject setValues(LispObject[] values)
public final void clearValues()
public final LispObject nothing()
public final LispObject value(LispObject obj)
public final SpecialBindingsMark markSpecialBindings()
public final void resetSpecialBindings(SpecialBindingsMark mark)
protected static void releaseSpecialIndex(Symbol sym)
public final SpecialBinding bindSpecial(Symbol name, LispObject value)
public final SpecialBinding bindSpecialToCurrentValue(Symbol name)
public final LispObject lookupSpecial(Symbol name)
Symbol.symbolValue().name - The name of the special variable, normally a symbolSymbol.symbolValue()public final SpecialBinding getSpecialBinding(Symbol name)
public final LispObject setSpecialVariable(Symbol name, LispObject value)
public final LispObject pushSpecial(Symbol name, LispObject thing)
public final LispObject safeSymbolValue(Symbol name)
public final void rebindSpecial(Symbol name, LispObject value)
public void pushCatchTag(LispObject tag)
public void popCatchTag()
public void throwToTag(LispObject tag, LispObject result)
public final void pushStackFrame(JavaStackFrame frame)
public final Environment setEnv(Environment env)
public void resetStack()
public LispObject execute(LispObject function)
execute in class LispObjectpublic LispObject execute(LispObject function, LispObject arg)
execute in class LispObjectpublic LispObject execute(LispObject function, LispObject first, LispObject second)
execute in class LispObjectpublic LispObject execute(LispObject function, LispObject first, LispObject second, LispObject third)
execute in class LispObjectpublic LispObject execute(LispObject function, LispObject first, LispObject second, LispObject third, LispObject fourth)
execute in class LispObjectpublic LispObject execute(LispObject function, LispObject first, LispObject second, LispObject third, LispObject fourth, LispObject fifth)
execute in class LispObjectpublic LispObject execute(LispObject function, LispObject first, LispObject second, LispObject third, LispObject fourth, LispObject fifth, LispObject sixth)
execute in class LispObjectpublic LispObject execute(LispObject function, LispObject first, LispObject second, LispObject third, LispObject fourth, LispObject fifth, LispObject sixth, LispObject seventh)
execute in class LispObjectpublic LispObject execute(LispObject function, LispObject first, LispObject second, LispObject third, LispObject fourth, LispObject fifth, LispObject sixth, LispObject seventh, LispObject eighth)
public LispObject execute(LispObject function, LispObject[] args)
public void printBacktrace()
public void printBacktrace(int limit)
public LispObject backtrace(int limit)
public void incrementCallCounts()
public java.lang.String printObject()
printObject in class LispObject