Expand description
Immutable, parser-owned syntax data.
Child edges are owned values and public traversal only exposes shared borrows.
There are deliberately no parent links or interior-mutable caches: a parsed
SourceFile can be shared without changing the tree it describes.
Structs§
- Array
Binding Pattern - Array
Literal - Arrow
Function - AsExpression
- Assignment
Array Pattern - Assignment
Binding Pattern - Assignment
Expression - Assignment
Member Target - Assignment
Object Pattern - Assignment
Object Property - Auto
Accessor - Await
Expression - BigInt
Literal - Binary
Expression - Block
- Boolean
Literal - Call
Expression - Call
Signature - Catch
Clause - Class
Declaration - Class
Expression - Class
Heritage - Class
Property - Conditional
Expression - Conditional
Type - Construct
Signature - Constructor
Declaration - Constructor
Type - Declaration
Modifiers - Decorator
- DoWhile
Statement - Enum
Declaration - Enum
Member - Export
AllDeclaration - Export
Default Declaration - Export
Specifier - Expression
Statement - ForIn
Statement - ForOf
Statement - ForStatement
- Function
Declaration - Function
Expression - Function
Like - Function
Type - Function
Type Parameter - Identifier
- IfStatement
- Import
Attribute - Import
Attributes - Import
Clause - Import
Declaration - Import
Equals Declaration - Import
Expression - Import
Specifier - Import
Type - Index
Signature - Indexed
Access Type - Infer
Type - Interface
Declaration - Jump
Statement - Labeled
Statement - Logical
Expression - Mapped
Type - Member
Expression - Method
Declaration - Missing
Node - Recovery payload for an omitted grammar node. Its enclosing
Nodestill carries the insertion range and identity. - Namespace
Declaration - NewExpression
- Node
- The common immutable header for every AST node.
- NodeId
- A stable identity assigned by the parser to one AST node.
- NonNull
Expression - Null
Literal - Numeric
Literal - Object
Binding Pattern - Object
Binding Property - Object
Literal - Object
Method - Object
Property - Object
Type - Parameter
- Parameter
Modifiers - Private
Identifier - Regex
Literal - Rest
Binding Pattern - Return
Statement - Satisfies
Expression - Sequence
Expression - Source
File - The immutable parser product. Diagnostics retain parser order by value; callers cannot mutate the tree, token stream, or diagnostics through this API.
- Spread
Element - String
Literal - Switch
Case - Switch
Statement - Tagged
Template Expression - Template
Element - Template
Literal - Template
Literal Type - Throw
Statement - Token
- An immutable lexical token. Its lexeme stays in
SourceText, avoiding one allocation and reference-counted handle per scanner token. - TryStatement
- Tuple
Element - Tuple
Type - Type
Alias Declaration - Type
Annotation - Type
Argument List - Type
Assertion Expression - Type
Index Signature - Type
Method Signature - Type
Parameter - Type
Parameter List - Type
Predicate - Type
Property Signature - Type
Query - Type
Reference - Unary
Expression - Update
Expression - Variable
Declaration - Variable
Declarator - While
Statement - With
Statement - Yield
Expression
Enums§
- Accessibility
- Array
Binding Element - Array
Element - Assignment
Array Element - Assignment
Operator - Assignment
Target - Binary
Operator - Binding
Pattern - Call
Argument - Class
Member - Entity
Name - Export
Declaration - Export
Default Value - Export
Named Declaration - Export
Specifier Mode - Expression
- External
Module Reference - ForBinding
- ForInitializer
- ForOf
Mode - Function
Body - Import
Binding - Import
Specifier Mode - Keyword
Type - Literal
- Logical
Operator - Mapped
Modifier - Member
Property - Meta
Property - Module
Export Name - Node
Kind - A grammar node kind. A value of this type can never name a token.
- Object
Member - Property
Modifier - Property
Name - Statement
- Syntax
Kind - The complete syntax-kind space, with token and node categories represented by different variants instead of a shared integer namespace.
- Token
Kind - A lexical token kind. This is intentionally separate from
NodeKind. - Type
Literal - Type
Member - Type
Node - Type syntax is kept in this closed enum so erasure never has to inspect a runtime expression variant.
- Type
Operator - Unary
Operator - Update
Operator - Variable
Kind - Variance
Traits§
- Node
Data - Data stored in a typed AST node.
Type Aliases§
- Assignment
Target Node - BigInt
Literal Node - Binding
Pattern Node - Block
Node - Boolean
Literal Node - Catch
Clause Node - Class
Member Node - Decorator
Node - Enum
Member Node - Export
Specifier Node - Expr
- Expression
Node - Identifier
Node - Import
Specifier Node - Null
Literal Node - Numeric
Literal Node - Object
Member Node - Parameter
Node - Pattern
- Private
Identifier Node - Regex
Literal Node - Statement
Node - Stmt
- String
Literal Node - Switch
Case Node - Template
Element Node - Ty
- Type
Annotation Node - Type
Member Node - Type
Node Ref - Type
Parameter Node - Variable
Declarator Node