O1trace.Plugins
module type Plugin_spec_intf = sig ... end
module type Registered_plugin_spec_intf = sig ... end
module type Plugin_intf = sig ... end
module Register_plugin
(Plugin_spec : Plugin_spec_intf)
() :
Registered_plugin_spec_intf with type state = Plugin_spec.state
val plugins : (module Plugin_intf) Core_kernel.String.Table.t
val plugin_state :
(module Registered_plugin_spec_intf with type state = 'a) ->
Thread.t ->
'a0 Core.Univ_map.data Core.Univ_map.data
val enable_plugin : (module Plugin_intf) -> unit
val disable_plugin : (module Plugin_intf) -> unit
val dispatch : ( (module Plugin_intf) -> unit ) -> unit