module languages/asfix/syntax/Tree imports languages/asfix/syntax/Annotations imports languages/asfix/syntax/Symbol imports languages/asfix/syntax/Attributes exports sorts Tree Args Production context-free syntax appl(prod:Production,args:Args) -> Tree {cons("appl")} cycle(symbol:Symbol,length:NatCon) -> Tree {cons("cycle")} amb(args:Args) -> Tree {cons("amb")} character:NatCon -> Tree {cons("char")} "[" {Tree ","}* "]" -> Args {cons("list")} "prod" "(" lhs:Symbols comma1:"," rhs:Symbol comma2:"," attributes:Attributes ")" -> Production {cons("default")} list(rhs:Symbol) -> Production {cons("list")} hiddens context-free start-symbols Tree