Module Pulselib__PulseExecutionDomain
module AbductiveDomain = Pulselib.PulseAbductiveDomain
module LatentIssue = Pulselib.PulseLatentIssue
type 'abductive_domain_t base_t
=
|
ContinueProgram of 'abductive_domain_t
represents the state at the program point
|
ExitProgram of 'abductive_domain_t
represents the state originating at exit/divergence.
|
AbortProgram of AbductiveDomain.summary
represents the state at the program point that caused an error
|
LatentAbortProgram of
{
astate : AbductiveDomain.summary;
latent_issue : LatentIssue.t;
}
this path leads to an error but we don't have conclusive enough data to report it yet
type t
= AbductiveDomain.t base_t
include Absint.AbstractDomain.NoJoin with type t := t
include IStdlib.PrettyPrintable.PrintableType
val pp : IStdlib.PrettyPrintable.F.formatter -> t -> unit
val continue : AbductiveDomain.t -> t
val mk_initial : IR.Procdesc.t -> t
type summary
= AbductiveDomain.summary base_t
val yojson_of_summary : summary -> Ppx_yojson_conv_lib.Yojson.Safe.t
val summary_of_posts : IR.Procdesc.t -> t list -> summary list