X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic_notation%2FcicNotationPt.ml;h=b8fdcfac667e5bf1285d5e130ff270ae9f71b83c;hb=7f72a2bf9a6f79c58048c594dc390265365face8;hp=3d6242e962bb705e72ac7f24d557427827c0f1f9;hpb=2e41c32bf536719437749de627c7e034f5852f83;p=helm.git diff --git a/helm/ocaml/cic_notation/cicNotationPt.ml b/helm/ocaml/cic_notation/cicNotationPt.ml index 3d6242e96..b8fdcfac6 100644 --- a/helm/ocaml/cic_notation/cicNotationPt.ml +++ b/helm/ocaml/cic_notation/cicNotationPt.ml @@ -31,6 +31,11 @@ type sort_kind = [ `Prop | `Set | `Type | `CProp ] type fold_kind = [ `Left | `Right ] type location = Lexing.position * Lexing.position +(* cut and past from CicAst.loc_of_floc *) +let loc_of_floc = function + | { Lexing.pos_cnum = loc_begin }, { Lexing.pos_cnum = loc_end } -> + (loc_begin, loc_end) + type term_attribute = [ `Loc of location (* source file location *) @@ -76,7 +81,9 @@ type term = | Magic of magic_term | Variable of pattern_variable -and capture_variable = Cic.name * term option (* name, type *) + (* name, type. First component must be Ident or Variable (FreshVar _) *) +and capture_variable = term * term option + and meta_subst = term option and subst = string * term and case_pattern = string * capture_variable list @@ -130,19 +137,10 @@ type cic_appl_pattern = | ArgPattern of argument_pattern | ApplPattern of cic_appl_pattern list -type value = - | TermValue of term - | StringValue of string - | NumValue of string - | OptValue of value option - | ListValue of value list - -type value_type = - | TermType - | StringType - | NumType - | OptType of value_type - | ListType of value_type - -type declaration = string * value_type +type phrase = (* TODO hackish: replace with TacticAst.statement or similar *) + | Print of term + | Notation of term * Gramext.g_assoc option * int option * term + (* level 1 pattern, associativity, precedence, level 2 pattern *) + | Interpretation of (string * argument_pattern list) * cic_appl_pattern + | Render of UriManager.uri