aboutsummaryrefslogtreecommitdiffhomepage
path: root/engine
diff options
context:
space:
mode:
authorGravatar Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr>2017-09-10 02:21:03 +0200
committerGravatar Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr>2017-09-28 16:51:21 +0200
commitb772c323f62b322c9b0a4ab90c7de8b1e2066bae (patch)
tree16dc8bc2ae1b5374a1329b9f6495d0a1b9905ee4 /engine
parentd28304f6ba18ad9527a63cd01b39a5ad27526845 (diff)
Efficient computation of the names contained in an environment.
Diffstat (limited to 'engine')
-rw-r--r--engine/namegen.ml2
-rw-r--r--engine/termops.ml6
2 files changed, 4 insertions, 4 deletions
diff --git a/engine/namegen.ml b/engine/namegen.ml
index 489666852..1dd29e6ea 100644
--- a/engine/namegen.ml
+++ b/engine/namegen.ml
@@ -302,7 +302,7 @@ let next_name_away = next_name_away_with_default default_non_dependent_string
let make_all_name_different env sigma =
(** FIXME: this is inefficient, but only used in printing *)
- let avoid = ref (Context.Named.to_vars (named_context env)) in
+ let avoid = ref (ids_of_named_context_val (named_context_val env)) in
let sign = named_context_val env in
let rels = rel_context env in
let env0 = reset_with_named_context sign env in
diff --git a/engine/termops.ml b/engine/termops.ml
index e2bdf7238..b7fa2dc4a 100644
--- a/engine/termops.ml
+++ b/engine/termops.ml
@@ -1071,9 +1071,9 @@ let replace_term_gen sigma eq_fun c by_c in_t =
let replace_term sigma c byc t = replace_term_gen sigma EConstr.eq_constr c byc t
let vars_of_env env =
- let s =
- Context.Named.fold_outside (fun decl s -> Id.Set.add (NamedDecl.get_id decl) s)
- (named_context env) ~init:Id.Set.empty in
+ let s = Environ.ids_of_named_context_val (Environ.named_context_val env) in
+ if List.is_empty (Environ.rel_context env) then s
+ else
Context.Rel.fold_outside
(fun decl s -> match RelDecl.get_name decl with Name id -> Id.Set.add id s | _ -> s)
(rel_context env) ~init:s