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>
constantPool
private java.util.List<IR>
instruments
private static long
serialVersionUID
private boolean
unboxObject
private 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.Object
executeDirectly(java.util.Map<java.lang.String,java.lang.Object> env)
AviatorObject
loadConstant(Token<?> token)
private void
loadConstants(java.util.Set<Token<?>> constants, java.util.List<IR> instruments)
AviatorJavaType
loadVar(VariableMeta v)
private void
loadVars(java.util.List<VariableMeta> vars)
void
printInstruments()
private void
readObject(java.io.ObjectInputStream input)
private void
traceInstruments(java.util.Map<java.lang.String,java.lang.Object> env, java.lang.String name, boolean traceLambda)
private void
writeObject(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:
executeDirectly
in classBaseExpression
-
readObject
private void readObject(java.io.ObjectInputStream input) throws java.lang.ClassNotFoundException, java.io.IOException
- Throws:
java.lang.ClassNotFoundException
java.io.IOException
-
writeObject
private void writeObject(java.io.ObjectOutputStream output) throws java.io.IOException
- Throws:
java.io.IOException
-
-