org.armedbear.lisp
Class LispThread
java.lang.Object
org.armedbear.lisp.LispObject
org.armedbear.lisp.LispThread
public final class LispThread
- extends LispObject
Method Summary |
LispObject[] |
accumulateValues(LispObject result,
LispObject[] oldValues)
|
LispObject |
backtrace(int limit)
|
SpecialBinding |
bindSpecial(Symbol name,
LispObject value)
|
SpecialBinding |
bindSpecialToCurrentValue(Symbol name)
|
LispObject |
classOf()
|
void |
clearValues()
|
static LispThread |
currentThread()
|
LispObject |
execute(LispObject function)
|
LispObject |
execute(LispObject function,
LispObject arg)
|
LispObject |
execute(LispObject function,
LispObject[] args)
|
LispObject |
execute(LispObject function,
LispObject first,
LispObject second)
|
LispObject |
execute(LispObject function,
LispObject first,
LispObject second,
LispObject third)
|
LispObject |
execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth)
|
LispObject |
execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth,
LispObject fifth)
|
LispObject |
execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth,
LispObject fifth,
LispObject sixth)
|
LispObject |
execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth,
LispObject fifth,
LispObject sixth,
LispObject seventh)
|
LispObject |
execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth,
LispObject fifth,
LispObject sixth,
LispObject seventh,
LispObject eighth)
|
java.lang.StackTraceElement[] |
getJavaStackTrace()
|
SpecialBinding |
getSpecialBinding(Symbol name)
|
LispObject[] |
getValues()
|
LispObject[] |
getValues(LispObject result,
int count)
|
void |
incrementCallCounts()
|
boolean |
isDestroyed()
|
static long |
javaSleepInterval(LispObject lispSleep)
|
LispObject |
lookupSpecial(Symbol name)
Looks up the value of a special binding in the context of the
given thread. |
SpecialBindingsMark |
markSpecialBindings()
Marks the state of the special bindings,
for later rewinding by resetSpecialBindings(). |
LispObject |
nothing()
|
void |
popCatchTag()
|
void |
popStackFrame()
|
void |
printBacktrace()
|
void |
printBacktrace(int limit)
|
java.lang.String |
printObject()
|
void |
pushCatchTag(LispObject tag)
|
LispObject |
pushSpecial(Symbol name,
LispObject thing)
|
void |
pushStackFrame(StackFrame frame)
|
void |
rebindSpecial(Symbol name,
LispObject value)
|
protected static void |
releaseSpecialIndex(Symbol sym)
Frees up an index previously assigned to a symbol for re-assignment
to another symbol. |
void |
resetSpecialBindings(SpecialBindingsMark mark)
Restores the state of the special bindings to what
was captured in the marker 'mark' by a call to markSpecialBindings(). |
void |
resetStack()
|
LispObject |
safeSymbolValue(Symbol name)
|
Environment |
setEnv(Environment env)
|
LispObject |
setSpecialVariable(Symbol name,
LispObject value)
|
LispObject |
setValues()
|
LispObject |
setValues(LispObject value1)
|
LispObject |
setValues(LispObject[] values)
|
LispObject |
setValues(LispObject value1,
LispObject value2)
|
LispObject |
setValues(LispObject value1,
LispObject value2,
LispObject value3)
|
LispObject |
setValues(LispObject value1,
LispObject value2,
LispObject value3,
LispObject value4)
|
void |
throwToTag(LispObject tag,
LispObject result)
|
LispObject |
typeOf()
|
LispObject |
typep(LispObject typeSpecifier)
|
LispObject |
value(LispObject obj)
|
Methods inherited from class org.armedbear.lisp.LispObject |
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, getParts, 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, ZEROP |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_values
public LispObject[] _values
currentThread
public static final LispThread currentThread()
getJavaStackTrace
public java.lang.StackTraceElement[] getJavaStackTrace()
typeOf
public LispObject typeOf()
- Overrides:
typeOf
in class LispObject
classOf
public LispObject classOf()
- Overrides:
classOf
in class LispObject
typep
public LispObject typep(LispObject typeSpecifier)
- Overrides:
typep
in class LispObject
isDestroyed
public final boolean isDestroyed()
getValues
public final LispObject[] getValues()
getValues
public final LispObject[] getValues(LispObject result,
int count)
accumulateValues
public final LispObject[] accumulateValues(LispObject result,
LispObject[] oldValues)
setValues
public final LispObject setValues()
setValues
public final LispObject setValues(LispObject value1)
setValues
public final LispObject setValues(LispObject value1,
LispObject value2)
setValues
public final LispObject setValues(LispObject value1,
LispObject value2,
LispObject value3)
setValues
public final LispObject setValues(LispObject value1,
LispObject value2,
LispObject value3,
LispObject value4)
setValues
public final LispObject setValues(LispObject[] values)
clearValues
public final void clearValues()
nothing
public final LispObject nothing()
value
public final LispObject value(LispObject obj)
markSpecialBindings
public final SpecialBindingsMark markSpecialBindings()
- Marks the state of the special bindings,
for later rewinding by resetSpecialBindings().
resetSpecialBindings
public final void resetSpecialBindings(SpecialBindingsMark mark)
- Restores the state of the special bindings to what
was captured in the marker 'mark' by a call to markSpecialBindings().
releaseSpecialIndex
protected static void releaseSpecialIndex(Symbol sym)
- Frees up an index previously assigned to a symbol for re-assignment
to another symbol. Returns without effect if the symbol has the
default UNASSIGNED_SPECIAL_INDEX special index.
bindSpecial
public final SpecialBinding bindSpecial(Symbol name,
LispObject value)
bindSpecialToCurrentValue
public final SpecialBinding bindSpecialToCurrentValue(Symbol name)
lookupSpecial
public final LispObject lookupSpecial(Symbol name)
- Looks up the value of a special binding in the context of the
given thread.
In order to find the value of a special variable (in general),
use
Symbol.symbolValue()
.
- Parameters:
name
- The name of the special variable, normally a symbol
- Returns:
- The inner most binding of the special, or null if unbound
- See Also:
Symbol.symbolValue()
getSpecialBinding
public final SpecialBinding getSpecialBinding(Symbol name)
setSpecialVariable
public final LispObject setSpecialVariable(Symbol name,
LispObject value)
pushSpecial
public final LispObject pushSpecial(Symbol name,
LispObject thing)
safeSymbolValue
public final LispObject safeSymbolValue(Symbol name)
rebindSpecial
public final void rebindSpecial(Symbol name,
LispObject value)
pushCatchTag
public void pushCatchTag(LispObject tag)
popCatchTag
public void popCatchTag()
throwToTag
public void throwToTag(LispObject tag,
LispObject result)
pushStackFrame
public final void pushStackFrame(StackFrame frame)
popStackFrame
public final void popStackFrame()
setEnv
public final Environment setEnv(Environment env)
resetStack
public void resetStack()
execute
public LispObject execute(LispObject function)
- Overrides:
execute
in class LispObject
execute
public LispObject execute(LispObject function,
LispObject arg)
- Overrides:
execute
in class LispObject
execute
public LispObject execute(LispObject function,
LispObject first,
LispObject second)
- Overrides:
execute
in class LispObject
execute
public LispObject execute(LispObject function,
LispObject first,
LispObject second,
LispObject third)
- Overrides:
execute
in class LispObject
execute
public LispObject execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth)
- Overrides:
execute
in class LispObject
execute
public LispObject execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth,
LispObject fifth)
- Overrides:
execute
in class LispObject
execute
public LispObject execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth,
LispObject fifth,
LispObject sixth)
- Overrides:
execute
in class LispObject
execute
public LispObject execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth,
LispObject fifth,
LispObject sixth,
LispObject seventh)
- Overrides:
execute
in class LispObject
execute
public LispObject execute(LispObject function,
LispObject first,
LispObject second,
LispObject third,
LispObject fourth,
LispObject fifth,
LispObject sixth,
LispObject seventh,
LispObject eighth)
execute
public LispObject execute(LispObject function,
LispObject[] args)
printBacktrace
public void printBacktrace()
printBacktrace
public void printBacktrace(int limit)
backtrace
public LispObject backtrace(int limit)
incrementCallCounts
public void incrementCallCounts()
printObject
public java.lang.String printObject()
- Overrides:
printObject
in class LispObject
javaSleepInterval
public static final long javaSleepInterval(LispObject lispSleep)