Package org.armedbear.lisp
Class Environment
- java.lang.Object
-
- org.armedbear.lisp.LispObject
-
- org.armedbear.lisp.Environment
-
- All Implemented Interfaces:
java.io.Serializable
public final class Environment extends LispObject implements java.io.Serializable
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static Primitive
ENVIRONMENT_ADD_FUNCTION_DEFINITION
static Primitive
ENVIRONMENT_ADD_MACRO_DEFINITION
static Primitive
ENVIRONMENT_ADD_SYMBOL_BINDING
boolean
inactive
static Primitive
MAKE_ENVIRONMENT
-
Constructor Summary
Constructors Constructor Description Environment()
Environment(Environment parent)
Environment(Environment parent, Symbol symbol, LispObject value)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addBlock(LispObject symbol, LispObject block)
void
addFunctionBinding(LispObject name, LispObject value)
void
addTagBinding(LispObject tag, LispObject code)
void
bind(Symbol symbol, LispObject value)
LispObject
classOf()
void
declareSpecial(Symbol var)
org.armedbear.lisp.Binding
getBinding(LispObject symbol)
org.armedbear.lisp.Binding
getBinding(LispObject symbol, org.armedbear.lisp.Binding binding)
org.armedbear.lisp.Binding
getBlockBinding(LispObject block)
org.armedbear.lisp.Binding
getOuterMostBlock()
org.armedbear.lisp.Binding
getTagBinding(LispObject tag)
boolean
isDeclaredSpecial(Symbol var)
Return true if a symbol is declared special.boolean
isEmpty()
LispObject
lookup(LispObject symbol)
LispObject
lookup(LispObject symbol, org.armedbear.lisp.Binding binding)
LispObject
lookupBlock(LispObject symbol)
LispObject
lookupFunction(LispObject name)
java.lang.String
printObject()
LispObject
processDeclarations(LispObject body)
void
rebind(Symbol symbol, LispObject value)
LispObject
typeOf()
LispObject
typep(LispObject type)
-
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, 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, getParts, 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, unreadableString, unreadableString, VECTOR_PUSH_EXTEND, VECTOR_PUSH_EXTEND, vectorp, VECTORP, vectorPushExtend, zerop, ZEROP
-
-
-
-
Field Detail
-
inactive
public boolean inactive
-
MAKE_ENVIRONMENT
public static final Primitive MAKE_ENVIRONMENT
-
ENVIRONMENT_ADD_MACRO_DEFINITION
public static final Primitive ENVIRONMENT_ADD_MACRO_DEFINITION
-
ENVIRONMENT_ADD_FUNCTION_DEFINITION
public static final Primitive ENVIRONMENT_ADD_FUNCTION_DEFINITION
-
ENVIRONMENT_ADD_SYMBOL_BINDING
public static final Primitive ENVIRONMENT_ADD_SYMBOL_BINDING
-
-
Constructor Detail
-
Environment
public Environment()
-
Environment
public Environment(Environment parent)
-
Environment
public Environment(Environment parent, Symbol symbol, LispObject value)
-
-
Method Detail
-
typeOf
public LispObject typeOf()
- Overrides:
typeOf
in classLispObject
-
classOf
public LispObject classOf()
- Overrides:
classOf
in classLispObject
-
typep
public LispObject typep(LispObject type)
- Overrides:
typep
in classLispObject
-
isEmpty
public boolean isEmpty()
-
bind
public void bind(Symbol symbol, LispObject value)
-
rebind
public void rebind(Symbol symbol, LispObject value)
-
lookup
public LispObject lookup(LispObject symbol, org.armedbear.lisp.Binding binding)
-
lookup
public LispObject lookup(LispObject symbol)
-
getOuterMostBlock
public org.armedbear.lisp.Binding getOuterMostBlock()
-
getBinding
public org.armedbear.lisp.Binding getBinding(LispObject symbol)
-
getBinding
public org.armedbear.lisp.Binding getBinding(LispObject symbol, org.armedbear.lisp.Binding binding)
-
addFunctionBinding
public void addFunctionBinding(LispObject name, LispObject value)
-
lookupFunction
public LispObject lookupFunction(LispObject name)
-
addBlock
public void addBlock(LispObject symbol, LispObject block)
-
lookupBlock
public LispObject lookupBlock(LispObject symbol)
-
getBlockBinding
public org.armedbear.lisp.Binding getBlockBinding(LispObject block)
-
addTagBinding
public void addTagBinding(LispObject tag, LispObject code)
-
getTagBinding
public org.armedbear.lisp.Binding getTagBinding(LispObject tag)
-
processDeclarations
public LispObject processDeclarations(LispObject body)
-
declareSpecial
public void declareSpecial(Symbol var)
-
isDeclaredSpecial
public boolean isDeclaredSpecial(Symbol var)
Return true if a symbol is declared special. If there is no binding in the current (lexical) environment, the current dynamic environment (thread) is checked.
-
printObject
public java.lang.String printObject()
- Overrides:
printObject
in classLispObject
-
-