Module Absint.AnalysisCallbacks

Analysis API

val html_debug_new_node_session : ?kind:[ `ComputePre | `ExecNode | `ExecNodeNarrowing | `WTO ] -> pp_name:(Stdlib.Format.formatter -> unit) -> IR.Procdesc.Node.t -> f:(unit -> 'a) -> 'a

set to NodePrinter.with_session

Callbacks management

type callbacks = {
  1. html_debug_new_node_session_f : 'a. ?kind: [ `ComputePre | `ExecNode | `ExecNodeNarrowing | `WTO ] -> pp_name:(Stdlib.Format.formatter -> unit) -> IR.Procdesc.Node.t -> f:(unit -> 'a) -> 'a;
}

These callbacks are used to break the dependency cycles between some modules. Specifically, we put here functions needed for the analysis that depend on modules higher up the dependency graph than this library but whose type does not.

val set_callbacks : callbacks -> unit

make sure this is called before starting any actual analysis