[sledge] Update loc

Reviewed By: mbouaziz

Differential Revision: D9846744

fbshipit-source-id: b72291e5b
master
Josh Berdine 6 years ago committed by Facebook Github Bot
parent 392f596b02
commit 2b53e53504

@ -8,23 +8,23 @@
(** Source code debug locations *) (** Source code debug locations *)
type t = {dir: string; file: string; line: int; col: int} type t = {dir: string; file: string; line: int; col: int}
[@@deriving compare, sexp] [@@deriving compare, hash, sexp]
let none = {dir= ""; file= ""; line= 0; col= 0} let none = {dir= ""; file= ""; line= 0; col= 0}
let is_none loc = compare loc none = 0
let mk ?(dir = none.dir) ?(file = none.file) ?(col = none.col) ~line = let mk ?(dir = none.dir) ?(file = none.file) ?(col = none.col) ~line =
{dir; file; line; col} {dir; file; line; col}
let pp fs {dir; file; line; col} =
let fmt ff {dir; file; line; col} = Format.pp_print_string fs dir ;
Format.pp_print_string ff dir ;
if not (String.is_empty dir) then if not (String.is_empty dir) then
Format.pp_print_string ff Filename.dir_sep ; Format.pp_print_string fs Filename.dir_sep ;
Format.pp_print_string ff file ; Format.pp_print_string fs file ;
if not (String.is_empty file) then Format.pp_print_char ff ':' ; if not (String.is_empty file) then Format.pp_print_char fs ':' ;
if line > 0 then ( if line > 0 then (
Format.pp_print_int ff line ; Format.pp_print_int fs line ;
Format.pp_print_char ff ':' ) ; Format.pp_print_char fs ':' ) ;
if col > 0 then ( if col > 0 then (
Format.pp_print_int ff col ; Format.pp_print_int fs col ;
Format.pp_print_char ff ':' ) Format.pp_print_char fs ':' )

@ -8,15 +8,9 @@
(** Source code debug locations *) (** Source code debug locations *)
type t = {dir: string; file: string; line: int; col: int} type t = {dir: string; file: string; line: int; col: int}
[@@deriving compare, hash, sexp]
val compare : t -> t -> int val pp : t pp
val t_of_sexp : Sexp.t -> t
val sexp_of_t : t -> Sexp.t
val fmt : t fmt
val none : t val none : t
val is_none : t -> bool
val mk : ?dir:string -> ?file:string -> ?col:int -> line:int -> t val mk : ?dir:string -> ?file:string -> ?col:int -> line:int -> t

Loading…
Cancel
Save