| _ -> PatternMatcher.Constructor
let tag_of_pattern = get_tag
let tag_of_term t = get_tag t
- let string_of_term = NotationPp.pp_term
- let string_of_pattern = NotationPp.pp_term
+
+ (* Debugging only *)
+ (*CSC: new NCicPp.status is the best I can do now *)
+ let string_of_term = NotationPp.pp_term (new NCicPp.status)
+ let string_of_pattern = NotationPp.pp_term (new NCicPp.status)
end
module M = PatternMatcher.Matcher (Pattern21)
| Ast.Variable (Ast.NumVar name), (Ast.Num (s, _)) ->
name, (Env.NumType, Env.NumValue s)
| Ast.Variable (Ast.IdentVar name), (Ast.Ident (s, None)) ->
- name, (Env.StringType, Env.StringValue s)
- | _ -> assert false)
+ name, (Env.StringType, Env.StringValue (Env.Ident s))
+ | _ -> assert false (* activate the DEBUGGING CODE below *))
pl tl
with Invalid_argument _ -> assert false
in
magichooser candidates
in
+(* DEBUGGING CODE
+fun input ->
+let (fst,_)::_ = rows in
+prerr_endline ("RIGA: " ^ NotationPp.pp_term (new NCicPp.status) fst);
+prerr_endline ("CONTRO: " ^ NotationPp.pp_term (new NCicPp.status) input);
+*)
M.compiler rows' match_cb (fun _ -> None)
+(* DEBUGGING CODE
+input
+*)
and compile_magic = function
| Ast.Fold (kind, p_base, names, p_rec) ->