public class RecordPatternExpr extends PatternExpr implements NodeWithFinalModifier<RecordPatternExpr>
Pattern
TypePattern
RecordPattern
RecordPattern:
ReferenceType ( [PatternList] )
PatternList
Pattern {, Pattern }
record Pair(Object x, Object y) {}
Pair p = new Pair(42, 42);
if (p instanceof Pair(String s, String t)) {
System.out.println(s + ", " + t);
} else {
System.out.println("Not a pair of strings");
}
PatternExpr
,
TypePatternExpr
,
JEP 440: Record PatternsNode.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 |
---|
RecordPatternExpr() |
RecordPatternExpr(NodeList<Modifier> modifiers,
ReferenceType type,
NodeList<PatternExpr> patternList) |
RecordPatternExpr(TokenRange tokenRange,
NodeList<Modifier> modifiers,
ReferenceType type,
NodeList<PatternExpr> patternList)
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.
|
RecordPatternExpr |
asRecordPatternExpr() |
RecordPatternExpr |
clone() |
RecordPatternExprMetaModel |
getMetaModel() |
NodeList<Modifier> |
getModifiers()
Return the modifiers of this variable declaration.
|
NodeList<PatternExpr> |
getPatternList() |
void |
ifRecordPatternExpr(Consumer<RecordPatternExpr> action) |
boolean |
isRecordPatternExpr() |
boolean |
remove(Node node) |
boolean |
replace(Node node,
Node replacementNode) |
RecordPatternExpr |
setModifiers(NodeList<Modifier> modifiers) |
RecordPatternExpr |
setPatternList(NodeList<PatternExpr> patternList) |
Optional<RecordPatternExpr> |
toRecordPatternExpr() |
asPatternExpr, getType, ifPatternExpr, isPatternExpr, setType, 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, asTypePatternExpr, 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, ifTypePatternExpr, 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, isTypePatternExpr, 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, 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
isFinal, setFinal
addModifier, getAccessSpecifier, hasModifier, removeModifier, setModifier, setModifiers
getTypeAsString, setType, setType, tryAddImportToParentCompilationUnit
findAncestor, findAncestor, findAncestor, hasParentNode, isDescendantOf
containsWithin, containsWithinRange, getBegin, getEnd, hasRange
public RecordPatternExpr()
public RecordPatternExpr(NodeList<Modifier> modifiers, ReferenceType type, NodeList<PatternExpr> patternList)
public RecordPatternExpr(TokenRange tokenRange, NodeList<Modifier> modifiers, ReferenceType type, NodeList<PatternExpr> patternList)
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 NodeList<Modifier> getModifiers()
NodeWithModifiers
getModifiers
in interface NodeWithModifiers<RecordPatternExpr>
Modifier
public RecordPatternExpr setModifiers(NodeList<Modifier> modifiers)
setModifiers
in interface NodeWithModifiers<RecordPatternExpr>
public boolean isRecordPatternExpr()
isRecordPatternExpr
in class Expression
public RecordPatternExpr asRecordPatternExpr()
asRecordPatternExpr
in class Expression
public Optional<RecordPatternExpr> toRecordPatternExpr()
toRecordPatternExpr
in class Expression
public void ifRecordPatternExpr(Consumer<RecordPatternExpr> action)
ifRecordPatternExpr
in class Expression
public NodeList<PatternExpr> getPatternList()
public RecordPatternExpr setPatternList(NodeList<PatternExpr> patternList)
public boolean replace(Node node, Node replacementNode)
replace
in class PatternExpr
public RecordPatternExpr clone()
clone
in class PatternExpr
public RecordPatternExprMetaModel getMetaModel()
getMetaModel
in class PatternExpr
Copyright © 2007–2024. All rights reserved.