module Slice:sig..end
Function slice.
type t
Abstract data type for function slice.
val dyn_t : t Type.tFor dynamic type checking and journalization.
val create : Cil_types.kernel_function -> tUsed to get an empty slice (nothing selected) related to a function.
val remove : t -> unitRemove the slice from the project. The slice shouldn't be called.
val remove_uncalled : unit -> unitRemove the uncalled slice from the project.
val get_all : Cil_types.kernel_function -> t listGet all slices related to a function.
val get_function : t -> Cil_types.kernel_functionTo get the function related to a slice
val get_callers : t -> t listGet the slices having direct calls to a slice.
val get_called_slice : t -> Cil_types.stmt -> t optionTo get the slice directly called by the statement of a slice. Returns None when the statement mark is bottom, or else the statement isn't a call or else the statement is a call to one or several (via pointer) source functions.
val get_called_funcs : t -> Cil_types.stmt -> Cil_types.kernel_function listTo get the source functions called by the statement of a slice. Returns an empty list when the statement mark is bottom, or else the statement isn't a call or else the statement is a call to a function slice.
val get_mark_from_stmt : t -> Cil_types.stmt -> Slicing.Api.Mark.tGet the mark value of a statement.
val get_mark_from_label : t ->
Cil_types.stmt -> Cil_types.label -> Slicing.Api.Mark.tGet the mark value of a label.
val get_mark_from_local_var : t -> Cil_types.varinfo -> Slicing.Api.Mark.tGet the mark value of local variable.
val get_mark_from_formal : t -> Cil_types.varinfo -> Slicing.Api.Mark.tGet the mark from the formal of a function.
val get_user_mark_from_inputs : t -> Slicing.Api.Mark.tGet a mark that is the merged user inputs marks of the slice
val get_num_id : t -> int
val from_num_id : Cil_types.kernel_function -> int -> t
val pretty : Stdlib.Format.formatter -> t -> unitMay be used for debugging... Pretty print slice information.