aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping/glob_ops.ml
diff options
context:
space:
mode:
authorGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2017-08-21 23:01:04 +0200
committerGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2018-02-20 10:03:06 +0100
commit50970e4043d73d9a4fbd17ffe765745f6d726317 (patch)
tree30af940838c330d2b50a2da6c669667c23dfc7fc /pretyping/glob_ops.ml
parent15abe33f55b317410223bd48576fa35c81943ff9 (diff)
Using an "as" clause when needed for printing irrefutable patterns.
Example which is now reprinted as parsed: fun '((x,y) as z) => (y,x)=z
Diffstat (limited to 'pretyping/glob_ops.ml')
-rw-r--r--pretyping/glob_ops.ml5
1 files changed, 5 insertions, 0 deletions
diff --git a/pretyping/glob_ops.ml b/pretyping/glob_ops.ml
index b3e6aa059..25817478e 100644
--- a/pretyping/glob_ops.ml
+++ b/pretyping/glob_ops.ml
@@ -24,6 +24,11 @@ let alias_of_pat pat = DAst.with_val (function
| PatCstr(_,_,name) -> name
) pat
+let set_pat_alias id = DAst.map (function
+ | PatVar Anonymous -> PatVar (Name id)
+ | PatCstr (cstr,patl,Anonymous) -> PatCstr (cstr,patl,Name id)
+ | pat -> assert false)
+
let cases_predicate_names tml =
List.flatten (List.map (function
| (tm,(na,None)) -> [na]