Package com.github.javaparser.ast.stmt
Class ExplicitConstructorInvocationStmt
- java.lang.Object
-
- com.github.javaparser.ast.Node
-
- com.github.javaparser.ast.stmt.Statement
-
- com.github.javaparser.ast.stmt.ExplicitConstructorInvocationStmt
-
- All Implemented Interfaces:
NodeWithArguments<ExplicitConstructorInvocationStmt>
,NodeWithRange<Node>
,NodeWithTokenRange<Node>
,NodeWithTypeArguments<ExplicitConstructorInvocationStmt>
,Observable
,Visitable
,HasParentNode<Node>
,Resolvable<ResolvedConstructorDeclaration>
,Cloneable
public class ExplicitConstructorInvocationStmt extends Statement implements NodeWithTypeArguments<ExplicitConstructorInvocationStmt>, NodeWithArguments<ExplicitConstructorInvocationStmt>, Resolvable<ResolvedConstructorDeclaration>
A call to super or this in a constructor or initializer.class X { X() { super(15); } }
class X { X() { this(1, 2); } }
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.github.javaparser.ast.Node
Node.BreadthFirstIterator, Node.DirectChildrenIterator, Node.ObserverRegistrationMode, Node.ParentsVisitor, Node.Parsedness, Node.PostOrderIterator, Node.PreOrderIterator, Node.TreeTraversal
-
-
Field Summary
-
Fields inherited from class com.github.javaparser.ast.Node
ABSOLUTE_BEGIN_LINE, ABSOLUTE_END_LINE, LINE_SEPARATOR_KEY, NODE_BY_BEGIN_POSITION, PHANTOM_KEY, prettyPrinterNoCommentsConfiguration, PRINTER_KEY, SYMBOL_RESOLVER_KEY
-
-
Constructor Summary
Constructors Constructor Description ExplicitConstructorInvocationStmt()
ExplicitConstructorInvocationStmt(boolean isThis, Expression expression, NodeList<Expression> arguments)
ExplicitConstructorInvocationStmt(NodeList<Type> typeArguments, boolean isThis, Expression expression, NodeList<Expression> arguments)
ExplicitConstructorInvocationStmt(TokenRange tokenRange, NodeList<Type> typeArguments, boolean isThis, Expression expression, NodeList<Expression> arguments)
This constructor is used by the parser and is considered private.
-
Method Summary
-
Methods inherited from class com.github.javaparser.ast.stmt.Statement
asAssertStmt, asBlockStmt, asBreakStmt, asContinueStmt, asDoStmt, asEmptyStmt, asExpressionStmt, asForEachStmt, asForStmt, asIfStmt, asLabeledStmt, asLocalClassDeclarationStmt, asLocalRecordDeclarationStmt, asReturnStmt, asSwitchStmt, asSynchronizedStmt, asThrowStmt, asTryStmt, asUnparsableStmt, asWhileStmt, asYieldStmt, ifAssertStmt, ifBlockStmt, ifBreakStmt, ifContinueStmt, ifDoStmt, ifEmptyStmt, ifExpressionStmt, ifForEachStmt, ifForStmt, ifIfStmt, ifLabeledStmt, ifLocalClassDeclarationStmt, ifLocalRecordDeclarationStmt, ifReturnStmt, ifSwitchStmt, ifSynchronizedStmt, ifThrowStmt, ifTryStmt, ifUnparsableStmt, ifWhileStmt, ifYieldStmt, isAssertStmt, isBlockStmt, isBreakStmt, isContinueStmt, isDoStmt, isEmptyStmt, isExpressionStmt, isForEachStmt, isForStmt, isIfStmt, isLabeledStmt, isLocalClassDeclarationStmt, isLocalRecordDeclarationStmt, isReturnStmt, isSwitchStmt, isSynchronizedStmt, isThrowStmt, isTryStmt, isUnparsableStmt, isWhileStmt, isYieldStmt, toAssertStmt, toBlockStmt, toBreakStmt, toContinueStmt, toDoStmt, toEmptyStmt, toExpressionStmt, toForEachStmt, toForStmt, toIfStmt, toLabeledStmt, toLocalClassDeclarationStmt, toLocalRecordDeclarationStmt, toReturnStmt, toSwitchStmt, toSynchronizedStmt, toThrowStmt, toTryStmt, toUnparsableStmt, toWhileStmt, toYieldStmt
-
Methods inherited from class com.github.javaparser.ast.Node
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
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.github.javaparser.HasParentNode
findAncestor, findAncestor, findAncestor, hasParentNode, isDescendantOf
-
Methods inherited from interface com.github.javaparser.ast.nodeTypes.NodeWithArguments
addArgument, addArgument, getArgument, getArgumentPosition, getArgumentPosition, setArgument
-
Methods inherited from interface com.github.javaparser.ast.nodeTypes.NodeWithRange
containsWithin, containsWithinRange, getBegin, getEnd, hasRange
-
Methods inherited from interface com.github.javaparser.ast.nodeTypes.NodeWithTypeArguments
isUsingDiamondOperator, removeTypeArguments, setDiamondOperator, setTypeArguments
-
-
-
-
Constructor Detail
-
ExplicitConstructorInvocationStmt
public ExplicitConstructorInvocationStmt()
-
ExplicitConstructorInvocationStmt
public ExplicitConstructorInvocationStmt(boolean isThis, Expression expression, NodeList<Expression> arguments)
-
ExplicitConstructorInvocationStmt
public ExplicitConstructorInvocationStmt(NodeList<Type> typeArguments, boolean isThis, Expression expression, NodeList<Expression> arguments)
-
ExplicitConstructorInvocationStmt
public ExplicitConstructorInvocationStmt(TokenRange tokenRange, NodeList<Type> typeArguments, boolean isThis, Expression expression, NodeList<Expression> arguments)
This constructor is used by the parser and is considered private.
-
-
Method Detail
-
accept
public <R,A> R accept(GenericVisitor<R,A> v, A arg)
Description copied from interface:Visitable
Accept method for visitor support.- Specified by:
accept
in interfaceVisitable
- Type Parameters:
R
- the type of the return value of the visitorA
- the type the user argument passed to the visitor- Parameters:
v
- the visitor implementationarg
- the argument passed to the visitor (of type A)- Returns:
- the result of the visit (of type R)
-
accept
public <A> void accept(VoidVisitor<A> v, A arg)
Description copied from interface:Visitable
Accept method for visitor support.
-
getArguments
public NodeList<Expression> getArguments()
- Specified by:
getArguments
in interfaceNodeWithArguments<ExplicitConstructorInvocationStmt>
-
getExpression
public Optional<Expression> getExpression()
-
isThis
public boolean isThis()
-
setArguments
public ExplicitConstructorInvocationStmt setArguments(NodeList<Expression> arguments)
- Specified by:
setArguments
in interfaceNodeWithArguments<ExplicitConstructorInvocationStmt>
-
setExpression
public ExplicitConstructorInvocationStmt setExpression(Expression expression)
Sets the expression- Parameters:
expression
- the expression, can be null- Returns:
- this, the ExplicitConstructorInvocationStmt
-
setThis
public ExplicitConstructorInvocationStmt setThis(boolean isThis)
-
getTypeArguments
public Optional<NodeList<Type>> getTypeArguments()
- Specified by:
getTypeArguments
in interfaceNodeWithTypeArguments<ExplicitConstructorInvocationStmt>
- Returns:
- the types that can be found in the type arguments:
<String, Integer>
.
-
setTypeArguments
public ExplicitConstructorInvocationStmt setTypeArguments(NodeList<Type> typeArguments)
Sets the typeArguments- Specified by:
setTypeArguments
in interfaceNodeWithTypeArguments<ExplicitConstructorInvocationStmt>
- Parameters:
typeArguments
- the typeArguments, can be null- Returns:
- this, the ExplicitConstructorInvocationStmt
-
removeExpression
public ExplicitConstructorInvocationStmt removeExpression()
-
clone
public ExplicitConstructorInvocationStmt clone()
-
getMetaModel
public ExplicitConstructorInvocationStmtMetaModel getMetaModel()
- Overrides:
getMetaModel
in classStatement
- Returns:
- get JavaParser specific node introspection information.
-
isExplicitConstructorInvocationStmt
public boolean isExplicitConstructorInvocationStmt()
- Overrides:
isExplicitConstructorInvocationStmt
in classStatement
-
asExplicitConstructorInvocationStmt
public ExplicitConstructorInvocationStmt asExplicitConstructorInvocationStmt()
- Overrides:
asExplicitConstructorInvocationStmt
in classStatement
-
ifExplicitConstructorInvocationStmt
public void ifExplicitConstructorInvocationStmt(Consumer<ExplicitConstructorInvocationStmt> action)
- Overrides:
ifExplicitConstructorInvocationStmt
in classStatement
-
resolve
public ResolvedConstructorDeclaration resolve()
Attempts to resolve the declaration corresponding to the invoked constructor. If successful, aResolvedConstructorDeclaration
representing the declaration of the constructor invoked by thisExplicitConstructorInvocationStmt
is returned. Otherwise, anUnsolvedSymbolException
is thrown.- Specified by:
resolve
in interfaceResolvable<ResolvedConstructorDeclaration>
- Returns:
- a
ResolvedConstructorDeclaration
representing the declaration of the invoked constructor. - Throws:
UnsolvedSymbolException
- if the declaration corresponding to the explicit constructor invocation statement could not be resolved.- See Also:
NameExpr.resolve()
,FieldAccessExpr.resolve()
,MethodCallExpr.resolve()
,ObjectCreationExpr.resolve()
-
toExplicitConstructorInvocationStmt
public Optional<ExplicitConstructorInvocationStmt> toExplicitConstructorInvocationStmt()
- Overrides:
toExplicitConstructorInvocationStmt
in classStatement
-
-