Class EvalExpression
java.lang.Object
gw.internal.gosu.parser.ParsedElement
gw.internal.gosu.parser.Expression
gw.internal.gosu.parser.expressions.EvalExpression
- All Implemented Interfaces:
IEvalExpression
,IExpression
,IHasType
,IParsedElement
The 'eval' operator as an expression:
eval-expression eval ( <expression> )
- See Also:
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Map<String,
IGosuProgramInternal> private List<ICapturedSymbol>
private Map<String,
ITypeVariableDefinition> private Expression
private int
private ITypeUsesMap
Fields inherited from class gw.internal.gosu.parser.Expression
_type
Fields inherited from class gw.internal.gosu.parser.ParsedElement
_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULE
Fields inherited from interface gw.lang.parser.IExpression
EMPTY_ARRAY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
cacheProgram
(String strTypeName, IGosuProgramInternal gsClass) private void
evaluate()
Evaluates/executes the Gosu in the expression.getCachedProgram
(String strTypeName) void
setCapturedSymbolsForBytecode
(List<ICapturedSymbol> captured) void
setCapturedTypeVars
(Map<String, ITypeVariableDefinition> typeVariables) void
setExpression
(Expression expression) The string expression containing Gosu code to evaluate/execute.toString()
Subclasses should return a String representing the parsed expression.Methods inherited from class gw.internal.gosu.parser.Expression
evaluate, getContextType, getReturnType, getType, getTypeImpl, isNullSafe, isUnchecked, setType
Methods inherited from class gw.internal.gosu.parser.ParsedElement
addExceptionsFrom, addParseException, addParseException, addParseException, addParseExceptions, addParseIssues, addParseWarning, addParseWarning, addParseWarnings, addToken, adjustColumn, adjustLineNum, assignTokens, clearParseExceptions, clearParseTreeInformation, clearParseWarnings, compactParseTree, findAncestorParsedElementByType, findDeclaringStatement, findLineNumberOfDeclaration, findRootParsedElement, getAnnotations, getColumn, getContainedParsedElementsByType, getContainedParsedElementsByTypes, getContainedParsedElementsByTypesWithIgnoreSet, getEnclosingFeatureInfo, getFunctionName, getGosuClass, getGosuProgram, getImmediateParseIssue, getImmediateParseIssues, getLineNum, getLocation, getModule, getParent, getParseExceptions, getParseIssues, getParseWarnings, getQualifyingEnclosingTypeInfo, getTokens, hasImmediateParseIssue, hasImmediateParseWarning, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, initEmptyParseTree, initLocation, isCompileTimeConstant, isSuppressed, isSuppressed, isSynthetic, makeDoubleValue, makeFloatValue, makeInteger, makeLong, removeParseException, removeParseWarning, removeParseWarningRecursively, setGosuProgram, setLineNum, setLocation, setParent, setSynthetic, shouldClearParseInfo, visit
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface gw.lang.parser.IExpression
evaluate, getContextType, isNullSafe, isUnchecked
Methods inherited from interface gw.lang.parser.IParsedElement
addExceptionsFrom, addParseException, addParseException, addParseWarning, addParseWarning, clearParseExceptions, clearParseTreeInformation, clearParseWarnings, findAncestorParsedElementByType, findDeclaringStatement, findRootParsedElement, getColumn, getContainedParsedElementsByType, getContainedParsedElementsByTypes, getContainedParsedElementsByTypesWithIgnoreSet, getFunctionName, getGosuClass, getGosuProgram, getImmediateParseIssue, getImmediateParseIssues, getLineNum, getLocation, getModule, getParent, getParseExceptions, getParseIssues, getParseWarnings, getReturnType, getTokens, hasImmediateParseIssue, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, isCompileTimeConstant, isSuppressed, isSynthetic, setLocation, setParent, visit
-
Field Details
-
_typeUsesMap
-
_expression
-
_capturedForBytecode
-
_capturedTypeVars
-
_cacheProgramByFingerprint
-
_refreshChecksum
private int _refreshChecksum
-
-
Constructor Details
-
EvalExpression
Constructs an 'eval' expression.
-
-
Method Details
-
setCapturedSymbolsForBytecode
-
getCapturedForBytecode
-
cacheProgram
-
getCachedProgram
-
clearCacheOnChecksumChange
private void clearCacheOnChecksumChange() -
getTypeUsesMap
-
setExpression
The string expression containing Gosu code to evaluate/execute. -
getExpression
- Specified by:
getExpression
in interfaceIEvalExpression
-
evaluate
Evaluates/executes the Gosu in the expression.- Specified by:
evaluate
in interfaceIExpression
- Overrides:
evaluate
in classExpression
- Returns:
- The value of an expression or the return value of a program.
-
toString
Description copied from class:Expression
Subclasses should return a String representing the parsed expression.- Specified by:
toString
in classExpression
-
setCapturedTypeVars
-
getCapturedTypeVars
-