module type T_Mark = sig
.. end
Signature to define what we have to be able to do on marks to
use SlicingMarks.F_SigMarks
type
t
val bottom : t
val is_bottom : t -> bool
val merge : t -> t -> t
val inter_all : t list -> t
val merge_user_marks : t -> t -> t
val missing_input : call:t ->
called:t -> t option
returns the mark that is missing in the call
input (if any)
to be able to call the called function.
val missing_output : call:t ->
called:t -> t option
returns the mark that is missing in called
output (if any)
to be able to call that function for this call
.
val mk_gen_spare : t
generated spare
= the smallest visible mark
val pretty : Format.formatter -> t -> unit