let pp_assoc =
function
- | Gramext.NonA -> "NonA"
- | Gramext.LeftA -> "LeftA"
- | Gramext.RightA -> "RightA"
+ | Gramext.NonA -> "N"
+ | Gramext.LeftA -> "L"
+ | Gramext.RightA -> "R"
let pp_pos =
function
and pp_variable = function
| Ast.NumVar s -> "number " ^ s
| Ast.IdentVar s -> "ident " ^ s
- | Ast.TermVar s -> "term " ^ s
+ | Ast.TermVar (s,None) -> s
+ | Ast.TermVar (s,Some (l,a)) -> "term " ^string_of_int l ^ " " ^ pp_assoc a ^ " " ^ s
| Ast.Ascription (t, n) -> assert false
| Ast.FreshVar n -> "fresh " ^ n
let rec pp_value_type =
function
- | Env.TermType -> "Term"
+ | Env.TermType None -> "Term"
+ | Env.TermType (Some (l,a)) -> "Term "^string_of_int l ^ " " ^ pp_assoc a
| Env.StringType -> "String"
| Env.NumType -> "Number"
| Env.OptType t -> "Maybe " ^ pp_value_type t