diff options
| author | Maxime Dénès | 2016-10-03 15:26:17 +0200 |
|---|---|---|
| committer | Maxime Dénès | 2016-10-03 15:26:17 +0200 |
| commit | 6cc37a67e4be8e20cd3da46077ab8f3458e22394 (patch) | |
| tree | 7baf96eaccf037a94d7e525ccaec898955b465bd /engine | |
| parent | 4a2e0798cf24c9edf4e96bd6ad62bdbde7a7cdf7 (diff) | |
| parent | d55818c7da468ce1c7c9644cb63f68f7561a17bc (diff) | |
Merge remote-tracking branch 'github/pr/263' into v8.6
Was PR#263: Fast lookup in named contexts
Diffstat (limited to 'engine')
| -rw-r--r-- | engine/termops.ml | 7 | ||||
| -rw-r--r-- | engine/termops.mli | 2 |
2 files changed, 3 insertions, 6 deletions
diff --git a/engine/termops.ml b/engine/termops.ml index a047bf53c7..17e56ec31e 100644 --- a/engine/termops.ml +++ b/engine/termops.ml @@ -975,11 +975,8 @@ let smash_rel_context sign = let fold_named_context_both_sides f l ~init = List.fold_right_and_left f l init -let rec mem_named_context id ctxt = - match ctxt with - | decl :: _ when Id.equal id (NamedDecl.get_id decl) -> true - | _ :: sign -> mem_named_context id sign - | [] -> false +let mem_named_context_val id ctxt = + try Environ.lookup_named_val id ctxt; true with Not_found -> false let compact_named_context_reverse sign = let compact l decl = diff --git a/engine/termops.mli b/engine/termops.mli index 5d85088f8d..0a7ac1f266 100644 --- a/engine/termops.mli +++ b/engine/termops.mli @@ -237,7 +237,7 @@ val map_rel_context_with_binders : val fold_named_context_both_sides : ('a -> Context.Named.Declaration.t -> Context.Named.Declaration.t list -> 'a) -> Context.Named.t -> init:'a -> 'a -val mem_named_context : Id.t -> Context.Named.t -> bool +val mem_named_context_val : Id.t -> named_context_val -> bool val compact_named_context : Context.Named.t -> Context.NamedList.t val compact_named_context_reverse : Context.Named.t -> Context.NamedList.t |
