Functor Operational_inputs.Computer

module Computer: 
functor (Fenv : Dataflows.FUNCTION_ENV) ->
functor (X : sig
val _version : string
val _kf : Cil_types.kernel_function
val stmt_state : Cil_types.stmt -> Db.Value.state
val at_call : Cil_types.stmt -> Cil_types.kernel_function -> Inout_type.t
end) -> sig .. end
Parameters:
Fenv : Dataflows.FUNCTION_ENV
X : sig val _version: string (* Debug: Callwise or functionwise *) val _kf: kernel_function (* Debug: Function being analyzed *) val stmt_state: stmt -> Db.Value.state (* Memory state at the given stmt *) val at_call: stmt -> kernel_function -> Inout_type.t (* Results of the analysis for the given call. Must not contain locals or formals *) end

val non_terminating_inputs : Locations.Zone.t Pervasives.ref
val non_terminating_outputs : Locations.Zone.t Pervasives.ref
val store_non_terminating_inputs : Locations.Zone.t -> unit
val store_non_terminating_outputs : Locations.Zone.t -> unit
val store_non_terminating_subcall : Locations.Zone.t -> Operational_inputs.t -> unit
val catenate : Operational_inputs.compute_t ->
Operational_inputs.compute_t -> Operational_inputs.compute_t
type t = Operational_inputs.compute_t 
val pretty : Format.formatter -> Operational_inputs.compute_t -> unit
val bottom : Operational_inputs.compute_t
val join_and_is_included : Operational_inputs.compute_t ->
Operational_inputs.compute_t -> Operational_inputs.compute_t * bool
val join : Operational_inputs.compute_t ->
Operational_inputs.compute_t -> Operational_inputs.compute_t
val is_included : Operational_inputs.compute_t -> Operational_inputs.compute_t -> bool
val transfer_exp : Cil_types.stmt ->
Cil_types.exp -> Operational_inputs.compute_t -> Operational_inputs.compute_t
val add_out : Db.Value.state ->
Cil_types.lval ->
Locations.Zone.t ->
Operational_inputs.compute_t -> Operational_inputs.compute_t
val transfer_call : Cil_types.stmt ->
Cil_types.lval option ->
Cil_types.exp ->
Cil_types.exp list ->
'a -> Operational_inputs.compute_t -> Operational_inputs.compute_t
val transfer_instr : Cil_types.stmt ->
Cil_types.instr ->
t -> t
val transfer_guard : Cil_types.stmt ->
Cil_types.exp ->
Operational_inputs.compute_t ->
Operational_inputs.compute_t * Operational_inputs.compute_t
val return_data : t Pervasives.ref
val transfer_stmt : Cil_types.stmt ->
t ->
(Cil_types.stmt * t) list
val transfer_stmt : Cil_types.stmt ->
t ->
(Cil_types.stmt * t) list
val init : (Cil_types.stmt * Operational_inputs.compute_t) list
val end_dataflow : unit -> t