Expand description
AIR node definitions — the unified intermediate representation.
Every construct in an Bock program is represented as an AIRNode with a
NodeKind discriminant that carries typed children. All four AIR layers
(S-AIR, T-AIR, C-AIR, TR-AIR) use the same node type; later passes fill
in the layer slots that start as None.
Structs§
- AIRNode
- A single node in the Bock Intermediate Representation.
- AirArg
- A named argument in a call expression:
label: value. - AirHandler
Pair - A handler pair in a
handlingblock:Effect with handler. - AirMap
Entry - A key-value entry in a map literal.
- AirRecord
Field - A field in a record construction expression.
- AirRecord
Pattern Field - A field binding inside a record pattern.
- Node
IdGen - A monotonic counter that generates unique
NodeIds.
Enums§
- AirInterpolation
Part - A segment of a string interpolation expression.
- Enum
Variant Payload - The payload of an enum variant in the AIR.
- Node
Kind - Discriminant and typed children of an
AIRNode. - Result
Variant OkorErrvariant for result construction.
Type Aliases§
- NodeId
- Unique identifier for an AIR node within a compilation session.