PulseAbductiveDomain.StackSafe version of PulseBaseStack
val add : IR.Var.t -> PulseBaseStack.value -> t -> tval fold :
?pre_or_post:[ `Pre | `Post ] ->
(IR.Var.t -> PulseBaseStack.value -> 'a -> 'a) ->
t ->
'a ->
'apre_or_post defaults to `Post
val find_opt :
?pre_or_post:[ `Pre | `Post ] ->
IR.Var.t ->
t ->
PulseBaseStack.value optionval eval :
Pulselib.PulseBasicInterface.ValueHistory.t ->
IR.Var.t ->
t ->
t * Pulselib.PulseBasicInterface.ValueOrigin.treturn the value of the variable in the stack or create a fresh one if needed
val exists : (IR.Var.t -> PulseBaseStack.value -> bool) -> t -> boolval fold_merge :
[ `Pre | `Post ] ->
t ->
t ->
init:'acc ->
f:
('acc ->
IR.Var.t ->
PulseBaseStack.value option ->
PulseBaseStack.value option ->
'acc * PulseBaseStack.value option) ->
'acc * PulseBaseStack.t