Module Checkers.ImpurityDomain
type trace=|WrittenTo of Pulselib.PulseTrace.t|Invalid of Pulselib.PulseInvalidation.t * Pulselib.PulseTrace.t
module ModifiedAccess : sig ... endmodule ModifiedVarMap : sig ... endmodule Exited = Absint.AbstractDomain.BooleanOrtype t={modified_params : ModifiedVarMap.t;modified_globals : ModifiedVarMap.t;skipped_calls : Pulselib.PulseSkippedCalls.t;exited : Exited.t;}
val add_to_errlog : nesting:int -> param_source -> IR.Pvar.t -> ModifiedAccess.t -> Absint.Errlog.loc_trace_elem list -> Absint.Errlog.loc_trace_elem listval join : t -> t -> tval get_modified_immutables_opt : IR.Tenv.t -> t -> (ModifiedVarMap.t * ModifiedVarMap.t) option