Class ArrayAccessExprContext
java.lang.Object
com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext<ArrayAccessExpr>
com.github.javaparser.symbolsolver.javaparsermodel.contexts.ExpressionContext<ArrayAccessExpr>
com.github.javaparser.symbolsolver.javaparsermodel.contexts.ArrayAccessExprContext
- All Implemented Interfaces:
Context
Required to prevent recursive access to the "parent node" (not necessarily the same as the "parent context").
Consider, for example, this code where the cursor is currently at the node of type ArrayAccessExpr:
var1.perPriority[index].recovered
^^^^^^^^^^^^^^^^^^^^^^^ - ArrayAccessExpr
The AST for this snippet:
FieldAccessExpr // This FieldAccessExpr is accessing the field `recovered`
/ \
**ArrayAccessExpr** SimpleName(recovered)
/ \
FieldAccessExpr NameExpr(index) // This FieldAccessExpr is accessing the field `perPriority`
/ \
NameExpr(var1) SimpleName (perPriority)
In this example:
-
The parent node for
ArrayAccessExprisFieldAccessExpr(variable1.perPriority[index].recovered).// "Parent Node" of the ArrayAccessExpr var.perPriority[index].recovered ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - FieldAccessExpr ^^^^^^^^^^^^^^^^^^^^^^ - ArrayAccessExpr ^^^^^^^^^ - SimpleName -
The parent context is the
FieldAccessExprto the left of the outer array-access, which is actually a child node.// "Parent Context" of the ArrayAccessExpr var1.perPriority[index].recovered ^^^^^^^^^^^^^^^^^^^^^^^ - ArrayAccessExpr ^^^^^^^^^^^^^^^^ - FieldAccessExpr ^^^^^ - NameExpr
-
Field Summary
Fields inherited from class AbstractJavaParserContext
typeSolver, wrappedNode -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class ExpressionContext
solveSymbol, solveSymbolAsValueMethods inherited from class AbstractJavaParserContext
equals, findExposedPatternInParentContext, findTypeDeclarations, getParent, getScope, getWrappedNode, hashCode, negatedTypePatternExprsExposedFromChildren, solveMethodAsUsage, solveWith, solveWithAsValue, typePatternExprsDiscoveredInPattern, typePatternExprsExposedFromChildrenMethods inherited from class Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Context
fieldDeclarationInScope, fieldsExposedToChild, localVariableDeclarationInScope, localVariablesExposedToChild, parameterDeclarationInScope, parametersExposedToChild, solveConstructor, solveGenericType, solveGenericTypeInParentContext, solveMethod, solveMethodInParentContext, solveSymbolAsValueInParentContext, solveType, solveType, solveTypeInParentContext, solveTypeInParentContext, typePatternExprInScope, typePatternExprsExposedToChild
-
Constructor Details
-
ArrayAccessExprContext
-
-
Method Details
-
solveSymbolInParentContext
- Specified by:
solveSymbolInParentContextin interfaceContext- Overrides:
solveSymbolInParentContextin classAbstractJavaParserContext<ArrayAccessExpr>
-