public class PatternExpr extends Expression implements NodeWithSimpleName<PatternExpr>, NodeWithType<PatternExpr,ReferenceType>, NodeWithFinalModifier<PatternExpr>
Pattern within JEP305,
and avoids the need to cast to the desired type.
tool instanceof Drill d
^^^^^^^
Pattern
instanceof operators for now, JEP305 suggests this might
be used more widely in the future (e.g. in switch expressions/statements).
Pattern:
ReferenceType IdentifierNode.BreadthFirstIterator, Node.DirectChildrenIterator, Node.ObserverRegistrationMode, Node.ParentsVisitor, Node.Parsedness, Node.PostOrderIterator, Node.PreOrderIterator, Node.TreeTraversalABSOLUTE_BEGIN_LINE, ABSOLUTE_END_LINE, LINE_SEPARATOR_KEY, NODE_BY_BEGIN_POSITION, PHANTOM_KEY, prettyPrinterNoCommentsConfiguration, PRINTER_KEY, SYMBOL_RESOLVER_KEY| Constructor and Description |
|---|
PatternExpr() |
PatternExpr(NodeList<Modifier> modifiers,
ReferenceType type,
SimpleName name) |
PatternExpr(TokenRange tokenRange,
NodeList<Modifier> modifiers,
ReferenceType type,
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.
|
PatternExpr |
asPatternExpr() |
PatternExpr |
clone() |
PatternExprMetaModel |
getMetaModel() |
NodeList<Modifier> |
getModifiers()
Return the modifiers of this variable declaration.
|
SimpleName |
getName() |
ReferenceType |
getType()
Gets the type
|
void |
ifPatternExpr(Consumer<PatternExpr> action) |
boolean |
isPatternExpr() |
boolean |
remove(Node node) |
boolean |
replace(Node node,
Node replacementNode) |
PatternExpr |
setModifiers(NodeList<Modifier> modifiers) |
PatternExpr |
setName(SimpleName name) |
PatternExpr |
setType(ReferenceType type)
Sets the type
|
Optional<PatternExpr> |
toPatternExpr() |
appearsInAssignmentContext, appearsInInvocationContext, asAnnotationExpr, asArrayAccessExpr, asArrayCreationExpr, asArrayInitializerExpr, asAssignExpr, asBinaryExpr, asBooleanLiteralExpr, asCastExpr, asCharLiteralExpr, asClassExpr, asConditionalExpr, asDoubleLiteralExpr, asEnclosedExpr, asFieldAccessExpr, asInstanceOfExpr, asIntegerLiteralExpr, asLambdaExpr, asLiteralExpr, asLiteralStringValueExpr, asLongLiteralExpr, asMarkerAnnotationExpr, asMethodCallExpr, asMethodReferenceExpr, asNameExpr, asNormalAnnotationExpr, asNullLiteralExpr, asObjectCreationExpr, asSingleMemberAnnotationExpr, asStringLiteralExpr, asSuperExpr, asSwitchExpr, asTextBlockLiteralExpr, asThisExpr, asTypeExpr, asUnaryExpr, asVariableDeclarationExpr, calculateResolvedType, elidesTypeArguments, ifAnnotationExpr, ifArrayAccessExpr, ifArrayCreationExpr, ifArrayInitializerExpr, ifAssignExpr, ifBinaryExpr, ifBooleanLiteralExpr, ifCastExpr, ifCharLiteralExpr, ifClassExpr, ifConditionalExpr, ifDoubleLiteralExpr, ifEnclosedExpr, ifFieldAccessExpr, ifInstanceOfExpr, ifIntegerLiteralExpr, ifLambdaExpr, ifLiteralExpr, ifLiteralStringValueExpr, ifLongLiteralExpr, ifMarkerAnnotationExpr, ifMethodCallExpr, ifMethodReferenceExpr, ifNameExpr, ifNormalAnnotationExpr, ifNullLiteralExpr, ifObjectCreationExpr, ifSingleMemberAnnotationExpr, ifStringLiteralExpr, ifSuperExpr, ifSwitchExpr, ifTextBlockLiteralExpr, ifThisExpr, ifTypeExpr, ifUnaryExpr, ifVariableDeclarationExpr, isAnnotationExpr, isArrayAccessExpr, isArrayCreationExpr, isArrayInitializerExpr, isAssignExpr, isAssignmentContext, isBinaryExpr, isBooleanLiteralExpr, isCastExpr, isCharLiteralExpr, isClassExpr, isConditionalExpr, isDoubleLiteralExpr, isEnclosedExpr, isFieldAccessExpr, isInstanceOfExpr, isIntegerLiteralExpr, isInvocationContext, isLambdaExpr, isLiteralExpr, isLiteralStringValueExpr, isLongLiteralExpr, isMarkerAnnotationExpr, isMethodCallExpr, isMethodReferenceExpr, isNameExpr, isNormalAnnotationExpr, isNullLiteralExpr, isObjectCreationExpr, isPolyExpression, isQualified, isSingleMemberAnnotationExpr, isStandaloneExpression, isStringLiteralExpr, isSuperExpr, isSwitchExpr, isTextBlockLiteralExpr, isThisExpr, isTypeExpr, isUnaryExpr, isVariableDeclarationExpr, toAnnotationExpr, toArrayAccessExpr, toArrayCreationExpr, toArrayInitializerExpr, toAssignExpr, toBinaryExpr, toBooleanLiteralExpr, toCastExpr, toCharLiteralExpr, toClassExpr, toConditionalExpr, toDoubleLiteralExpr, toEnclosedExpr, toFieldAccessExpr, toInstanceOfExpr, toIntegerLiteralExpr, toLambdaExpr, toLiteralExpr, toLiteralStringValueExpr, toLongLiteralExpr, toMarkerAnnotationExpr, toMethodCallExpr, toMethodReferenceExpr, toNameExpr, toNormalAnnotationExpr, toNullLiteralExpr, toObjectCreationExpr, toSingleMemberAnnotationExpr, toStringLiteralExpr, toSuperExpr, toSwitchExpr, toTextBlockLiteralExpr, toThisExpr, toTypeExpr, toUnaryExpr, toVariableDeclarationExpraddOrphanComment, containsData, createDefaultPrinter, createDefaultPrinter, customInitialization, equals, findAll, findAll, findAll, findCompilationUnit, 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, walkfinalize, getClass, notify, notifyAll, wait, wait, waitgetNameAsExpression, getNameAsString, setNamegetTypeAsString, setType, setType, tryAddImportToParentCompilationUnitisFinal, setFinaladdModifier, getAccessSpecifier, hasModifier, removeModifier, setModifier, setModifiersfindAncestor, findAncestor, findAncestor, hasParentNode, isDescendantOfcontainsWithin, containsWithinRange, getBegin, getEnd, hasRangepublic PatternExpr()
public PatternExpr(NodeList<Modifier> modifiers, ReferenceType type, SimpleName name)
public PatternExpr(TokenRange tokenRange, NodeList<Modifier> modifiers, ReferenceType type, SimpleName name)
public <R,A> R accept(GenericVisitor<R,A> v, A arg)
Visitableaccept in interface VisitableR - 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)
Visitablepublic SimpleName getName()
getName in interface NodeWithSimpleName<PatternExpr>public ReferenceType getType()
NodeWithTypegetType in interface NodeWithType<PatternExpr,ReferenceType>public PatternExpr setName(SimpleName name)
setName in interface NodeWithSimpleName<PatternExpr>public PatternExpr setType(ReferenceType type)
NodeWithTypesetType in interface NodeWithType<PatternExpr,ReferenceType>type - the typepublic boolean isPatternExpr()
isPatternExpr in class Expressionpublic PatternExpr asPatternExpr()
asPatternExpr in class Expressionpublic Optional<PatternExpr> toPatternExpr()
toPatternExpr in class Expressionpublic void ifPatternExpr(Consumer<PatternExpr> action)
ifPatternExpr in class Expressionpublic PatternExpr clone()
clone in class Expressionpublic PatternExprMetaModel getMetaModel()
getMetaModel in class Expressionpublic NodeList<Modifier> getModifiers()
NodeWithModifiersgetModifiers in interface NodeWithModifiers<PatternExpr>Modifierpublic PatternExpr setModifiers(NodeList<Modifier> modifiers)
setModifiers in interface NodeWithModifiers<PatternExpr>Copyright © 2007–2022. All rights reserved.