Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
syntax Node = Key=Reference sm NodeContent;
syntax NodeContent = "{" outline_begin_before inl NodeMembers nl d outline_end "}";
syntax NodeMember
{
| Attribute = Key=Reference sm ":" sm Value
| Node = Node
}
syntax Value
{
| StringLiteral
| Number
| Object = NodeContent;
| Array = "[" outline_begin_before Values outline_end "]";
}
// ----------------------
abstract ast NodeMember : BindableAst
{
Key : Reference;
}
ast Node : NodeMember
{
NodeMembers : NodeMember*;
}
ast Attribute : NodeMember
{
Val : Value;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.