aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Matej Kosik <m4tej.kosik@gmail.com>2016-08-24 15:35:24 +0200
committerGravatar Matej Kosik <m4tej.kosik@gmail.com>2016-08-24 15:35:24 +0200
commit0591a05a40793e51604a3e9a68b4352099bd5333 (patch)
tree9eda2fdf512f31b369952df46c769d5210bbf710
parent73827588102ddffc515f32eb23b0124563109df3 (diff)
parent50f864e52d952ae59050d2bac1c05788b6393f18 (diff)
Merging a branch that adds "Context.Named.Declaration.to_rel" function.
-rw-r--r--kernel/context.ml8
-rw-r--r--kernel/context.mli7
2 files changed, 13 insertions, 2 deletions
diff --git a/kernel/context.ml b/kernel/context.ml
index 269bf2143..43be9fc4f 100644
--- a/kernel/context.ml
+++ b/kernel/context.ml
@@ -351,6 +351,12 @@ struct
LocalAssum (f na, t)
| Rel.Declaration.LocalDef (na,v,t) ->
LocalDef (f na, v, t)
+
+ let to_rel = function
+ | LocalAssum (id,t) ->
+ Rel.Declaration.LocalAssum (Name id, t)
+ | LocalDef (id,v,t) ->
+ Rel.Declaration.LocalDef (Name id,v,t)
end
(** Named-context is represented as a list of declarations.
@@ -404,7 +410,7 @@ struct
| _ -> None
in
List.map_filter filter
- end
+end
module NamedList =
struct
diff --git a/kernel/context.mli b/kernel/context.mli
index b8a7bf6a3..7c652ac5c 100644
--- a/kernel/context.mli
+++ b/kernel/context.mli
@@ -197,8 +197,13 @@ sig
val to_tuple : t -> Id.t * Constr.t option * Constr.t
val of_tuple : Id.t * Constr.t option * Constr.t -> t
- (** Convert [Rel.Declaration.t] value to the corresponding [Named.Declaration.t] value. *)
+ (** Convert [Rel.Declaration.t] value to the corresponding [Named.Declaration.t] value.
+ The function provided as the first parameter determines how to translate "names" to "ids". *)
val of_rel : (Name.t -> Id.t) -> Rel.Declaration.t -> t
+
+ (** Convert [Named.Declaration.t] value to the corresponding [Rel.Declaration.t] value. *)
+ (* TODO: Move this function to [Rel.Declaration] module and rename it to [of_named]. *)
+ val to_rel : t -> Rel.Declaration.t
end
(** Rel-context is represented as a list of declarations.