diff options
| author | Kathy Gray | 2015-10-06 11:30:40 +0100 |
|---|---|---|
| committer | Kathy Gray | 2015-10-06 11:30:52 +0100 |
| commit | 5533b43fe28ce27ef77914addc8acf392390797b (patch) | |
| tree | 642af8ff752287bdd82a4ca21edfcfd574033352 /src | |
| parent | b0c3b70ea6645cd8d172ffadc8e7877d7b88028a (diff) | |
make let and case actually call pattern rewriter
Diffstat (limited to 'src')
| -rw-r--r-- | src/rewriter.ml | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/rewriter.ml b/src/rewriter.ml index ceae3462..9c4045a4 100644 --- a/src/rewriter.ml +++ b/src/rewriter.ml @@ -177,7 +177,7 @@ let rewrite_exp rewriters nmap (E_aux (exp,(l,annot))) = rewrap (E_case (rewrite exp, (List.map (fun (Pat_aux (Pat_exp(p,e),pannot)) -> - Pat_aux (Pat_exp(p,rewrite e),pannot)) pexps))) + Pat_aux (Pat_exp(rewriters.rewrite_pat rewriters nmap p,rewrite e),pannot)) pexps))) | E_let (letbind,body) -> rewrap (E_let(rewriters.rewrite_let rewriters nmap letbind,rewrite body)) | E_assign (lexp,exp) -> rewrap (E_assign(rewriters.rewrite_lexp rewriters nmap lexp,rewrite exp)) | E_exit e -> rewrap (E_exit (rewrite e)) @@ -266,9 +266,11 @@ let rewrite_let rewriters map (LB_aux(letbind,(l,annot))) = let map = merge_option_maps map (get_map_tannot annot) in match letbind with | LB_val_explicit (typschm, pat,exp) -> - LB_aux(LB_val_explicit (typschm,pat, rewriters.rewrite_exp rewriters map exp),(l,annot)) + LB_aux(LB_val_explicit (typschm,rewriters.rewrite_pat rewriters map pat, + rewriters.rewrite_exp rewriters map exp),(l,annot)) | LB_val_implicit ( pat, exp) -> - LB_aux(LB_val_implicit (pat,rewriters.rewrite_exp rewriters map exp),(l,annot)) + LB_aux(LB_val_implicit (rewriters.rewrite_pat rewriters map pat, + rewriters.rewrite_exp rewriters map exp),(l,annot)) let rewrite_lexp rewriters map (LEXP_aux(lexp,(l,annot))) = let rewrap le = LEXP_aux(le,(l,annot)) in |
