Frama-C API - Make
Functor to build an Error
module for a given phase
.
Parameters
module _ : sig ... end
Signature
Represent either a result of type 'a
or an error with an exception.
exception Typing_error of Options.category option * string
Typing error where the first element is the phase where the error occured and the second element is the error message.
exception Not_yet of Options.category option * string
"Not yet supported" error where the first element is the phase where the error occured and the second element is the error message.
exception Not_memoized of Options.category option
"Not memoized" error with the phase where the error occured.
Print the "not yet supported" message without raising an exception.
Run the closure with the given argument and handle potential errors. Return the provide argument in case of errors.
Run the closure with the given argument and handle potential errors. Return the additional argument in case of errors.
val retrieve_preprocessing : string -> ('a -> 'b result) -> 'a -> (Stdlib.Format.formatter -> 'a -> unit) -> 'b
Retrieve the result of a preprocessing phase, which possibly failed. The string
argument and the formatter are used to display a message in case the preprocessing phase did not compute the required result.
val pp_result : (Stdlib.Format.formatter -> 'a -> unit) -> Stdlib.Format.formatter -> 'a result -> unit
pp_result pp
where pp
is a formatter for 'a
returns a formatter for 'a result
.
val map : ('a -> 'b) -> 'a result -> 'b