Class ArrayAccess
- java.lang.Object
-
- gw.internal.gosu.parser.ParsedElement
-
- gw.internal.gosu.parser.Expression
-
- gw.internal.gosu.parser.expressions.ArrayAccess
-
- All Implemented Interfaces:
IArrayAccessExpression,IExpression,IHasType,IParsedElement
public final class ArrayAccess extends Expression implements IArrayAccessExpression
Represents a member access expression in the Gosu grammar:array-access <array-reference> [ <member> ] array-reference <expression> member <array-access> <expression>
- See Also:
IGosuParser
-
-
Field Summary
-
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 Constructor Description ArrayAccess()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectevaluate()Evaluates the expression.static ObjectgetArrayElement(Object obj, int iIndex, boolean bNullSafe)ITypegetComponentType()static ObjectgetElementFromIterator(Iterator iter, int iIndex)ExpressiongetMemberExpression()ExpressiongetRootExpression()static ITypegetTypeToAutoInsert(IExpression rootExpression)booleanisNullSafe()static booleanneedsAutoinsert(ArrayAccess arrayAccess)voidsetMemberExpression(Expression memberExpression)voidsetNullSafe(boolean bNullSafe)voidsetRootExpression(Expression rootExpression)static booleansupportsArrayAccess(IType type)StringtoString()Subclasses should return a String representing the parsed expression.-
Methods inherited from class gw.internal.gosu.parser.Expression
evaluate, getContextType, getReturnType, getType, getTypeImpl, 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, 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
-
-
-
-
Method Detail
-
getRootExpression
public Expression getRootExpression()
- Specified by:
getRootExpressionin interfaceIArrayAccessExpression
-
setRootExpression
public void setRootExpression(Expression rootExpression)
-
getMemberExpression
public Expression getMemberExpression()
- Specified by:
getMemberExpressionin interfaceIArrayAccessExpression
-
setMemberExpression
public void setMemberExpression(Expression memberExpression)
-
isNullSafe
public boolean isNullSafe()
- Specified by:
isNullSafein interfaceIExpression- Overrides:
isNullSafein classExpression
-
setNullSafe
public void setNullSafe(boolean bNullSafe)
-
evaluate
public Object evaluate()
Evaluates the expression.- Specified by:
evaluatein interfaceIExpression- Overrides:
evaluatein classExpression
-
getTypeToAutoInsert
public static IType getTypeToAutoInsert(IExpression rootExpression)
-
needsAutoinsert
public static boolean needsAutoinsert(ArrayAccess arrayAccess)
-
getComponentType
public IType getComponentType()
- Specified by:
getComponentTypein interfaceIArrayAccessExpression
-
toString
public String toString()
Description copied from class:ExpressionSubclasses should return a String representing the parsed expression.- Specified by:
toStringin classExpression
-
supportsArrayAccess
public static boolean supportsArrayAccess(IType type)
-
-