Class EvalExpressionTransformer
java.lang.Object
gw.internal.gosu.ir.transform.AbstractElementTransformer<T>
gw.internal.gosu.ir.transform.expression.AbstractExpressionTransformer<T>
gw.internal.gosu.ir.transform.expression.EvalBasedTransformer<EvalExpression>
gw.internal.gosu.ir.transform.expression.EvalExpressionTransformer
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
private static class
private static class
-
Field Summary
FieldsFields inherited from class gw.internal.gosu.ir.transform.AbstractElementTransformer
CAPTURED_VAR_PREFIX, CTX_SYMBOL, CTX_SYMBOL_SUFFIX, CUSTOM_RUNTIMES, EMPTY_CLASS_ARRAY, ENHANCEMENT_THIS_REF, ENHANCEMENT_TYPE_PARAM_PREFIX, ENUM_PARAM_PREFIX, OBJECT_TYPE, OUTER_ACCESS, TYPE_PARAM_PREFIX
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
-
Method Summary
Modifier and TypeMethodDescriptionprivate static void
addCapturedValues
(IGosuProgramInternal gp, List<ICapturedSymbol> capturedSymbols, Object[] capturedValues, List<Object> args) static void
static IRExpression
protected IRExpression
static Object
compileAndRunEvalSource
(Object source, Object outer, Object[] capturedValues, LazyTypeResolver[] immediateFuncTypeParams, IType enclosingClass, int iLineNum, int iColumn, String evalExprText) static Object
compileAndRunEvalSource
(Object source, Object outer, Object[] capturedValues, LazyTypeResolver[] immediateFuncTypeParams, IType enclosingClass, IParsedElement evalExpr) static Object
compileAndRunEvalSource
(Object source, Object outer, Object[] capturedValues, LazyTypeResolver[] immediateFuncTypeParams, IType enclosingClass, IParsedElement evalExpr, ISymbolTable compileTimeLocalContextSymbols, IExternalSymbolMap runtimeLocalSymbolValues) private static void
debugInfo
(ISymbolTable compileTimeLocalContextSymbols) static String
makeEvalKey
(IType enclosingClass, int iLineNum, int iColumnNum, String evalExprText) private static String
private static String
private void
putEvalExpression
(EvalExpression evalExpr) Methods inherited from class gw.internal.gosu.ir.transform.expression.EvalBasedTransformer
addEnclosingTypeParams, getFunctionTypeParamsCount, pushCapturedSymbols, pushEnclosingContext, pushEnclosingFunctionTypeParamsInArray
Methods inherited from class gw.internal.gosu.ir.transform.expression.AbstractExpressionTransformer
_expr, compile, getIRParameters, pushArgumentsNoCasting, pushArgumentsWithCasting, shortCircuitValue
Methods inherited from class gw.internal.gosu.ir.transform.AbstractElementTransformer
_cc, assignStructuralTypeOwner, avoidVerifyError, booleanLiteral, boxValue, boxValue, boxValueToType, buildAddition, buildArithmetic, buildArrayLength, buildArrayLoad, buildArrayLoad, buildArrayStore, buildAssignment, buildCast, buildComposite, buildComposite, buildEquals, buildFieldGet, buildFieldSet, buildGreaterThan, buildIf, buildIfElse, buildInitializedArray, buildMethodCall, buildMethodCall, buildMethodCall, buildNegation, buildNewExpression, buildNewExpression, buildNewExpression, buildNotEquals, buildNullCheckTernary, buildReturn, buildSubtraction, buildTernary, buildThrow, callMethod, callMethod, callMethod, callMethod, callMethod, callSpecialMethod, callSpecialMethod, callSpecialMethod, callStaticMethod, castResultingTypeIfNecessary, charLiteral, checkCast, checkCast, checkCast, classLiteral, classLiteral, classLiteral, clearCustomRuntimes, collectArgsIntoObjArray, convertBoxedNullToPrimitive, convertNullToPrimitive, convertOperandToBig, convertOperandToPrimitive, convertOperandToRational, exprList, fastStringCoercion, findComparableParamType, findDimensionType, getActualPropertyInfo, getCapturedSymbolParameterName, getClassInfos, getConcreteType, getConstructorParamTypes, getCustomRuntime, getDeclaredField, getDeclaredFieldImpl, getDeclaredMethod, getDeclaredMethod, getDefaultConstIns, getDescriptor, getDescriptor, getDescriptor, getDescriptor, getEnclosingDFS, getField, getField_new, getGosuClass, getInstanceField, getIRTypes, getIRTypes, getModifiers, getParsedElement, getRuntimeEnclosingType, getStaticField, getTypes, getTypeVarParamName, getTypeVarsForDFS, handleCustomExpressionRuntime, handleNamedArgs, identifier, initLocalVar, initLocalVarWithDefault, initMultiArray, inStaticContext, isBigType, isBoxedIntType, isBytecodeType, isBytecodeType, isCheckedArithmeticEnabled, isCompilingEnhancement, isEnhancementType, isEvalProgram, isExecuteMethod, isHandledByCustomCoercion, isIntType, isMemberOnEnclosingType, isMemberOnEnhancementOfEnclosingType, isNonBigBoxedNumberType, isNonStaticInnerClass, isNumberType, isPrimitiveNumberType, isProgram, isProgramOrEnclosedInProgram, makeAnnotationInfos, makeArrayViaTypeInfo, makeEmptyArrayViaTypeInfo, makeIRSymbol, maybeUnwrapMetaType, newArray, nullCheckVar, nullLiteral, numberConvert, numberConvert, numericLiteral, pushArrayOfDefValueExpr, pushArrayOfString, pushArrayOfTypes, pushCapturedSymbols, pushConstant, pushEnumSuperConstructorArguments, pushExternalSymbolsMap, pushLazyType, pushLazyType, pushNull, pushOuter, pushOuter, pushOuter, pushParamTypes, pushRuntimeTypeOfTypeVar, pushString, pushThis, pushThisOrOuter, pushType, pushType, pushTypeParametersForConstructor, requiresExternalSymbolCapture, requiresImplicitEnhancementArg, requiresImplicitEnhancementArg, setCc, setField, setField, setInstanceField, setStaticField, stringLiteral, unboxValueFromType, unboxValueToType, unboxValueToType, valueOf
-
Field Details
-
EVAL_EXPRESSIONS
-
_ctorAccessor
-
-
Constructor Details
-
EvalExpressionTransformer
-
-
Method Details
-
compile
-
compile_impl
- Specified by:
compile_impl
in classAbstractExpressionTransformer<EvalExpression>
-
putEvalExpression
-
makeEvalKey
-
compileAndRunEvalSource
-
compileAndRunEvalSource
public static Object compileAndRunEvalSource(Object source, Object outer, Object[] capturedValues, LazyTypeResolver[] immediateFuncTypeParams, IType enclosingClass, IParsedElement evalExpr) -
compileAndRunEvalSource
public static Object compileAndRunEvalSource(Object source, Object outer, Object[] capturedValues, LazyTypeResolver[] immediateFuncTypeParams, IType enclosingClass, IParsedElement evalExpr, ISymbolTable compileTimeLocalContextSymbols, IExternalSymbolMap runtimeLocalSymbolValues) -
printArgs
-
printArgs
-
debugInfo
-
addCapturedValues
private static void addCapturedValues(IGosuProgramInternal gp, List<ICapturedSymbol> capturedSymbols, Object[] capturedValues, List<Object> args) -
clearEvalExpressions
public static void clearEvalExpressions()
-