(* $Id$ *)
-type ast_command = Cic.obj GrafiteAst.command
+type ast_command = (Cic.term,Cic.obj) GrafiteAst.command
type moo = ast_command list
let format_name = "grafite"
| GrafiteAst.Default (loc, name, uris) ->
let uris = List.map rehash_uri uris in
GrafiteAst.Default (loc, name, uris)
- | GrafiteAst.Coercion (loc, uri, close, arity) ->
- GrafiteAst.Coercion (loc, rehash_uri uri, close, arity)
+ | GrafiteAst.PreferCoercion (loc, uri) ->
+ GrafiteAst.PreferCoercion (loc, CicUtil.rehash_term uri)
+ | GrafiteAst.Coercion (loc, uri, close, arity, saturations) ->
+ GrafiteAst.Coercion (loc, CicUtil.rehash_term uri, close, arity, saturations)
+ | GrafiteAst.Index (loc, key, uri) ->
+ GrafiteAst.Index (loc, HExtlib.map_option CicUtil.rehash_term key, rehash_uri uri)
+ | GrafiteAst.Select (loc, uri) ->
+ GrafiteAst.Select (loc, rehash_uri uri)
+ | GrafiteAst.Include _ as cmd -> cmd
| cmd ->
prerr_endline "Found a command not expected in a .moo:";
+ let term_pp _ = assert false in
let obj_pp _ = assert false in
- prerr_endline (GrafiteAstPp.pp_command ~obj_pp cmd);
+ prerr_endline (GrafiteAstPp.pp_command ~term_pp ~obj_pp cmd);
assert false
let save_moo ~fname moo = save_moo_to_file ~fname (List.rev moo)