FunctionDeclaration class abstract final

A function declaration.

Wrapped in a FunctionDeclarationStatement to represent a local function declaration, otherwise a top-level function declaration.

functionDeclaration ::= 'external' functionSignature | functionSignature FunctionBody

functionSignature ::= Type? ('get' | 'set')? name FormalParameterList

Implemented types

Properties

augmentKeyword Token?
The augment keyword, or null if there is no augment keyword.
no setter
beginToken Token
The first token included in this node's source range.
no setterinherited
childEntities Iterable<SyntacticEntity>
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
declaredElement ExecutableElement?
The element defined by this declaration.
no setteroverride
declaredFragment ExecutableFragment?
The fragment declared by this declaration.
no setteroverride
documentationComment Comment?
The documentation comment associated with this node, or null if this node doesn't have a documentation comment associated with it.
no setterinherited
end int
The offset of the character immediately following the last character of this node's source range.
no setterinherited
endToken Token
The last token included in this node's source range.
no setterinherited
externalKeyword Token?
The token representing the external keyword, or null if this isn't an external function.
no setter
firstTokenAfterCommentAndMetadata Token
The first token following the comment and metadata.
no setterinherited
functionExpression FunctionExpression
The function expression being wrapped.
no setter
hashCode int
The hash code for this object.
no setterinherited
isGetter bool
Whether this function declares a getter.
no setter
isSetter bool
Whether this function declares a setter.
no setter
isSynthetic bool
Whether 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 NodeList<Annotation>
The annotations associated with this node.
no setterinherited
name Token
The name of the member being declared.
no setterinherited
offset int
Return the offset from the beginning of the file to the first character in the syntactic entity.
no setterinherited
parent AstNode?
Returns this node's parent node, or null if this node is the root of an AST structure.
no setterinherited
propertyKeyword Token?
The token representing the get or set keyword, or null if this is a function declaration rather than a property declaration.
no setter
returnType TypeAnnotation?
The return type of the function, or null if no return type was declared.
no setter
root AstNode
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
sortedCommentAndAnnotations List<AstNode>
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.
inherited
findPrevious(Token target) Token?
Returns the token before target, or null if it can't be found.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
thisOrAncestorMatching<E extends AstNode>(bool predicate(AstNode)) → E?
Returns either this node or the most immediate ancestor of this node for which the predicate returns true, or null if there's no such node.
inherited
thisOrAncestorOfType<E extends AstNode>() → E?
Returns either this node or the most immediate ancestor of this node that has the given type, or null if there's no such node.
inherited
toSource() String
Returns 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.
inherited

Operators

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