Up

module UnparameterizedSyntax

: sig
#
type branch = {
# branch_position
: Positions.t;
# producers
: (Syntax.symbol * Syntax.identifier option) list;
# action
: Syntax.action;
# branch_shift_precedence
: Syntax.branch_shift_precedence;
# branch_reduce_precedence
: Syntax.branch_reduce_precedence;
}
#
type rule = {
# branches
: branch list;
# positions
: Positions.t list;
# inline_flag
: bool;
}
#
type grammar = {
# preludes
: Stretch.t list;
# postludes
: Syntax.trailer list;
# parameters
: Stretch.t list;
# start_symbols
: StringSet.t;
# types
: Stretch.ocamltype StringMap.t;
# tokens
: Syntax.token_properties StringMap.t;
# rules
: rule StringMap.t;
}
end