Module Context


module Context: sig .. end


type compute_t = {
   over_inputs : Locations.Zone.t;
   under_outputs : Locations.Zone.t;
}
val empty : compute_t
val non_terminating : compute_t
val call_stack : Kernel_function.t Stack.t
val find_deps_no_transitivity : Cil_types.kinstr -> Cil_types.exp -> Locations.Zone.t
module Computer: 
functor (REACH : sig
val stmt_can_reach : Cil_types.stmt -> Cil_types.stmt -> bool
end) -> sig .. end
val get_using_prototype : Db_types.kernel_function -> Inout_type.t
val compute_internal_using_prototype : Db_types.kernel_function -> Inout_type.t
val compute_internal_using_cfg : Kernel_function.t -> Inout_type.t
module Internals: Kf_state.Context(sig
val name : string
val dependencies : Project.Computation.t list
end)
val get_internal : Kernel_function.t -> Internals.data
val get_external_using_prototype : Db_types.kernel_function -> Inout_type.t
val externalize : Db_types.cil_function -> Locations.Zone.t -> Locations.Zone.t
module Externals: Kf_state.Context(sig
val name : string
val dependencies : Project.Computation.t list
end)
val get_external : Kernel_function.t -> Externals.data
val compute_external : Kernel_function.t -> unit
val pretty_internal : Format.formatter -> Kernel_function.t -> unit
val pretty_external : Format.formatter -> Kernel_function.t -> unit