ASTStatementVariableDeclarationList class
A variable declaration statement with more than one declarator, as parsed
from num nr = 0.96, ng = 0.24, nb = 0.56;.
This node is transient: ASTBlock.addStatement expands it into its individual declarations, so no generator, runner or serializer ever sees it. The expansion is faithful because every declarator of a multi-declarator statement shares the enclosing scope and is initialized left to right — exactly the semantics of the same declarations written one per line. It also keeps the code generators portable: targets without a comma-separated declaration form (Python, Go, Kotlin) get one declaration per statement for free.
- Inheritance
-
- Object
- ASTStatement
- ASTStatementVariableDeclarationList
Constructors
Properties
-
children
→ Iterable<
ASTNode> -
The children nodes of this node.
no setteroverride
-
declarations
→ List<
ASTStatementVariableDeclaration> -
final
-
descendantChildren
→ List<
ASTNode> -
Return the children and it's descendant children (unmodifiable).
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- parentNode → ASTNode?
-
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
associateToType(
ASTTypedNode node) → void -
inherited
-
cacheDescendantChildren(
) → void -
Mark that this node can cache its descendantChildren.
inherited
-
defineRunContext(
VMContext parentContext) → VMContext -
inherited
-
getNodeIdentifier(
String name, {ASTNode? requester}) → ASTNode? -
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
resolveNode(
ASTNode? parentNode) → void -
override
-
resolveRuntimeType(
VMContext context, ASTNode? node) → FutureOr< ASTType> -
inherited
-
resolveType(
VMContext? context) → ASTType -
override
-
run(
VMContext parentContext, ASTRunStatus runStatus) → FutureOr< ASTValue> -
Runs each declaration in
parentContext: the declarators share the enclosing scope, so no run context is defined here. Only reachable if this node escapes the expansion in ASTBlock.addStatement.override -
toString(
) → String -
A string representation of this object.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited