Class ArrayAccessExprContext
java.lang.Object
com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext<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
- Author:
- Roger Howell
-
Field Summary
Fields inherited from class com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext
typeSolver, wrappedNode -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionSymbolReference<? extends ResolvedValueDeclaration>solveSymbolInParentContext(String name)Methods inherited from class com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext
equals, findTypeDeclarations, getParent, getScope, getWrappedNode, hashCode, isQualifiedName, solveWith, solveWithAsValueMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.github.javaparser.symbolsolver.core.resolution.Context
fieldDeclarationInScope, fieldsExposedToChild, localVariableDeclarationInScope, localVariablesExposedToChild, negatedPatternExprsExposedFromChildren, parameterDeclarationInScope, parametersExposedToChild, patternExprInScope, patternExprsExposedFromChildren, patternExprsExposedToChild, solveConstructor, solveGenericType, solveGenericTypeInParentContext, solveMethod, solveMethodAsUsage, solveMethodInParentContext, solveSymbol, solveSymbolAsValue, solveSymbolAsValueInParentContext, solveType, solveTypeInParentContext
-
Constructor Details
-
ArrayAccessExprContext
-
-
Method Details
-
solveSymbolInParentContext
- Specified by:
solveSymbolInParentContextin interfaceContext- Overrides:
solveSymbolInParentContextin classAbstractJavaParserContext<ArrayAccessExpr>
-