Module Vcs.Err

type t = Vcs.Err.t
include module type of Vcs.Err with type t := t

Payload of the exception raised by Vcs functions.

Printing

val sexp_of_t : t -> Sexplib0.Sexp.t

sexp_of_t t allows printing the information contained by t.

val to_string_hum : t -> string

to_string_hum t is a convenience wrapper around t |> sexp_of_t |> Sexp.to_string_hum.

Building

val error_string : string -> t
val create_s : Sexplib0.Sexp.t -> t
val of_exn : exn -> t
val add_context : t -> step:Sexplib0.Sexp.t -> t

Add a step of context into the stack trace contained by the error.

val init : Sexplib0.Sexp.t -> step:Sexplib0.Sexp.t -> t

This is useful if you are starting from an Sexp.t initially with an initial step.

module Private = Vcs.Err.Private
val to_error : t -> Base.Error.t

Inject t into Base.Error.t. This is useful if you'd like to use Vcs inside the Base.Or_error monad.

val of_error : Base.Error.t -> t

Create an error with no initial step.