org.armedbear.lisp
Class Environment

java.lang.Object
  extended by org.armedbear.lisp.Lisp
      extended by org.armedbear.lisp.LispObject
          extended by org.armedbear.lisp.Environment

public final class Environment
extends LispObject


Field Summary
static Primitive ENVIRONMENT_ADD_FUNCTION_DEFINITION
           
static Primitive ENVIRONMENT_ADD_MACRO_DEFINITION
           
static Primitive ENVIRONMENT_ADD_SYMBOL_BINDING
           
static Primitive MAKE_ENVIRONMENT
           
 
Fields inherited from class org.armedbear.lisp.Lisp
_AUTOLOAD_VERBOSE_, _BACKQUOTE_COUNT_, _BATCH_MODE_, _BQ_VECTOR_FLAG_, _CL_PACKAGE_, _COMPILE_FILE_ENVIRONMENT_, _COMPILE_FILE_TYPE_, _COMPILE_FILE_ZIP_, _CURRENT_PRINT_LENGTH_, _CURRENT_PRINT_LEVEL_, _DEBUG_, _DISASSEMBLER_, _ENABLE_INLINE_EXPANSION_, _EXPLAIN_, _KEYWORD_PACKAGE_, _LOAD_DEPTH_, _LOAD_STREAM_, _NOINFORM_, _PRINT_FASL_, _PRINT_STRUCTURE_, _REQUIRE_STACK_FRAME_, _SAFETY_, _SAVED_BACKTRACE_, _SLOT_UNBOUND_, _SOURCE_, _SOURCE_POSITION_, _SPACE_, _SPEED_, _TRACED_NAMES_, _WARN_ON_REDEFINITION_, ARRAY_DIMENSION_MAX, CALL_REGISTERS_LIMIT, CALL_REGISTERS_MAX, CHAR_MAX, cold, COMPILE_FILE_TYPE, debug, EOF, FUNCTION_NAME, initialized, interrupted, NIL, NULL_VALUE, PACKAGE_CL, PACKAGE_CL_USER, PACKAGE_EXT, PACKAGE_JAVA, PACKAGE_JVM, PACKAGE_KEYWORD, PACKAGE_LOOP, PACKAGE_MOP, PACKAGE_PROF, PACKAGE_SYS, PACKAGE_TPL, profiling, REMEMBER, sampleNow, sampling, STANDARD_READTABLE, T, TRAP_OVERFLOW, TRAP_UNDERFLOW, UNBOUND_VALUE, UNSIGNED_BYTE_16, UNSIGNED_BYTE_32, UNSIGNED_BYTE_32_MAX_VALUE, UNSIGNED_BYTE_8
 
Constructor Summary
Environment()
           
Environment(Environment parent)
           
Environment(Environment parent, Symbol symbol, LispObject value)
           
 
Method Summary
 void addBlock(LispObject tag, 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 getTagBinding(LispObject tag)
           
 boolean isDeclaredSpecial(LispObject var)
          Return true if a symbol is declared special.
 boolean isEmpty()
           
 LispObject lookup(LispObject symbol)
           
 LispObject lookupBlock(LispObject symbol)
           
 LispObject lookupFunction(LispObject name)
           
 LispObject processDeclarations(LispObject body)
           
 void rebind(Symbol symbol, LispObject value)
           
 LispObject typeOf()
           
 LispObject typep(LispObject type)
           
 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, execute, execute, execute, execute, execute, execute, execute, execute, floatp, FLOATP, floatValue, getBooleanValue, getCallCount, getDescription, getDocumentation, getFixnumSlotValue, getInstance, getParts, getPropertyList, getSlotValue_0, getSlotValue_1, getSlotValue_2, getSlotValue_3, getSlotValue, getSlotValueAsBoolean, getStringChars, getStringValue, getSymbolFunction, getSymbolFunctionOrDie, getSymbolValue, incr, incrementCallCount, 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, 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, reverse, RPLACA, RPLACD, SCHAR, setCallCount, setCar, setCdr, setDocumentation, 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 org.armedbear.lisp.Lisp
assq, bindArg, checkArray, checkBinaryInputStream, checkBounds, checkCharacter, checkCharacterInputStream, checkCharacterOutputStream, checkEnvironment, checkFunction, checkList, checkPackage, checkReadtable, checkStream, checkSymbol, checkVector, coerceJavaByteToLispObject, coerceLispObjectToJavaByte, coerceToFunction, coerceToPackage, coerceToPathname, currentReadtable, designator_readtable, error, error, eval, eval, evalCall, exit, exportConstant, exportSpecial, format, funcall, gensym, gensym, get, get, getCurrentPackage, getf, getStandardInput, getStandardOutput, getTerminalIO, getUpgradedArrayElementType, handleInterrupt, inSynonymOf, intern, internConstant, internInPackage, internKeyword, internSpecial, isValidSetfFunctionName, javaString, list, list1, list2, list3, list4, list5, list6, list7, list8, list9, loadCompiledFunction, loadTimeValue, macroexpand_1, macroexpand, makeCompiledClosure, memq, memql, mix, mod, multipleValueCall1, multipleValueList, number, number, number, progn, progvBindVars, put, putf, readObjectFromString, recall, remprop, resetIO, resetIO, safeWriteToString, setInterrupted, type_error, writeByte
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

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 class LispObject

classOf

public LispObject classOf()
Overrides:
classOf in class LispObject

typep

public LispObject typep(LispObject type)
                 throws ConditionThrowable
Overrides:
typep in class LispObject
Throws:
ConditionThrowable

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)

getBinding

public org.armedbear.lisp.Binding getBinding(LispObject symbol)

addFunctionBinding

public void addFunctionBinding(LispObject name,
                               LispObject value)

lookupFunction

public LispObject lookupFunction(LispObject name)
                          throws ConditionThrowable
Throws:
ConditionThrowable

addBlock

public void addBlock(LispObject tag,
                     LispObject block)

lookupBlock

public LispObject lookupBlock(LispObject symbol)

addTagBinding

public void addTagBinding(LispObject tag,
                          LispObject code)

getTagBinding

public org.armedbear.lisp.Binding getTagBinding(LispObject tag)

processDeclarations

public LispObject processDeclarations(LispObject body)
                               throws ConditionThrowable
Throws:
ConditionThrowable

declareSpecial

public void declareSpecial(Symbol var)

isDeclaredSpecial

public boolean isDeclaredSpecial(LispObject 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.


writeToString

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