ConstructorDeclarationImpl class

A constructor declaration.

constructorDeclaration ::= constructorSignature FunctionBody? | constructorName formalParameterList ':' 'this' ('.' SimpleIdentifier)? arguments

constructorSignature ::= 'external'? constructorName formalParameterList initializerList? | 'external'? 'factory' factoryName formalParameterList initializerList? | 'external'? 'const' constructorName formalParameterList initializerList?

constructorName ::= SimpleIdentifier ('.' SimpleIdentifier)?

factoryName ::= Identifier ('.' SimpleIdentifier)?

initializerList ::= ':' ConstructorInitializer (',' ConstructorInitializer)*

Inheritance
Implemented types
Available Extensions

Constructors

ConstructorDeclarationImpl({required CommentImpl? comment, required List<AnnotationImpl>? metadata, required Token? externalKeyword, required Token? constKeyword, required Token? factoryKeyword, required IdentifierImpl returnType, required Token? period, required Token? name, required FormalParameterListImpl parameters, required Token? separator, required List<ConstructorInitializerImpl>? initializers, required ConstructorNameImpl? redirectedConstructor, required FunctionBodyImpl body})
Initialize a newly created constructor declaration. The externalKeyword can be null if the constructor is not external. Either or both of the comment and metadata can be null if the constructor does not have the corresponding attribute. The constKeyword can be null if the constructor cannot be used to create a constant. The factoryKeyword can be null if the constructor is not a factory. The period and name can both be null if the constructor is not a named constructor. The separator can be null if the constructor does not have any initializers and does not redirect to a different constructor. The list of initializers can be null if the constructor does not have any initializers. The redirectedConstructor can be null if the constructor does not redirect to a different constructor. The body can be null if the constructor does not have a body.

Properties

beginToken → Token
Return the first token included in this node's source range.
no setterinherited
body FunctionBodyImpl
Return the body of the constructor.
getter/setter pairoverride-getter
childEntities Iterable<SyntacticEntity>
Return an iterator that can be used to iterate through all the entities (either AST nodes or tokens) that make up the contents of this node, including doc comments but excluding other comments.
no setterinherited
constKeyword ↔ Token?
The token for the 'const' keyword, or null if the constructor is not a const constructor.
getter/setter pairoverride-getter
declaredElement ↔ ConstructorElement?
The element associated with this constructor, or null if the AST structure has not been resolved or if this constructor could not be resolved.
getter/setter pairoverride-getter
declaredElement2 → ConstructorElement?
Return the element associated with this declaration, or null if either this node corresponds to a list of declarations or if the AST structure has not been resolved.
no setteroverride
documentationComment CommentImpl?
Return the documentation comment associated with this node, or null if this node does not have a documentation comment associated with it.
getter/setter pairinherited
end int
Return the offset of the character immediately following the last character of this node's source range.
no setterinherited
endToken → Token
Return the last token included in this node's source range.
no setteroverride
externalKeyword → Token?
The token for the 'external' keyword, or null if the constructor is not external.
final
factoryKeyword → Token?
The token for the 'factory' keyword, or null if the constructor is not a factory constructor.
final
firstTokenAfterCommentAndMetadata → Token
Return the first token following the comment and metadata.
no setteroverride
hashCode int
The hash code for this object.
no setterinherited
initializers NodeListImpl<ConstructorInitializerImpl>
Return the initializers associated with the constructor.
no setteroverride
isSynthetic bool
Return true if this node is a synthetic node.
no setterinherited
length int
Return the number of characters in the syntactic entity's source range.
no setterinherited
metadata NodeListImpl<AnnotationImpl>
Return the annotations associated with this node.
no setterinherited
name → Token?
The name of the constructor, or null if the constructor being declared is unnamed.
final
name2 → Token?
Return the name of the constructor, or null if the constructor being declared is unnamed.
no setteroverride
namedChildEntities Iterable<ChildEntity>
Return properties (tokens and nodes) of this node, with names, in the order in which these entities should normally appear, not necessary in the order they really are (because of recovery).
no setterinherited
offset int
Return the offset from the beginning of the file to the first character in the syntactic entity.
no setterinherited
parameters FormalParameterListImpl
Return the parameters associated with the constructor.
getter/setter pairoverride-getter
parent AstNode?
Return this node's parent node, or null if this node is the root of an AST structure.
no setterinherited
period → Token?
The token for the period before the constructor name, or null if the constructor being declared is unnamed.
final
redirectedConstructor ConstructorNameImpl?
Return the name of the constructor to which this constructor will be redirected, or null if this is not a redirecting factory constructor.
getter/setter pairoverride-getter
returnType IdentifierImpl
Return the type of object being created.
getter/setter pairoverride-getter
root AstNode
Return the node at the root of this node's AST structure.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
separator ↔ Token?
The token for the separator (colon or equals) before the initializer list or redirection, or null if there are no initializers.
getter/setter pairoverride-getter
sortedCommentAndAnnotations List<AstNode>
Return a list containing the comment and annotations associated with this node, sorted in lexical order.
no setterinherited

Methods

accept<E>(AstVisitor<E> visitor) → E?
Use the given visitor to visit this node.
override
detachFromParent() → void
inherited
findPrevious(Token target) → Token?
Return the token before target or null if it cannot be found.
inherited
getProperty<E>(String name) → E?
Return the value of the property with the given name, or null if this node does not have a property with the given name.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
setProperty(String name, Object? value) → void
Set the value of the property with the given name to the given value. If the value is null, the property will effectively be removed.
inherited
thisOrAncestorMatching<E extends AstNode>(bool predicate(AstNode)) → E?
Return either this node or the most immediate ancestor of this node for which the predicate returns true, or null if there is no such node.
inherited
thisOrAncestorOfType<E extends AstNode>() → E?
Return either this node or the most immediate ancestor of this node that has the given type, or null if there is no such node.
inherited
toSource() String
Return a textual description of this node in a form approximating valid source.
inherited
toString() String
A string representation of this object.
inherited
visitChildren(AstVisitor visitor) → void
Use the given visitor to visit all of the children of this node.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited