CompilationUnit class

A compilation unit.

While the grammar restricts the order of the directives and declarations within a compilation unit, this class does not enforce those restrictions. In particular, the children of a compilation unit will be visited in lexical order even if lexical order does not conform to the restrictions of the grammar.

compilationUnit ::= directives declarations

directives ::= ScriptTag? LibraryDirective? namespaceDirective* PartDirective* | PartOfDirective

namespaceDirective ::= ImportDirective | ExportDirective

declarations ::= CompilationUnitMember*

Clients may not extend, implement or mix-in this class.

Implemented types

Constructors

CompilationUnit()

Properties

beginToken Token
Return the first token included in this node's source range.
read / write, inherited-getter
declarations NodeList<CompilationUnitMember>
Return the declarations contained in this compilation unit.
read-only
declaredElement CompilationUnitElement
Return the element associated with this compilation unit, or null if the AST structure has not been resolved.
read-only
directives NodeList<Directive>
Return the directives contained in this compilation unit.
read-only
element CompilationUnitElement
Set the element associated with this compilation unit to the given element.
write-only
endToken Token
Return the last token included in this node's source range.
read / write, inherited-getter
featureSet FeatureSet
The set of features available to this compilation unit, or null if unknown. [...]
read-only
lineInfo LineInfo
Return the line information for this compilation unit.
read / write
scriptTag ScriptTag
Return the script tag at the beginning of the compilation unit, or null if there is no script tag in this compilation unit.
read / write
sortedDirectivesAndDeclarations → List<AstNode>
Return a list containing all of the directives and declarations in this compilation unit, sorted in lexical order.
read-only
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.
read-only, inherited
end → int
Return the offset of the character immediately following the last character of this node's source range. [...]
read-only, inherited
hashCode → int
The hash code for this object.
read-only, inherited
isSynthetic → bool
Return true if this node is a synthetic node. [...]
read-only, inherited
length → int
Return the number of characters in the syntactic entity's source range.
read-only, inherited
offset → int
Return the offset from the beginning of the file to the first character in the syntactic entity.
read-only, inherited
parent AstNode
Return this node's parent node, or null if this node is the root of an AST structure. [...]
read-only, inherited
root AstNode
Return the node at the root of this node's AST structure. [...]
read-only, inherited
runtimeType → Type
A representation of the runtime type of the object.
read-only, inherited

Methods

accept<E>(AstVisitor<E> visitor) → E
Use the given visitor to visit this node. [...]
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 non-existent 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>(Predicate<AstNode> predicate) → 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
Returns 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 ==(dynamic other) → bool
The equality operator.
inherited