]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/cic_notation/cicNotationPt.ml
* New implementation of localized exceptions
[helm.git] / helm / ocaml / cic_notation / cicNotationPt.ml
index 1dc6349309cc68429a0596ef73af821a976766ad..d0310d0e57e6683e689f68cad961cf6aac08f230 100644 (file)
@@ -30,21 +30,20 @@ type induction_kind = [ `Inductive | `CoInductive ]
 type sort_kind = [ `Prop | `Set | `Type of CicUniv.universe | `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 location = Token.flocation
 let fail floc msg =
-  let (x, y) = loc_of_floc floc in
+  let (x, y) = HExtlib.loc_of_floc floc in
   failwith (Printf.sprintf "Error at characters %d - %d: %s" x y msg)
 
 type href = UriManager.uri
 
+type child_pos = [ `Left | `Right | `Inner ]
+
 type term_attribute =
   [ `Loc of location                  (* source file location *)
   | `IdRef of string                  (* ACic pointer *)
   | `Level of int * Gramext.g_assoc   (* precedence, associativity *)
+  | `ChildPos of child_pos            (* position of l1 pattern variables *)
   | `XmlAttrs of (string option * string * string) list
       (* list of XML attributes: namespace, name, value *)
   | `Raw of string                    (* unparsed version *)