Class OperationRuntime
- java.lang.Object
-
- com.googlecode.aviator.runtime.op.OperationRuntime
-
public class OperationRuntime extends java.lang.Object
Operation runtime
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.ThreadLocal<AviatorObject[]>
ONE_ARG
private static java.lang.String
TRACE_PREFIX
private static java.lang.ThreadLocal<AviatorObject[]>
TWO_ARRGS
private static java.lang.String
WHITE_SPACE
-
Constructor Summary
Constructors Constructor Description OperationRuntime()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
containsOpFunction(java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType)
private static java.lang.String
desc(AviatorObject arg, java.util.Map<java.lang.String,java.lang.Object> env)
static AviatorObject
eval(AviatorObject left, AviatorObject right, java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType)
Eval with binary operatorstatic AviatorObject
eval(AviatorObject arg, java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType)
Eval with unary operatorstatic AviatorObject
eval(AviatorObject left, java.util.Map<java.lang.String,java.lang.Object> env, AviatorObject right, OperatorType opType)
Just likeeval(AviatorObject, AviatorObject, Map, OperatorType)
, but with difference arguments order.static AviatorObject
eval(java.util.Map<java.lang.String,java.lang.Object> env, AviatorObject[] args, OperatorType opType)
Eval with arguments array.private static AviatorObject
eval0(AviatorObject left, AviatorObject right, java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType, AviatorFunction func)
private static AviatorObject
eval0(AviatorObject arg, java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType, AviatorFunction func)
private static AviatorObject
eval0(java.util.Map<java.lang.String,java.lang.Object> env, AviatorObject[] args, OperatorType opType, AviatorFunction func)
static AviatorObject
evalOpFunction(java.util.Map<java.lang.String,java.lang.Object> env, AviatorObject[] args, OperatorType opType, AviatorFunction func)
static boolean
hasRuntimeContext(java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType)
private static void
trace(java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType, AviatorObject result, AviatorObject... args)
-
-
-
Field Detail
-
TWO_ARRGS
private static final java.lang.ThreadLocal<AviatorObject[]> TWO_ARRGS
-
ONE_ARG
private static final java.lang.ThreadLocal<AviatorObject[]> ONE_ARG
-
WHITE_SPACE
private static final java.lang.String WHITE_SPACE
- See Also:
- Constant Field Values
-
TRACE_PREFIX
private static final java.lang.String TRACE_PREFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
eval
public static AviatorObject eval(java.util.Map<java.lang.String,java.lang.Object> env, AviatorObject[] args, OperatorType opType)
Eval with arguments array.- Parameters:
args
-opType
-- Returns:
-
eval0
private static AviatorObject eval0(java.util.Map<java.lang.String,java.lang.Object> env, AviatorObject[] args, OperatorType opType, AviatorFunction func)
-
evalOpFunction
public static AviatorObject evalOpFunction(java.util.Map<java.lang.String,java.lang.Object> env, AviatorObject[] args, OperatorType opType, AviatorFunction func)
-
eval
public static AviatorObject eval(AviatorObject arg, java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType)
Eval with unary operator- Parameters:
arg
-env
-opType
-- Returns:
-
eval0
private static AviatorObject eval0(AviatorObject arg, java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType, AviatorFunction func)
-
eval
public static AviatorObject eval(AviatorObject left, java.util.Map<java.lang.String,java.lang.Object> env, AviatorObject right, OperatorType opType)
Just likeeval(AviatorObject, AviatorObject, Map, OperatorType)
, but with difference arguments order.- Parameters:
left
-env
-right
-opType
-- Returns:
-
eval
public static AviatorObject eval(AviatorObject left, AviatorObject right, java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType)
Eval with binary operator- Parameters:
left
-right
-env
-opType
-- Returns:
-
eval0
private static AviatorObject eval0(AviatorObject left, AviatorObject right, java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType, AviatorFunction func)
-
hasRuntimeContext
public static final boolean hasRuntimeContext(java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType)
-
containsOpFunction
public static boolean containsOpFunction(java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType)
-
desc
private static java.lang.String desc(AviatorObject arg, java.util.Map<java.lang.String,java.lang.Object> env)
-
trace
private static void trace(java.util.Map<java.lang.String,java.lang.Object> env, OperatorType opType, AviatorObject result, AviatorObject... args)
-
-