org.armedbear.lisp
Class LispThread

java.lang.Object
  extended by org.armedbear.lisp.LispObject
      extended by org.armedbear.lisp.LispThread

public final class LispThread
extends LispObject


Field Summary
 LispObject[] _values
           
 
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 getStack()
          Deprecated. 
 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)
           
 void pushCatchTag(LispObject tag)
           
 LispObject pushSpecial(Symbol name, LispObject thing)
           
 void pushStackFrame(StackFrame frame)
           
 void rebindSpecial(Symbol name, LispObject value)
           
 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)
           
 LispObject setSpecialVariable(Symbol name, LispObject value)
           
 void setStack(LispObject stack)
          Deprecated. 
 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)
           
 java.lang.String writeToString()
           
 
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, 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, 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
 

Field Detail

_values

public LispObject[] _values
Method Detail

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().


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)

getStack

@Deprecated
public LispObject getStack()
Deprecated. 


setStack

@Deprecated
public void setStack(LispObject stack)
Deprecated. 


pushStackFrame

public final void pushStackFrame(StackFrame frame)

popStackFrame

public final void popStackFrame()

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()

writeToString

public java.lang.String writeToString()
Overrides:
writeToString in class LispObject

javaSleepInterval

public static final long javaSleepInterval(LispObject lispSleep)