Revision 60b76e8fbf4e80a674b87040d9e661a1921933a3 authored by Benjamin Gregoire on 05 September 2019, 09:05:32 UTC, committed by Benjamin Gregoire on 05 September 2019, 09:05:32 UTC
1 parent 2e3a618
ecLocation.mli
(* --------------------------------------------------------------------
* Copyright (c) - 2012--2016 - IMDEA Software Institute
* Copyright (c) - 2012--2018 - Inria
* Copyright (c) - 2012--2018 - Ecole Polytechnique
*
* Distributed under the terms of the CeCILL-C-V1 license
* -------------------------------------------------------------------- *)
(* -------------------------------------------------------------------- *)
open EcUtils
open Lexing
(* -------------------------------------------------------------------- *)
type t = {
loc_fname : string;
loc_start : int * int;
loc_end : int * int;
loc_bchar : int;
loc_echar : int;
}
(* -------------------------------------------------------------------- *)
type 'a mloc = ('a, t) tagged
(* -------------------------------------------------------------------- *)
val _dummy : t
val make : position -> position -> t
val of_lexbuf : lexbuf -> t
val tostring : t -> string
val tostring_raw : ?with_fname:bool -> t -> string
val merge : t -> t -> t
val mergeall : t list -> t
val isdummy : t -> bool
(* -------------------------------------------------------------------- *)
type 'a located = {
pl_loc : t;
pl_desc : 'a;
}
val loc : 'a located -> t
val unloc : 'a located -> 'a
val unlocs : ('a located) list -> 'a list
val mk_loc : t -> 'a -> 'a located
val lmap : ('a -> 'b) -> 'a located -> 'b located
(* -------------------------------------------------------------------- *)
exception LocError of t * exn
val locate_error : t -> exn -> 'a
val set_loc : t -> ('a -> 'b) -> 'a -> 'b
val set_oloc : t option -> ('a -> 'b) -> 'a -> 'b
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...