Module type ApronDomain.AOpsImperative

Imperative in-place environment and transfer functions.

type t
val add_vars_with : t -> GobApron.Var.t list -> unit
val remove_vars_with : t -> GobApron.Var.t list -> unit
val remove_filter_with : t -> (GobApron.Var.t -> bool) -> unit
val keep_vars_with : t -> GobApron.Var.t list -> unit
val keep_filter_with : t -> (GobApron.Var.t -> bool) -> unit
val forget_vars_with : t -> GobApron.Var.t list -> unit
val assign_exp_with : Queries.ask -> t -> GobApron.Var.t -> GoblintCil.exp -> bool Stdlib.Lazy.t -> unit
val assign_exp_parallel_with : Queries.ask -> t -> (GobApron.Var.t * GoblintCil.exp) list -> bool -> unit
val assign_var_with : t -> GobApron.Var.t -> GobApron.Var.t -> unit
val assign_var_parallel_with : t -> (GobApron.Var.t * GobApron.Var.t) list -> unit
val substitute_exp_with : Queries.ask -> t -> GobApron.Var.t -> GoblintCil.exp -> bool Stdlib.Lazy.t -> unit
val substitute_exp_parallel_with : Queries.ask -> t -> (GobApron.Var.t * GoblintCil.exp) list -> bool Stdlib.Lazy.t -> unit
val substitute_var_with : t -> GobApron.Var.t -> GobApron.Var.t -> unit