X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic_notation%2FcicNotation.ml;h=f6ea55a48582957987ee1af6c77b45a1d8418850;hb=b9af9f1c0de6a1735b492f5c793a87a8fce218cc;hp=87eb9980e04ad34de832e01520c72d34dbe3c18f;hpb=e20f3963028a966fc93ba0d611c4aa8341d20e2c;p=helm.git diff --git a/helm/ocaml/cic_notation/cicNotation.ml b/helm/ocaml/cic_notation/cicNotation.ml index 87eb9980e..f6ea55a48 100644 --- a/helm/ocaml/cic_notation/cicNotation.ml +++ b/helm/ocaml/cic_notation/cicNotation.ml @@ -32,15 +32,23 @@ type notation_id = let process_notation st = match st with - | Notation (loc, l1, associativity, precedence, l2) -> + | Notation (loc, dir, l1, associativity, precedence, l2) -> let rule_id = - CicNotationParser.extend l1 ?precedence ?associativity - (fun env loc -> CicNotationFwd.instantiate_level2 env l2) + if dir <> Some `RightToLeft then + [ RuleId (CicNotationParser.extend l1 ?precedence ?associativity + (fun env loc -> CicNotationFwd.instantiate_level2 env l2)) ] + else + [] in let pp_id = - CicNotationRew.add_pretty_printer ?precedence ?associativity l2 l1 + if dir <> Some `LeftToRight then + [ PrettyPrinterId + (CicNotationRew.add_pretty_printer ?precedence ?associativity + l2 l1) ] + else + [] in - st, [ RuleId rule_id; PrettyPrinterId pp_id ] + st, rule_id @ pp_id | Interpretation (loc, dsc, l2, l3) -> let interp_id = CicNotationRew.add_interpretation dsc l2 l3 in st, [ InterpretationId interp_id ]