mirror of
https://github.com/ocaml-tracing/ocaml-trace.git
synced 2026-03-08 03:47:57 -04:00
docs
This commit is contained in:
parent
ba40156f22
commit
6853fa50f3
2 changed files with 10 additions and 1 deletions
|
|
@ -1,3 +1,8 @@
|
||||||
|
(** Events.
|
||||||
|
|
||||||
|
Each callback in a subscriber corresponds to an event, which can be for
|
||||||
|
example queued somewhere or batched for further processing. *)
|
||||||
|
|
||||||
open Trace_core
|
open Trace_core
|
||||||
module Sub = Trace_subscriber
|
module Sub = Trace_subscriber
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,10 @@
|
||||||
|
(** Subscriber that emits events *)
|
||||||
|
|
||||||
open Trace_core
|
open Trace_core
|
||||||
open Event
|
open Event
|
||||||
|
|
||||||
type event_consumer = { on_event: Event.t -> unit } [@@unboxed]
|
type event_consumer = { on_event: Event.t -> unit } [@@unboxed]
|
||||||
(** Callback for events *)
|
(** Callback for events. *)
|
||||||
|
|
||||||
module Callbacks : Sub.Callbacks.S with type st = event_consumer = struct
|
module Callbacks : Sub.Callbacks.S with type st = event_consumer = struct
|
||||||
type st = event_consumer
|
type st = event_consumer
|
||||||
|
|
@ -49,5 +51,7 @@ module Callbacks : Sub.Callbacks.S with type st = event_consumer = struct
|
||||||
self.on_event @@ E_extension_event { tid; time_ns; ext }
|
self.on_event @@ E_extension_event { tid; time_ns; ext }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
(** A subscriber that turns calls into events that are passed to the
|
||||||
|
{! event_consumer} *)
|
||||||
let subscriber (consumer : event_consumer) : Sub.t =
|
let subscriber (consumer : event_consumer) : Sub.t =
|
||||||
Sub.Subscriber.Sub { st = consumer; callbacks = (module Callbacks) }
|
Sub.Subscriber.Sub { st = consumer; callbacks = (module Callbacks) }
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue