Module Api.Select

module Select: sig .. end

Selection



type t = SlicingTypes.sl_select 
val dyn_t : SlicingTypes.Sl_select.t Type.t
type set = SlicingCmds.set 
module S: Cil_datatype.Varinfo.Map.Make(SlicingTypes.Fct_user_crit)
val dyn_set : S.t Type.t
val empty_selects : S.t
val select_stmt : S.t ->
spare:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt : S.t ->
spare:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt : S.t ->
spare:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_ctrl : S.t ->
spare:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_ctrl : S.t ->
spare:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_ctrl : S.t ->
spare:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_lval_rw : S.t ->
SlicingTypes.Sl_mark.t ->
rd:Datatype.String.Set.t ->
wr:Datatype.String.Set.t ->
Cil_datatype.Stmt.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_lval_rw : S.t ->
SlicingTypes.Sl_mark.t ->
rd:Datatype.String.Set.t ->
wr:Datatype.String.Set.t ->
Cil_datatype.Stmt.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_lval_rw : S.t ->
SlicingTypes.Sl_mark.t ->
rd:Datatype.String.Set.t ->
wr:Datatype.String.Set.t ->
Cil_datatype.Stmt.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_lval : S.t ->
SlicingTypes.Sl_mark.t ->
Datatype.String.Set.t ->
before:bool ->
Cil_datatype.Stmt.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_lval : S.t ->
SlicingTypes.Sl_mark.t ->
Datatype.String.Set.t ->
before:bool ->
Cil_datatype.Stmt.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_lval : S.t ->
SlicingTypes.Sl_mark.t ->
Datatype.String.Set.t ->
before:bool ->
Cil_datatype.Stmt.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_annots : S.t ->
SlicingTypes.Sl_mark.t ->
spare:bool ->
threat:bool ->
user_assert:bool ->
slicing_pragma:bool ->
loop_inv:bool ->
loop_var:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_annots : S.t ->
SlicingTypes.Sl_mark.t ->
spare:bool ->
threat:bool ->
user_assert:bool ->
slicing_pragma:bool ->
loop_inv:bool ->
loop_var:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_stmt_annots : S.t ->
SlicingTypes.Sl_mark.t ->
spare:bool ->
threat:bool ->
user_assert:bool ->
slicing_pragma:bool ->
loop_inv:bool ->
loop_var:bool -> Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_func_lval : S.t ->
SlicingTypes.Sl_mark.t ->
Datatype.String.Set.t -> Kernel_function.t -> S.t
val select_func_lval_rw : S.t ->
SlicingTypes.Sl_mark.t ->
rd:Datatype.String.Set.t ->
wr:Datatype.String.Set.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_func_lval_rw : S.t ->
SlicingTypes.Sl_mark.t ->
rd:Datatype.String.Set.t ->
wr:Datatype.String.Set.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_func_lval_rw : S.t ->
SlicingTypes.Sl_mark.t ->
rd:Datatype.String.Set.t ->
wr:Datatype.String.Set.t ->
eval:Cil_datatype.Stmt.t -> Kernel_function.t -> S.t
val select_func_return : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_return : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_return : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_calls_to : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_calls_to : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_calls_to : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_calls_into : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_calls_into : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_calls_into : S.t -> spare:bool -> Kernel_function.t -> S.t
val select_func_annots : S.t ->
SlicingTypes.Sl_mark.t ->
spare:bool ->
threat:bool ->
user_assert:bool ->
slicing_pragma:bool ->
loop_inv:bool -> loop_var:bool -> Kernel_function.t -> S.t
val select_func_annots : S.t ->
SlicingTypes.Sl_mark.t ->
spare:bool ->
threat:bool ->
user_assert:bool ->
slicing_pragma:bool ->
loop_inv:bool -> loop_var:bool -> Kernel_function.t -> S.t
val select_func_annots : S.t ->
SlicingTypes.Sl_mark.t ->
spare:bool ->
threat:bool ->
user_assert:bool ->
slicing_pragma:bool ->
loop_inv:bool -> loop_var:bool -> Kernel_function.t -> S.t
val select_func_zone : SlicingCmds.set ->
SlicingTypes.sl_mark ->
Locations.Zone.t -> Cil_types.kernel_function -> SlicingCmds.set
val select_stmt_term : SlicingCmds.set ->
SlicingTypes.sl_mark ->
Cil_types.term ->
Cil_types.stmt -> Cil_types.kernel_function -> SlicingCmds.set
val select_stmt_pred : SlicingCmds.set ->
SlicingTypes.sl_mark ->
Cil_types.predicate ->
Cil_types.stmt -> Cil_types.kernel_function -> SlicingCmds.set
val select_stmt_annot : SlicingCmds.set ->
SlicingTypes.sl_mark ->
spare:bool ->
Cil_types.code_annotation ->
Cil_types.stmt -> Cil_types.kernel_function -> SlicingCmds.set
val select_stmt_zone : SlicingCmds.set ->
SlicingTypes.sl_mark ->
Locations.Zone.t ->
before:bool -> Cil_types.stmt -> Cil_types.kernel_function -> SlicingCmds.set
val select_pdg_nodes : SlicingCmds.set ->
SlicingTypes.sl_mark ->
PdgTypes.Node.t list -> Cil_types.kernel_function -> SlicingCmds.set
val get_function : SlicingTypes.sl_select -> Cil_types.kernel_function
val merge_internal : Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val add_to_selects_internal : Cil_datatype.Varinfo.Map.key * SlicingInternals.fct_user_crit ->
SlicingInternals.fct_user_crit Cil_datatype.Varinfo.Map.t ->
SlicingInternals.fct_user_crit Cil_datatype.Varinfo.Map.t
val iter_selects_internal : (Cil_datatype.Varinfo.Map.key * 'a -> unit) ->
'a Cil_datatype.Varinfo.Map.t -> unit
val fold_selects_internal : ('a -> Cil_datatype.Varinfo.Map.key * 'b -> 'a) ->
'a -> 'b Cil_datatype.Varinfo.Map.t -> 'a
val select_stmt_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Cil_types.stmt ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_label_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Cil_types.logic_label ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_min_call_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Cil_types.stmt ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_stmt_zone_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Cil_types.stmt ->
before:bool ->
Locations.Zone.t ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_zone_at_entry_point_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Locations.Zone.t ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_zone_at_end_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Locations.Zone.t ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_modified_output_zone_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Locations.Zone.t ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_stmt_ctrl_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Cil_types.stmt -> Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_entry_point_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_return_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_decl_var_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
Cil_types.varinfo ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val select_pdg_nodes_internal : Kernel_function.t ->
?select:Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit ->
PdgTypes.Node.t list ->
SlicingTypes.sl_mark ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit
val pretty : Format.formatter ->
Cil_datatype.Varinfo.t * SlicingInternals.fct_user_crit -> unit