Skip to content

Commit 88c97d1

Browse files
committed
wip
1 parent db5bb47 commit 88c97d1

File tree

6 files changed

+63
-45
lines changed

6 files changed

+63
-45
lines changed

src/.ppcache/API.ml

Lines changed: 39 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
(*09dd92d029bc5129509dbb9e46c435ff8be4de41 *src/API.ml --cookie elpi_trace="false"*)
1+
(*02b4f581e688efce20aa37de517a1147f85853f8 *src/API.ml --cookie elpi_trace="false"*)
22
#1 "src/API.ml"
33
module type Runtime = module type of Runtime_trace_off
44
let r = ref ((module Runtime_trace_off) : (module Runtime))
@@ -1338,35 +1338,49 @@ module PPX =
13381338
args)
13391339
let show_ty_ast = ED.Conversion.show_ty_ast
13401340
end
1341-
let readback_int ~depth _ c s x =
1342-
BuiltInData.int.Conversion.readback ~depth ((new Conversion.ctx) []) c
1343-
s x
1344-
let readback_float ~depth _ c s x =
1345-
BuiltInData.float.Conversion.readback ~depth ((new Conversion.ctx) [])
1346-
c s x
1347-
let readback_string ~depth _ c s x =
1348-
BuiltInData.string.Conversion.readback ~depth ((new Conversion.ctx) [])
1341+
let readback_int ~depth h c s x =
1342+
BuiltInData.int.Conversion.readback ~depth ((new Conversion.ctx) h#raw)
13491343
c s x
1344+
let readback_float ~depth h c s x =
1345+
BuiltInData.float.Conversion.readback ~depth
1346+
((new Conversion.ctx) h#raw) c s x
1347+
let readback_string ~depth h c s x =
1348+
BuiltInData.string.Conversion.readback ~depth
1349+
((new Conversion.ctx) h#raw) c s x
13501350
let readback_list = BuiltInData.readback_list
1351-
let readback_loc ~depth _ c s x =
1352-
BuiltInData.loc.Conversion.readback ~depth ((new Conversion.ctx) []) c
1353-
s x
1354-
let readback_nominal ~depth _ c s x =
1351+
let readback_loc ~depth h c s x =
1352+
BuiltInData.loc.Conversion.readback ~depth ((new Conversion.ctx) h#raw)
1353+
c s x
1354+
let readback_nominal ~depth h c s x =
13551355
BuiltInData.nominal.Conversion.readback ~depth
1356-
((new Conversion.ctx) []) c s x
1357-
let embed_int ~depth _ c s x =
1358-
BuiltInData.int.Conversion.embed ~depth ((new Conversion.ctx) []) c s x
1359-
let embed_float ~depth _ c s x =
1360-
BuiltInData.float.Conversion.embed ~depth ((new Conversion.ctx) []) c s
1361-
x
1362-
let embed_string ~depth _ c s x =
1363-
BuiltInData.string.Conversion.embed ~depth ((new Conversion.ctx) []) c
1356+
((new Conversion.ctx) h#raw) c s x
1357+
let readback_bool ~depth h c s x =
1358+
BuiltInData.bool.Conversion.readback ~depth
1359+
((new Conversion.ctx) h#raw) c s x
1360+
let readback_char ~depth h c s x =
1361+
BuiltInData.char.Conversion.readback ~depth
1362+
((new Conversion.ctx) h#raw) c s x
1363+
let embed_int ~depth h c s x =
1364+
BuiltInData.int.Conversion.embed ~depth ((new Conversion.ctx) h#raw) c
13641365
s x
1366+
let embed_float ~depth h c s x =
1367+
BuiltInData.float.Conversion.embed ~depth ((new Conversion.ctx) h#raw)
1368+
c s x
1369+
let embed_string ~depth h c s x =
1370+
BuiltInData.string.Conversion.embed ~depth ((new Conversion.ctx) h#raw)
1371+
c s x
13651372
let embed_list = BuiltInData.embed_list
1366-
let embed_loc ~depth _ c s x =
1367-
BuiltInData.loc.Conversion.embed ~depth ((new Conversion.ctx) []) c s x
1368-
let embed_nominal ~depth _ c s x =
1369-
BuiltInData.nominal.Conversion.embed ~depth ((new Conversion.ctx) []) c
1373+
let embed_loc ~depth h c s x =
1374+
BuiltInData.loc.Conversion.embed ~depth ((new Conversion.ctx) h#raw) c
1375+
s x
1376+
let embed_nominal ~depth h c s x =
1377+
BuiltInData.nominal.Conversion.embed ~depth
1378+
((new Conversion.ctx) h#raw) c s x
1379+
let embed_bool ~depth h c s x =
1380+
BuiltInData.bool.Conversion.embed ~depth ((new Conversion.ctx) h#raw) c
1381+
s x
1382+
let embed_char ~depth h c s x =
1383+
BuiltInData.char.Conversion.embed ~depth ((new Conversion.ctx) h#raw) c
13701384
s x
13711385
type context_description =
13721386
| C: ('a, 'k, 'c) Conversion.context -> context_description

src/.ppcache/API.mli

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
(*262f7f42585df543898448e5ff436973e6f64995 *src/API.mli --cookie elpi_trace="false"*)
1+
(*a0dedc3be4f51309a9b50b6fd946f6c63f474e0c *src/API.mli --cookie elpi_trace="false"*)
22
#1 "src/API.mli"
33
[@@@ocaml.text " This module is the API for clients of the Elpi library. "]
44
[@@@ocaml.text
@@ -685,13 +685,17 @@ sig
685685
('a, 'c) Conversion.readback -> ('a list, 'c) Conversion.readback
686686
val readback_loc : (Ast.Loc.t, 'c) Conversion.readback
687687
val readback_nominal : (RawData.constant, 'c) Conversion.readback
688+
val readback_bool : (bool, 'h) Conversion.readback
689+
val readback_char : (char, 'h) Conversion.readback
688690
val embed_int : (int, 'c) Conversion.embedding
689691
val embed_float : (float, 'c) Conversion.embedding
690692
val embed_string : (string, 'c) Conversion.embedding
691693
val embed_list :
692694
('a, 'c) Conversion.embedding -> ('a list, 'c) Conversion.embedding
693695
val embed_loc : (Ast.Loc.t, 'c) Conversion.embedding
694696
val embed_nominal : (RawData.constant, 'c) Conversion.embedding
697+
val embed_bool : (bool, 'h) Conversion.embedding
698+
val embed_char : (char, 'h) Conversion.embedding
695699
type context_description =
696700
| C: ('a, 'k, 'c) Conversion.context -> context_description
697701
val readback_context :

src/API.ml

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1066,19 +1066,23 @@ module Doc = struct
10661066
let show_ty_ast = ED.Conversion.show_ty_ast
10671067
end
10681068

1069-
let readback_int ~depth _ c s x = BuiltInData.int.Conversion.readback ~depth (new Conversion.ctx []) c s x
1070-
let readback_float ~depth _ c s x = BuiltInData.float.Conversion.readback ~depth (new Conversion.ctx []) c s x
1071-
let readback_string ~depth _ c s x = BuiltInData.string.Conversion.readback ~depth (new Conversion.ctx []) c s x
1069+
let readback_int ~depth h c s x = BuiltInData.int.Conversion.readback ~depth (new Conversion.ctx h#raw) c s x
1070+
let readback_float ~depth h c s x = BuiltInData.float.Conversion.readback ~depth (new Conversion.ctx h#raw) c s x
1071+
let readback_string ~depth h c s x = BuiltInData.string.Conversion.readback ~depth (new Conversion.ctx h#raw) c s x
10721072
let readback_list = BuiltInData.readback_list
1073-
let readback_loc ~depth _ c s x = BuiltInData.loc.Conversion.readback ~depth (new Conversion.ctx []) c s x
1074-
let readback_nominal ~depth _ c s x = BuiltInData.nominal.Conversion.readback ~depth (new Conversion.ctx []) c s x
1075-
1076-
let embed_int ~depth _ c s x = BuiltInData.int.Conversion.embed ~depth (new Conversion.ctx []) c s x
1077-
let embed_float ~depth _ c s x = BuiltInData.float.Conversion.embed ~depth (new Conversion.ctx []) c s x
1078-
let embed_string ~depth _ c s x = BuiltInData.string.Conversion.embed ~depth (new Conversion.ctx []) c s x
1073+
let readback_loc ~depth h c s x = BuiltInData.loc.Conversion.readback ~depth (new Conversion.ctx h#raw) c s x
1074+
let readback_nominal ~depth h c s x = BuiltInData.nominal.Conversion.readback ~depth (new Conversion.ctx h#raw) c s x
1075+
let readback_bool ~depth h c s x = BuiltInData.bool.Conversion.readback ~depth (new Conversion.ctx h#raw) c s x
1076+
let readback_char ~depth h c s x = BuiltInData.char.Conversion.readback ~depth (new Conversion.ctx h#raw) c s x
1077+
1078+
let embed_int ~depth h c s x = BuiltInData.int.Conversion.embed ~depth (new Conversion.ctx h#raw) c s x
1079+
let embed_float ~depth h c s x = BuiltInData.float.Conversion.embed ~depth (new Conversion.ctx h#raw) c s x
1080+
let embed_string ~depth h c s x = BuiltInData.string.Conversion.embed ~depth (new Conversion.ctx h#raw) c s x
10791081
let embed_list = BuiltInData.embed_list
1080-
let embed_loc ~depth _ c s x = BuiltInData.loc.Conversion.embed ~depth (new Conversion.ctx []) c s x
1081-
let embed_nominal ~depth _ c s x = BuiltInData.nominal.Conversion.embed ~depth (new Conversion.ctx []) c s x
1082+
let embed_loc ~depth h c s x = BuiltInData.loc.Conversion.embed ~depth (new Conversion.ctx h#raw) c s x
1083+
let embed_nominal ~depth h c s x = BuiltInData.nominal.Conversion.embed ~depth (new Conversion.ctx h#raw) c s x
1084+
let embed_bool ~depth h c s x = BuiltInData.bool.Conversion.embed ~depth (new Conversion.ctx h#raw) c s x
1085+
let embed_char ~depth h c s x = BuiltInData.char.Conversion.embed ~depth (new Conversion.ctx h#raw) c s x
10821086
type context_description =
10831087
| C : ('a,'k,'c) Conversion.context -> context_description
10841088

src/API.mli

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1136,13 +1136,17 @@ module PPX : sig
11361136
val readback_list : ('a, 'c) Conversion.readback -> ('a list,'c) Conversion.readback
11371137
val readback_loc : (Ast.Loc.t, 'c) Conversion.readback
11381138
val readback_nominal : (RawData.constant, 'c) Conversion.readback
1139+
val readback_bool : (bool, 'h) Conversion.readback
1140+
val readback_char : (char, 'h) Conversion.readback
11391141

11401142
val embed_int : (int, 'c) Conversion.embedding
11411143
val embed_float : (float, 'c) Conversion.embedding
11421144
val embed_string : (string, 'c) Conversion.embedding
11431145
val embed_list : ('a, 'c) Conversion.embedding -> ('a list, 'c) Conversion.embedding
11441146
val embed_loc : (Ast.Loc.t, 'c) Conversion.embedding
11451147
val embed_nominal : (RawData.constant, 'c) Conversion.embedding
1148+
val embed_bool : (bool, 'h) Conversion.embedding
1149+
val embed_char : (char, 'h) Conversion.embedding
11461150

11471151
type context_description =
11481152
| C : ('a,'k,'c) Conversion.context -> context_description

src/builtin.ml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1379,17 +1379,13 @@ module PPX = struct
13791379

13801380
let readback_pair = readback_pair
13811381
let readback_option = readback_option
1382-
let readback_bool ~depth _ c s x = bool.API.Conversion.readback ~depth (new Conversion.ctx []) c s x
1383-
let readback_char ~depth _ c s x = char.API.Conversion.readback ~depth (new Conversion.ctx []) c s x
13841382

13851383
let readback_triple = readback_triple
13861384
let readback_quadruple = readback_quadruple
13871385
let readback_quintuple = readback_quintuple
13881386

13891387
let embed_pair = embed_pair
13901388
let embed_option = embed_option
1391-
let embed_bool ~depth _ c s x = bool.API.Conversion.embed ~depth (new Conversion.ctx []) c s x
1392-
let embed_char ~depth _ c s x = char.API.Conversion.embed ~depth (new Conversion.ctx []) c s x
13931389

13941390
let embed_triple = embed_triple
13951391
let embed_quadruple = embed_quadruple

src/builtin.mli

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,17 +60,13 @@ module PPX : sig
6060

6161
val readback_pair : ('a, 'h) API.Conversion.readback -> ('b, 'h) API.Conversion.readback -> ('a * 'b, 'h) API.Conversion.readback
6262
val readback_option : ('a, 'h) API.Conversion.readback -> ('a option, 'h) API.Conversion.readback
63-
val readback_bool : (bool, 'h) API.Conversion.readback
64-
val readback_char : (char, 'h) API.Conversion.readback
6563

6664
val readback_triple : ('a, 'h) API.Conversion.readback -> ('b, 'h) API.Conversion.readback -> ('c, 'h) API.Conversion.readback -> ('a * 'b * 'c, 'h) API.Conversion.readback
6765
val readback_quadruple : ('a, 'h) API.Conversion.readback -> ('b, 'h) API.Conversion.readback -> ('c, 'h) API.Conversion.readback -> ('d, 'h) API.Conversion.readback -> ('a * 'b * 'c * 'd, 'h) API.Conversion.readback
6866
val readback_quintuple : ('a, 'h) API.Conversion.readback -> ('b, 'h) API.Conversion.readback -> ('c, 'h) API.Conversion.readback -> ('d, 'h) API.Conversion.readback -> ('e, 'h) API.Conversion.readback -> ('a * 'b * 'c * 'd * 'e, 'h) API.Conversion.readback
6967

7068
val embed_pair : ('a, 'h) API.Conversion.embedding -> ('b, 'h) API.Conversion.embedding -> ('a * 'b, 'h) API.Conversion.embedding
7169
val embed_option : ('a, 'h) API.Conversion.embedding -> ('a option, 'h) API.Conversion.embedding
72-
val embed_bool : (bool, 'h) API.Conversion.embedding
73-
val embed_char : (char, 'h) API.Conversion.embedding
7470

7571
val embed_triple : ('a, 'h) API.Conversion.embedding -> ('b, 'h) API.Conversion.embedding -> ('c, 'h) API.Conversion.embedding -> ('a * 'b * 'c, 'h) API.Conversion.embedding
7672
val embed_quadruple : ('a, 'h) API.Conversion.embedding -> ('b, 'h) API.Conversion.embedding -> ('c, 'h) API.Conversion.embedding -> ('d, 'h) API.Conversion.embedding -> ('a * 'b * 'c * 'd, 'h) API.Conversion.embedding

0 commit comments

Comments
 (0)