open Commontree type token = | TerminalToken of string | NonTerminalToken of string type action_node = | Token of int | Tuple of action list | Construct of string * action list | Cons of action * action | EmptyList | Unit | MakeSome of action | MakeNone | Locate of action and action = action_node node type branch = token list * action type entry = string * branch list type grammar = entry list