Module ast

Source
Expand description

Frontend AST re-exports used by the parser and downstream stages.

Structs§

AssignTarget
Assignment path rooted at a binding.
Binding
Pattern binding.
Block
Runtime statement block.
BrowserGraph
Browser-friendly graph payload for interactive viewers.
BrowserGraphEdge
A single directed browser graph edge.
BrowserGraphNode
A single browser graph node.
EnumDecl
Runtime enum declaration.
ExprId
Stable frontend runtime expression identifier.
ExternFunctionDecl
Extern function declaration.
ExternModuleDecl
Extern module declaration.
FileId
Identifier for one source file tracked by the frontend.
FrontendNodeIndex
Side-table index of frontend nodes discovered in deterministic traversal order.
FunctionDecl
Runtime function declaration.
ImportDecl
Import declaration.
IntrinsicSignature
Intrinsic signature shape tracked by arity validation.
ItemId
Stable frontend item identifier.
MatchArm
Runtime match arm.
MetaBlock
Meta statement block.
MetaExprId
Stable frontend meta expression identifier.
MetaFunctionDecl
Meta function declaration.
MetaMatchArm
Meta match arm.
MetaParam
Meta function parameter.
MetaStmtId
Stable frontend meta statement identifier.
NamedExprField
Named field value in a struct literal.
NamedTypeField
Named type field.
NumberLiteral
Runtime numeric literal as written in source.
Param
Runtime function parameter.
Program
Whole parsed frontend program.
SourceLocation
Concrete source location in a file.
SourceSpan
Half-open span within source text.
SpannedIdent
Identifier token with source span metadata.
StmtId
Stable frontend runtime statement identifier.
StructDecl
Runtime struct declaration.
TypeId
Stable frontend type-expression identifier.
TypeRef
Source-level type reference with ownership mode.
VariantType
Enum variant payload shape.

Enums§

AssignMode
Assignment surface form.
BinaryOp
Binary arithmetic operator.
CallArg
Function call argument.
Expr
Runtime expression.
ExprKind
Runtime expression category indexed by ExprId.
FrontendParent
Parent reference for a frontend node in deterministic traversal order.
IntrinsicId
Builtin intrinsic identifier used by semantic phases.
ItemKind
Top-level item category indexed by ItemId.
MatchPattern
Runtime match pattern.
MetaExpr
Meta expression.
MetaExprKind
Meta expression category indexed by MetaExprId.
MetaMatchPattern
Meta match pattern.
MetaStmt
Meta statement.
MetaStmtKind
Meta statement category indexed by MetaStmtId.
OwnershipMode
Parameter ownership mode.
PrefixOp
Prefix operator.
QuotedCode
Quoted code fragment.
RelationalOp
Relational comparison operator.
Stmt
Runtime statement.
StmtKind
Runtime statement category indexed by StmtId.
TopItem
Any top-level frontend item.
TypeExpr
Type syntax shared across frontend stages.
TypeKind
Type-expression category indexed by TypeId.

Functions§

format_assign_mode
Render an assignment mode into a compact label.
format_binary_op
Render a binary operator into a compact label.
format_ownership_mode
Render an ownership mode into a compact label.
format_prefix_op
Render a prefix operator into a compact label.
format_relational_op
Render a relational operator into a compact label.