150
150
(* * The output signature of the functors {!K1.MakeSeeded} and {!K2.MakeSeeded}.
151
151
*)
152
152
153
- module K1 : sig
153
+ module K1 : sig @@ portable
154
154
type ('k,'d) t (** an ephemeron with one key *)
155
155
156
156
val make : 'k -> 'd -> ('k ,'d) t
@@ -161,19 +161,19 @@ module K1 : sig
161
161
ephemeron's data) if [key] is physically equal to [eph]'s key, and
162
162
[None] if [eph] is empty or [key] is not equal to [eph]'s key. *)
163
163
164
- module Make (H :Hashtbl.HashedType ) : S with type key = H. t
164
+ module ( Make @ nonportable) (H :Hashtbl.HashedType ) : S with type key = H. t
165
165
(* * Functor building an implementation of a weak hash table *)
166
166
167
167
module MakePortable (H :sig @@ portable include Hashtbl.HashedType end )
168
168
: sig @@ portable include S with type key = H. t end
169
169
(* * Like {!Make}, but takes a portable [hash] function to
170
170
portable [Ephemeron] operations. *)
171
171
172
- module MakeSeeded (H :Hashtbl.SeededHashedType ) : SeededS with type key = H. t
172
+ module ( MakeSeeded @ nonportable) (H :Hashtbl.SeededHashedType ) : SeededS with type key = H. t
173
173
(* * Functor building an implementation of a weak hash table.
174
174
The seed is similar to the one of {!Hashtbl.MakeSeeded}. *)
175
175
176
- module MakeSeededPortable (H :sig @@ portable include Hashtbl.SeededHashedType end )
176
+ module ( MakeSeededPortable @ nonportable) (H :sig @@ portable include Hashtbl.SeededHashedType end )
177
177
: sig @@ portable include SeededS with type key = H. t end
178
178
(* * Like {!MakeSeeded}, but takes a portable [seeded_hash] function to
179
179
portable [Ephemeron] operations. *)
@@ -206,10 +206,10 @@ module K1 : sig
206
206
207
207
end
208
208
209
- end
209
+ end @@ nonportable
210
210
(* * Ephemerons with one key. *)
211
211
212
- module K2 : sig
212
+ module K2 : sig @@ portable
213
213
type ('k1,'k2,'d) t (** an ephemeron with two keys *)
214
214
215
215
val make : 'k1 -> 'k2 -> 'd -> ('k1 ,'k2,'d) t
@@ -218,7 +218,7 @@ module K2 : sig
218
218
val query : ('k1 ,'k2,'d) t -> 'k1 -> 'k2 -> 'd option
219
219
(* * Same as {!Ephemeron.K1.query} *)
220
220
221
- module Make
221
+ module ( Make @ nonportable)
222
222
(H1 :Hashtbl.HashedType )
223
223
(H2 :Hashtbl.HashedType ) :
224
224
S with type key = H1. t * H2. t
@@ -231,14 +231,14 @@ module K2 : sig
231
231
(* * Like {!Make}, but takes portable [hash] functions to
232
232
portable [Ephemeron] operations. *)
233
233
234
- module MakeSeeded
234
+ module ( MakeSeeded @ nonportable)
235
235
(H1 :Hashtbl.SeededHashedType )
236
236
(H2 :Hashtbl.SeededHashedType ) :
237
237
SeededS with type key = H1. t * H2. t
238
238
(* * Functor building an implementation of a weak hash table.
239
239
The seed is similar to the one of {!Hashtbl.MakeSeeded}. *)
240
240
241
- module MakeSeededPortable
241
+ module ( MakeSeededPortable @ nonportable)
242
242
(H1 :sig @@ portable include Hashtbl.SeededHashedType end )
243
243
(H2 :sig @@ portable include Hashtbl.SeededHashedType end ) :
244
244
sig @@ portable include SeededS with type key = H1. t * H2. t end
@@ -273,10 +273,10 @@ module K2 : sig
273
273
274
274
end
275
275
276
- end
276
+ end @@ nonportable
277
277
(* * Ephemerons with two keys. *)
278
278
279
- module Kn : sig
279
+ module Kn : sig @@ portable
280
280
type ('k,'d) t (** an ephemeron with an arbitrary number of keys
281
281
of the same type *)
282
282
@@ -286,7 +286,7 @@ module Kn : sig
286
286
val query : ('k ,'d) t -> 'k array -> 'd option
287
287
(* * Same as {!Ephemeron.K1.query} *)
288
288
289
- module Make
289
+ module ( Make @ nonportable)
290
290
(H :Hashtbl.HashedType ) :
291
291
S with type key = H. t array
292
292
(* * Functor building an implementation of a weak hash table *)
@@ -297,13 +297,13 @@ module Kn : sig
297
297
(* * Like {!Make}, but takes a portable [hash] function to
298
298
portable [Ephemeron] operations. *)
299
299
300
- module MakeSeeded
300
+ module ( MakeSeeded @ nonportable)
301
301
(H :Hashtbl.SeededHashedType ) :
302
302
SeededS with type key = H. t array
303
303
(* * Functor building an implementation of a weak hash table.
304
304
The seed is similar to the one of {!Hashtbl.MakeSeeded}. *)
305
305
306
- module MakeSeededPortable
306
+ module ( MakeSeededPortable @ nonportable)
307
307
(H :sig @@ portable include Hashtbl.SeededHashedType end ) :
308
308
sig @@ portable include SeededS with type key = H. t array end
309
309
(* * Like {!MakeSeeded}, but takes a portable [seeded_hash] function to
@@ -337,5 +337,5 @@ module Kn : sig
337
337
338
338
end
339
339
340
- end
340
+ end @@ nonportable
341
341
(* * Ephemerons with arbitrary number of keys of the same type. *)
0 commit comments