(* * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. *) open! IStd (** Location in the original source file *) type t = { line: int (** The line number. -1 means "do not know" *) ; col: int (** The column number. -1 means "do not know" *) ; file: SourceFile.t (** The name of the source file *) } [@@deriving compare] val equal : t -> t -> bool val none : SourceFile.t -> t (** Dummy source location for the given file *) val dummy : t (** Dummy location with no source file *) val pp : Format.formatter -> t -> unit (** Pretty print a location. *) val pp_line : Format.formatter -> t -> unit (** print just the line information *) val to_string : t -> string (** String representation of a location. *) val pp_file_pos : Format.formatter -> t -> unit (** Pretty print a file-position of a location *) val pp_range : Format.formatter -> t * t -> unit