aboutsummaryrefslogtreecommitdiff
path: root/library/libobject.ml
diff options
context:
space:
mode:
authorEmilio Jesus Gallego Arias2018-10-26 10:24:18 +0200
committerEmilio Jesus Gallego Arias2018-10-26 13:59:23 +0200
commitdccaed2452e544308b46f0c73ffd4f542ef4c8c6 (patch)
tree3f95a7253acf3f06682bd036bc6f647c0121a085 /library/libobject.ml
parent27266c1f79e565a6a19da4c79fc1ce83f748e31c (diff)
[libobject] Move object_name next to object definition.
`object_name` is a particular choice of the implementation of `Liboject`, thus it makes sense to tie it to that particular module. This may prove useful in the future as we may want to modify object naming.
Diffstat (limited to 'library/libobject.ml')
-rw-r--r--library/libobject.ml6
1 files changed, 6 insertions, 0 deletions
diff --git a/library/libobject.ml b/library/libobject.ml
index 79a3fed1b9..ea19fbb90b 100644
--- a/library/libobject.ml
+++ b/library/libobject.ml
@@ -16,6 +16,12 @@ module Dyn = Dyn.Make ()
type 'a substitutivity =
Dispose | Substitute of 'a | Keep of 'a | Anticipate of 'a
+type object_name = Libnames.full_path * Names.KerName.t
+
+(* let make_oname (dirpath,(mp,dir)) id = *)
+let make_oname { obj_dir; obj_mp } id =
+ Names.(make_path obj_dir id, KerName.make obj_mp (Label.of_id id))
+
type 'a object_declaration = {
object_name : string;
cache_function : object_name * 'a -> unit;