Ppxlib.Location
Overrides the Location module of OCaml
There are less functions in this module. However the API should be more stable than the Location module of OCaml.
val in_file : string -> t
Return an empty ghost range located in a given file.
Set the pos_fname
both in loc_start
and loc_end
. Leave the rest as is.
val none : t
An arbitrary value of type t
; describes an empty ghost range.
Set the file name and line number of the lexbuf
to be the start of the named file.
val raise_errorf :
?loc:t ->
( 'a, Ppxlib__.Import.Caml.Format.formatter, unit, 'b ) Stdlib.format4 ->
'a
Raise a located error. Should be avoided as much as possible, in favor of error_extensionf
.
val of_lexbuf : Stdlib.Lexing.lexbuf -> t
Return the location corresponding to the last matched regular expression
Report an exception on the given formatter
val print : Ppxlib__.Import.Caml.Format.formatter -> t -> unit
Prints File "...", line ..., characters ...-...:
module Error : sig ... end
val error_extensionf :
loc:t ->
( 'a,
Stdlib.Format.formatter,
unit,
string Astlib.Location.loc * Astlib.Ast_412.Parsetree.payload )
Stdlib.format4 ->
'a
Returns an error extension node. When encountered in the AST, the compiler recognizes it and displays the error properly.
exception Error of Error.t