Package com.googlecode.aviator
Class InterpretExpression
- java.lang.Object
-
- com.googlecode.aviator.BaseExpression
-
- com.googlecode.aviator.InterpretExpression
-
- All Implemented Interfaces:
Expression,java.io.Serializable
public class InterpretExpression extends BaseExpression
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<Token<?>,AviatorObject>constantPoolprivate java.util.List<IR>instrumentsprivate static longserialVersionUIDprivate booleanunboxObjectprivate java.util.Map<VariableMeta,AviatorJavaType>variables-
Fields inherited from class com.googlecode.aviator.BaseExpression
FUNC_PARAMS_VAR, instance, lambdaBootstraps, sourceFile, symbolTable, varFullNames, varNames
-
-
Constructor Summary
Constructors Constructor Description InterpretExpression(AviatorEvaluatorInstance instance, java.util.List<VariableMeta> vars, java.util.Set<Token<?>> constants, SymbolTable symbolTable, java.util.List<IR> instruments, boolean unboxObject)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.ObjectexecuteDirectly(java.util.Map<java.lang.String,java.lang.Object> env)AviatorObjectloadConstant(Token<?> token)private voidloadConstants(java.util.Set<Token<?>> constants, java.util.List<IR> instruments)AviatorJavaTypeloadVar(VariableMeta v)private voidloadVars(java.util.List<VariableMeta> vars)voidprintInstruments()private voidreadObject(java.io.ObjectInputStream input)private voidtraceInstruments(java.util.Map<java.lang.String,java.lang.Object> env, java.lang.String name, boolean traceLambda)private voidwriteObject(java.io.ObjectOutputStream output)-
Methods inherited from class com.googlecode.aviator.BaseExpression
addSymbol, afterPopulateFullNames, customReadObject, customWriteObject, execute, execute, execute, genTopEnv, getCompileEnv, getExpression, getFullNameMetas, getFunctionNames, getLambdaBootstraps, getSourceFile, getStringSegements, getVariableFullNames, getVariableNames, getVars, newEnv, newEnv, newEnv, newLambda, setCompileEnv, setExpression, setFuncsArgs, setFunctionNames, setInstance, setLambdaBootstraps, setSourceFile
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
instruments
private java.util.List<IR> instruments
-
unboxObject
private boolean unboxObject
-
variables
private java.util.Map<VariableMeta,AviatorJavaType> variables
-
constantPool
private java.util.Map<Token<?>,AviatorObject> constantPool
-
-
Constructor Detail
-
InterpretExpression
public InterpretExpression(AviatorEvaluatorInstance instance, java.util.List<VariableMeta> vars, java.util.Set<Token<?>> constants, SymbolTable symbolTable, java.util.List<IR> instruments, boolean unboxObject)
-
-
Method Detail
-
loadVars
private void loadVars(java.util.List<VariableMeta> vars)
-
loadConstants
private void loadConstants(java.util.Set<Token<?>> constants, java.util.List<IR> instruments)
-
loadVar
public AviatorJavaType loadVar(VariableMeta v)
-
loadConstant
public AviatorObject loadConstant(Token<?> token)
-
printInstruments
public void printInstruments()
-
traceInstruments
private void traceInstruments(java.util.Map<java.lang.String,java.lang.Object> env, java.lang.String name, boolean traceLambda)
-
executeDirectly
public java.lang.Object executeDirectly(java.util.Map<java.lang.String,java.lang.Object> env)
- Specified by:
executeDirectlyin classBaseExpression
-
readObject
private void readObject(java.io.ObjectInputStream input) throws java.lang.ClassNotFoundException, java.io.IOException- Throws:
java.lang.ClassNotFoundExceptionjava.io.IOException
-
writeObject
private void writeObject(java.io.ObjectOutputStream output) throws java.io.IOException- Throws:
java.io.IOException
-
-