Frama-C:
Plug-ins:
Libraries:

Frama-C API - SlicingMarks

val bottom_mark : SlicingTypes.sl_mark
val mk_user_mark : data:bool -> addr:bool -> ctrl:bool -> SlicingTypes.sl_mark
val mk_gen_spare : SlicingTypes.sl_mark

generated spare = the smallest visible mark

val mk_user_spare : SlicingTypes.sl_mark
val is_bottom_mark : SlicingTypes.sl_mark -> bool
val is_top_mark : SlicingTypes.sl_mark -> bool
val is_spare_mark : SlicingTypes.sl_mark -> bool
val is_ctrl_mark : SlicingTypes.sl_mark -> bool
val is_addr_mark : SlicingTypes.sl_mark -> bool
val is_data_mark : SlicingTypes.sl_mark -> bool
val merge_marks : SlicingTypes.sl_mark list -> SlicingTypes.sl_mark
val inter_marks : SlicingTypes.sl_mark list -> SlicingTypes.sl_mark

combine_marks add a new information to the old value.

  • returns

    (new_mark, is_new) where is_new=true if the new mark is not included in the old one.

val compare_marks : SlicingTypes.sl_mark -> SlicingTypes.sl_mark -> int
val mark_to_string : SlicingTypes.sl_mark -> string
val pretty_mark : Stdlib.Format.formatter -> SlicingTypes.sl_mark -> unit
val missing_input_mark : call:SlicingTypes.sl_mark -> called:SlicingTypes.sl_mark -> SlicingTypes.sl_mark option
val missing_output_mark : call:SlicingTypes.sl_mark -> called:SlicingTypes.sl_mark -> SlicingTypes.sl_mark option
val empty_sig : sig_marks
val get_input_mark : sig_marks -> int -> SlicingTypes.sl_mark
val merge_inputs_m1_mark : sig_marks -> SlicingTypes.sl_mark
val get_in_ctrl_mark : sig_marks -> SlicingTypes.sl_mark
val something_visible : sig_marks -> bool
val some_visible_out : sig_marks -> bool
val is_topin_visible : sig_marks -> bool
val get_marked_out_zone : sig_marks -> bool * Frama_c_kernel.Locations.Zone.t
val pretty_sig : Stdlib.Format.formatter -> sig_marks -> unit