Module Backend.Payloads

include sig ... end
type t = {
  1. annot_map : Checkers.AnnotationReachabilityDomain.t IStdlib.IStd.Lazy.t option;
  2. biabduction : Biabduction.BiabductionSummary.t IStdlib.IStd.Lazy.t option;
  3. buffer_overrun_analysis : BO.BufferOverrunAnalysisSummary.t IStdlib.IStd.Lazy.t option;
  4. buffer_overrun_checker : BO.BufferOverrunCheckerSummary.t IStdlib.IStd.Lazy.t option;
  5. config_impact_analysis : Costlib.ConfigImpactAnalysis.Summary.t IStdlib.IStd.Lazy.t option;
  6. cost : Costlib.CostDomain.summary IStdlib.IStd.Lazy.t option;
  7. disjunctive_demo : Checkers.DisjunctiveDemo.domain IStdlib.IStd.Lazy.t option;
  8. lab_resource_leaks : Labs.ResourceLeakDomain.summary IStdlib.IStd.Lazy.t option;
  9. litho_required_props : Checkers.LithoDomain.summary IStdlib.IStd.Lazy.t option;
  10. pulse : Pulselib.PulseSummary.t IStdlib.IStd.Lazy.t option;
  11. purity : Checkers.PurityDomain.summary IStdlib.IStd.Lazy.t option;
  12. racerd : Concurrency.RacerDDomain.summary IStdlib.IStd.Lazy.t option;
  13. scope_leakage : Checkers.ScopeLeakage.Summary.t IStdlib.IStd.Lazy.t option;
  14. siof : Checkers.SiofDomain.Summary.t IStdlib.IStd.Lazy.t option;
  15. lineage : Checkers.Lineage.Summary.t IStdlib.IStd.Lazy.t option;
  16. lineage_shape : Checkers.LineageShape.Summary.t IStdlib.IStd.Lazy.t option;
  17. starvation : Concurrency.StarvationDomain.summary IStdlib.IStd.Lazy.t option;
}

Analysis summaries for inter-procedural analyses.

When retrieving already-computed summaries, each entry is lazily loaded from the analysis database to avoid loading and deserializing payloads unnecessarily, which can be overly expensive and memory-hungry.

This type has to be in sync with PayloadId.t

val starvation : t -> Concurrency.StarvationDomain.summary IStdlib.IStd.Lazy.t option
val lineage_shape : t -> Checkers.LineageShape.Summary.t IStdlib.IStd.Lazy.t option
val lineage : t -> Checkers.Lineage.Summary.t IStdlib.IStd.Lazy.t option
val siof : t -> Checkers.SiofDomain.Summary.t IStdlib.IStd.Lazy.t option
val scope_leakage : t -> Checkers.ScopeLeakage.Summary.t IStdlib.IStd.Lazy.t option
val racerd : t -> Concurrency.RacerDDomain.summary IStdlib.IStd.Lazy.t option
val purity : t -> Checkers.PurityDomain.summary IStdlib.IStd.Lazy.t option
val pulse : t -> Pulselib.PulseSummary.t IStdlib.IStd.Lazy.t option
val litho_required_props : t -> Checkers.LithoDomain.summary IStdlib.IStd.Lazy.t option
val lab_resource_leaks : t -> Labs.ResourceLeakDomain.summary IStdlib.IStd.Lazy.t option
val disjunctive_demo : t -> Checkers.DisjunctiveDemo.domain IStdlib.IStd.Lazy.t option
val cost : t -> Costlib.CostDomain.summary IStdlib.IStd.Lazy.t option
val config_impact_analysis : t -> Costlib.ConfigImpactAnalysis.Summary.t IStdlib.IStd.Lazy.t option
val buffer_overrun_checker : t -> BO.BufferOverrunCheckerSummary.t IStdlib.IStd.Lazy.t option
val buffer_overrun_analysis : t -> BO.BufferOverrunAnalysisSummary.t IStdlib.IStd.Lazy.t option
val biabduction : t -> Biabduction.BiabductionSummary.t IStdlib.IStd.Lazy.t option
val annot_map : t -> Checkers.AnnotationReachabilityDomain.t IStdlib.IStd.Lazy.t option
module Fields : sig ... end
val yojson_of_t : t -> Ppx_yojson_conv_lib.Yojson.Safe.t
val pp : IStdlib.Pp.env -> IR.Procname.t -> Stdlib.Format.formatter -> t -> unit
val empty : t
val has_payload : IBase.PayloadId.t -> t -> bool
val analysis_request_of_field : (_, _) IStdlib.IStd.Field.t -> IBase.AnalysisRequest.t
module SQLite : sig ... end