public class FieldAccessExpr extends Expression implements NodeWithSimpleName<FieldAccessExpr>, NodeWithTypeArguments<FieldAccessExpr>, NodeWithScope<FieldAccessExpr>, Resolvable<ResolvedValueDeclaration>
person.name
"name" is the name and "person" is the scope.Node.BreadthFirstIterator, Node.DirectChildrenIterator, Node.ObserverRegistrationMode, Node.ParentsVisitor, Node.Parsedness, Node.PostOrderIterator, Node.PreOrderIterator, Node.TreeTraversal
EXCLUDE_ENCLOSED_EXPR, IS_NOT_ENCLOSED_EXPR
ABSOLUTE_BEGIN_LINE, ABSOLUTE_END_LINE, LINE_SEPARATOR_KEY, NODE_BY_BEGIN_POSITION, PHANTOM_KEY, prettyPrinterNoCommentsConfiguration, PRINTER_KEY, SYMBOL_RESOLVER_KEY
Constructor and Description |
---|
FieldAccessExpr() |
FieldAccessExpr(Expression scope,
NodeList<Type> typeArguments,
SimpleName name) |
FieldAccessExpr(Expression scope,
String name) |
FieldAccessExpr(TokenRange tokenRange,
Expression scope,
NodeList<Type> typeArguments,
SimpleName name)
This constructor is used by the parser and is considered private.
|
Modifier and Type | Method and Description |
---|---|
<R,A> R |
accept(GenericVisitor<R,A> v,
A arg)
Accept method for visitor support.
|
<A> void |
accept(VoidVisitor<A> v,
A arg)
Accept method for visitor support.
|
FieldAccessExpr |
asFieldAccessExpr() |
FieldAccessExpr |
clone() |
FieldAccessExprMetaModel |
getMetaModel() |
SimpleName |
getName() |
Expression |
getScope() |
Optional<NodeList<Type>> |
getTypeArguments() |
void |
ifFieldAccessExpr(Consumer<FieldAccessExpr> action) |
boolean |
isFieldAccessExpr() |
boolean |
isInternal()
Indicate if this FieldAccessExpr is an element directly contained in a larger FieldAccessExpr.
|
boolean |
isTopLevel()
Indicate if this FieldAccessExpr is top level, i.e., it is not directly contained in a larger FieldAccessExpr.
|
boolean |
remove(Node node) |
boolean |
replace(Node node,
Node replacementNode) |
ResolvedValueDeclaration |
resolve()
Attempts to resolve the declaration corresponding to the accessed field.
|
FieldAccessExpr |
setName(SimpleName name) |
FieldAccessExpr |
setScope(Expression scope)
Sets the scope
|
FieldAccessExpr |
setTypeArguments(NodeList<Type> typeArguments)
Sets the type arguments
|
Optional<FieldAccessExpr> |
toFieldAccessExpr() |
appearsInAssignmentContext, appearsInInvocationContext, asAnnotationExpr, asArrayAccessExpr, asArrayCreationExpr, asArrayInitializerExpr, asAssignExpr, asBinaryExpr, asBooleanLiteralExpr, asCastExpr, asCharLiteralExpr, asClassExpr, asConditionalExpr, asDoubleLiteralExpr, asEnclosedExpr, asInstanceOfExpr, asIntegerLiteralExpr, asLambdaExpr, asLiteralExpr, asLiteralStringValueExpr, asLongLiteralExpr, asMarkerAnnotationExpr, asMethodCallExpr, asMethodReferenceExpr, asNameExpr, asNormalAnnotationExpr, asNullLiteralExpr, asObjectCreationExpr, asPatternExpr, asRecordPatternExpr, asSingleMemberAnnotationExpr, asStringLiteralExpr, asSuperExpr, asSwitchExpr, asTextBlockLiteralExpr, asThisExpr, asTypeExpr, asTypePatternExpr, asUnaryExpr, asVariableDeclarationExpr, calculateResolvedType, elidesTypeArguments, ifAnnotationExpr, ifArrayAccessExpr, ifArrayCreationExpr, ifArrayInitializerExpr, ifAssignExpr, ifBinaryExpr, ifBooleanLiteralExpr, ifCastExpr, ifCharLiteralExpr, ifClassExpr, ifConditionalExpr, ifDoubleLiteralExpr, ifEnclosedExpr, ifInstanceOfExpr, ifIntegerLiteralExpr, ifLambdaExpr, ifLiteralExpr, ifLiteralStringValueExpr, ifLongLiteralExpr, ifMarkerAnnotationExpr, ifMethodCallExpr, ifMethodReferenceExpr, ifNameExpr, ifNormalAnnotationExpr, ifNullLiteralExpr, ifObjectCreationExpr, ifPatternExpr, ifRecordPatternExpr, ifSingleMemberAnnotationExpr, ifStringLiteralExpr, ifSuperExpr, ifSwitchExpr, ifTextBlockLiteralExpr, ifThisExpr, ifTypeExpr, ifTypePatternExpr, ifUnaryExpr, ifVariableDeclarationExpr, isAnnotationExpr, isArrayAccessExpr, isArrayCreationExpr, isArrayInitializerExpr, isAssignExpr, isAssignmentContext, isBinaryExpr, isBooleanLiteralExpr, isCastExpr, isCharLiteralExpr, isClassExpr, isConditionalExpr, isDoubleLiteralExpr, isEnclosedExpr, isInstanceOfExpr, isIntegerLiteralExpr, isInvocationContext, isLambdaExpr, isLiteralExpr, isLiteralStringValueExpr, isLongLiteralExpr, isMarkerAnnotationExpr, isMethodCallExpr, isMethodReferenceExpr, isNameExpr, isNormalAnnotationExpr, isNullLiteralExpr, isObjectCreationExpr, isPatternExpr, isPolyExpression, isQualified, isRecordPatternExpr, isSingleMemberAnnotationExpr, isStandaloneExpression, isStringLiteralExpr, isSuperExpr, isSwitchExpr, isTextBlockLiteralExpr, isThisExpr, isTypeExpr, isTypePatternExpr, isUnaryExpr, isVariableDeclarationExpr, toAnnotationExpr, toArrayAccessExpr, toArrayCreationExpr, toArrayInitializerExpr, toAssignExpr, toBinaryExpr, toBooleanLiteralExpr, toCastExpr, toCharLiteralExpr, toClassExpr, toConditionalExpr, toDoubleLiteralExpr, toEnclosedExpr, toInstanceOfExpr, toIntegerLiteralExpr, toLambdaExpr, toLiteralExpr, toLiteralStringValueExpr, toLongLiteralExpr, toMarkerAnnotationExpr, toMethodCallExpr, toMethodReferenceExpr, toNameExpr, toNormalAnnotationExpr, toNullLiteralExpr, toObjectCreationExpr, toPatternExpr, toRecordPatternExpr, toSingleMemberAnnotationExpr, toStringLiteralExpr, toSuperExpr, toSwitchExpr, toTextBlockLiteralExpr, toThisExpr, toTypeExpr, toTypePatternExpr, toUnaryExpr, toVariableDeclarationExpr
addOrphanComment, containsData, createDefaultPrinter, createDefaultPrinter, customInitialization, equals, findAll, findAll, findAll, findByRange, findCompilationUnit, findData, findFirst, findFirst, findFirst, findRootNode, getAllContainedComments, getChildNodes, getChildNodesByType, getComment, getData, getDataKeys, getDefaultPrinterConfiguration, getLineEndingStyle, getLineEndingStyleOrDefault, getNodesByType, getOrphanComments, getParentNode, getParentNodeForChildren, getParsed, getPrinter, getPrinter, getRange, getSymbolResolver, getTokenRange, hashCode, hasScope, isAncestorOf, isPhantom, isRegistered, notifyPropertyChange, register, register, registerForSubtree, remove, removeComment, removeData, removeForced, removeOrphanComment, replace, setAsParentNodeOf, setAsParentNodeOf, setBlockComment, setComment, setData, setLineComment, setParentNode, setParsed, setRange, setTokenRange, stream, stream, toString, toString, tryAddImportToParentCompilationUnit, unregister, walk, walk, walk
finalize, getClass, notify, notifyAll, wait, wait, wait
getNameAsExpression, getNameAsString, setName
isUsingDiamondOperator, removeTypeArguments, setDiamondOperator, setTypeArguments
traverseScope
findAncestor, findAncestor, findAncestor, hasParentNode, isDescendantOf
containsWithin, containsWithinRange, getBegin, getEnd, hasRange
public FieldAccessExpr()
public FieldAccessExpr(Expression scope, String name)
public FieldAccessExpr(Expression scope, NodeList<Type> typeArguments, SimpleName name)
public FieldAccessExpr(TokenRange tokenRange, Expression scope, NodeList<Type> typeArguments, SimpleName name)
public <R,A> R accept(GenericVisitor<R,A> v, A arg)
Visitable
accept
in interface Visitable
R
- the type of the return value of the visitorA
- the type the user argument passed to the visitorv
- the visitor implementationarg
- the argument passed to the visitor (of type A)public <A> void accept(VoidVisitor<A> v, A arg)
Visitable
public SimpleName getName()
getName
in interface NodeWithSimpleName<FieldAccessExpr>
public FieldAccessExpr setName(SimpleName name)
setName
in interface NodeWithSimpleName<FieldAccessExpr>
public Expression getScope()
getScope
in interface NodeWithScope<FieldAccessExpr>
public FieldAccessExpr setScope(Expression scope)
setScope
in interface NodeWithScope<FieldAccessExpr>
scope
- the scope, can not be nullpublic Optional<NodeList<Type>> getTypeArguments()
getTypeArguments
in interface NodeWithTypeArguments<FieldAccessExpr>
<String, Integer>
.public FieldAccessExpr setTypeArguments(NodeList<Type> typeArguments)
setTypeArguments
in interface NodeWithTypeArguments<FieldAccessExpr>
typeArguments
- the type arguments, can be nullpublic FieldAccessExpr clone()
clone
in class Expression
public FieldAccessExprMetaModel getMetaModel()
getMetaModel
in class Expression
public boolean isFieldAccessExpr()
isFieldAccessExpr
in class Expression
public FieldAccessExpr asFieldAccessExpr()
asFieldAccessExpr
in class Expression
public void ifFieldAccessExpr(Consumer<FieldAccessExpr> action)
ifFieldAccessExpr
in class Expression
public ResolvedValueDeclaration resolve()
ResolvedValueDeclaration
representing the declaration of the value accessed by this
FieldAccessExpr
is returned. Otherwise, an UnsolvedSymbolException
is thrown.resolve
in interface Resolvable<ResolvedValueDeclaration>
ResolvedValueDeclaration
representing the declaration of the accessed value.UnsolvedSymbolException
- if the declaration corresponding to the field access expression could not be
resolved.NameExpr.resolve()
,
MethodCallExpr.resolve()
,
ObjectCreationExpr.resolve()
,
ExplicitConstructorInvocationStmt.resolve()
public Optional<FieldAccessExpr> toFieldAccessExpr()
toFieldAccessExpr
in class Expression
public boolean isInternal()
public boolean isTopLevel()
Copyright © 2007–2024. All rights reserved.