Expand description
§espy-ears (parser)
the parser consists of two major contexts: the expression and the block. expressions define a sequence of operations that produce a value, while blocks are capable of binding expressions to identifiers and disrupting control flow. an espy program should be interpreted as a “block” at its top level.
block parsing is “infallible”; instead of returning Result types, most ast
nodes contain “diagnostics” fields to collect errors without giving up on
parsing.
Structs§
- Annotation
- Binding
- Block
- Block
Iter - Iterator type for a destructured
Box<Block> - Diagnostics
- Contains a list of the errors encountered by an ast node.
- Enum
- Expression
- This type should not contain an incomplete expression so long as there are no error diagnostics.
- Expression
Iter - Iterator type for a destructured
Box<Expression> - Function
- If
- Let
- Match
- Match
Case - Match
Iter - Iterator type for a destructured
Box<Match> - Named
Binding - Named
SubBinding - Numeric
Binding - Rebind
- Rebind
Subject - Sequence
- Set
- Use
Enums§
- Binding
Method - Block
Result - Error
- Function
Body - Node
- Components of an expression.
- Rebind
By - Statement