28 lines
297 B
Plaintext
28 lines
297 B
Plaintext
|
|
Statement {
|
|
Enum(Enum)
|
|
Node(Node)
|
|
}
|
|
|
|
Enum(name: Name, nodes: Node[])
|
|
|
|
Node(name: Name, params: Param[])
|
|
|
|
Param {
|
|
Named(name: Name, type_: Type)
|
|
Unnamed(Type)
|
|
}
|
|
|
|
Type {
|
|
Name(Name)
|
|
Optional(Type)
|
|
Multiple(Type)
|
|
}
|
|
|
|
Name(
|
|
string,
|
|
line: number,
|
|
col: number,
|
|
)
|
|
|