From 6e740976c7f699b9029881b168460f2e84336bd1 Mon Sep 17 00:00:00 2001 From: c-cube Date: Fri, 19 Jan 2024 14:59:43 +0000 Subject: [PATCH] deploy: fe2f9d33ca2837a85970bef35d81a7bad2594b8e --- index.html | 8 +- .../fonts}/KaTeX_AMS-Regular.woff2 | Bin .../fonts}/KaTeX_Caligraphic-Bold.woff2 | Bin .../fonts}/KaTeX_Caligraphic-Regular.woff2 | Bin .../fonts}/KaTeX_Fraktur-Bold.woff2 | Bin .../fonts}/KaTeX_Fraktur-Regular.woff2 | Bin .../fonts}/KaTeX_Main-Bold.woff2 | Bin .../fonts}/KaTeX_Main-BoldItalic.woff2 | Bin .../fonts}/KaTeX_Main-Italic.woff2 | Bin .../fonts}/KaTeX_Main-Regular.woff2 | Bin .../fonts}/KaTeX_Math-BoldItalic.woff2 | Bin .../fonts}/KaTeX_Math-Italic.woff2 | Bin .../fonts}/KaTeX_SansSerif-Bold.woff2 | Bin .../fonts}/KaTeX_SansSerif-Italic.woff2 | Bin .../fonts}/KaTeX_SansSerif-Regular.woff2 | Bin .../fonts}/KaTeX_Script-Regular.woff2 | Bin .../fonts}/KaTeX_Size1-Regular.woff2 | Bin .../fonts}/KaTeX_Size2-Regular.woff2 | Bin .../fonts}/KaTeX_Size3-Regular.woff2 | Bin .../fonts}/KaTeX_Size4-Regular.woff2 | Bin .../fonts}/KaTeX_Typewriter-Regular.woff2 | Bin .../highlight.pack.js | 0 katex.min.css => odoc.support/katex.min.css | 0 katex.min.js => odoc.support/katex.min.js | 0 odoc.css => odoc.support/odoc.css | 0 ppx_trace/Ppx_trace/index.html | 14 +++ ppx_trace/index.html | 2 + trace-fuchsia/Trace_fuchsia/index.html | 5 + .../Trace_fuchsia_write/Argument/index.html | 19 ++++ .../Trace_fuchsia_write/Arguments/index.html | 35 +++++++ .../Trace_fuchsia_write/Buf/index.html | 2 + .../Buf_pool/List_with_len/index.html | 2 + .../Trace_fuchsia_write/Buf_pool/index.html | 2 + .../Event/Async_begin/index.html | 29 ++++++ .../Event/Async_end/index.html | 29 ++++++ .../Event/Counter/index.html | 28 ++++++ .../Event/Duration_begin/index.html | 28 ++++++ .../Event/Duration_complete/index.html | 29 ++++++ .../Event/Duration_end/index.html | 28 ++++++ .../Event/Instant/index.html | 28 ++++++ .../Trace_fuchsia_write/Event/index.html | 2 + .../Trace_fuchsia_write/I64/index.html | 2 + .../Kernel_object/index.html | 27 +++++ .../Metadata/Initialization_record/index.html | 2 + .../Metadata/Magic_record/index.html | 2 + .../Metadata/Provider_info/index.html | 2 + .../Metadata/Provider_section/index.html | 2 + .../Metadata/Trace_info/index.html | 2 + .../Trace_fuchsia_write/Metadata/index.html | 2 + .../Trace_fuchsia_write/Output/index.html | 2 + .../Trace_fuchsia_write/Str_ref/index.html | 2 + .../Thread_record/index.html | 2 + .../Trace_fuchsia_write/Thread_ref/index.html | 2 + .../Trace_fuchsia_write/Util/index.html | 2 + trace-fuchsia/Trace_fuchsia_write/index.html | 2 + trace-fuchsia/index.html | 2 + trace-tef/Trace_tef/.dummy | 0 trace-tef/Trace_tef/index.html | 4 +- trace-tef/index.html | 2 +- trace/Trace/.dummy | 0 trace/Trace/Collector/index.html | 2 - .../Trace/Collector/module-type-S/index.html | 14 --- trace/Trace/index.html | 44 +++++++-- trace/Trace_core/.dummy | 0 trace/Trace_core/Collector/index.html | 2 +- .../Collector/module-type-S/index.html | 93 ++++++++++++++++-- trace/Trace_core/Meta_map/Key/index.html | 2 + trace/Trace_core/Meta_map/index.html | 2 + trace/Trace_core/index.html | 44 +++++++-- trace/Trace_private_util/B_queue/index.html | 2 + .../Trace_private_util/Domain_util/index.html | 2 + trace/Trace_private_util/Mpsc_bag/index.html | 2 + trace/Trace_private_util/index.html | 2 + trace/index.html | 2 +- 74 files changed, 516 insertions(+), 48 deletions(-) rename {fonts => odoc.support/fonts}/KaTeX_AMS-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Caligraphic-Bold.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Caligraphic-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Fraktur-Bold.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Fraktur-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Main-Bold.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Main-BoldItalic.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Main-Italic.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Main-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Math-BoldItalic.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Math-Italic.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_SansSerif-Bold.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_SansSerif-Italic.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_SansSerif-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Script-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Size1-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Size2-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Size3-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Size4-Regular.woff2 (100%) rename {fonts => odoc.support/fonts}/KaTeX_Typewriter-Regular.woff2 (100%) rename highlight.pack.js => odoc.support/highlight.pack.js (100%) rename katex.min.css => odoc.support/katex.min.css (100%) rename katex.min.js => odoc.support/katex.min.js (100%) rename odoc.css => odoc.support/odoc.css (100%) create mode 100644 ppx_trace/Ppx_trace/index.html create mode 100644 ppx_trace/index.html create mode 100644 trace-fuchsia/Trace_fuchsia/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Argument/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Arguments/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Buf/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Buf_pool/List_with_len/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Buf_pool/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Event/Async_begin/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Event/Async_end/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Event/Counter/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Event/Duration_begin/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Event/Duration_complete/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Event/Duration_end/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Event/Instant/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Event/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/I64/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Kernel_object/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Metadata/Initialization_record/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Metadata/Magic_record/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Metadata/Provider_info/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Metadata/Provider_section/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Metadata/Trace_info/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Metadata/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Output/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Str_ref/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Thread_record/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Thread_ref/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/Util/index.html create mode 100644 trace-fuchsia/Trace_fuchsia_write/index.html create mode 100644 trace-fuchsia/index.html delete mode 100644 trace-tef/Trace_tef/.dummy delete mode 100644 trace/Trace/.dummy delete mode 100644 trace/Trace/Collector/index.html delete mode 100644 trace/Trace/Collector/module-type-S/index.html delete mode 100644 trace/Trace_core/.dummy create mode 100644 trace/Trace_core/Meta_map/Key/index.html create mode 100644 trace/Trace_core/Meta_map/index.html create mode 100644 trace/Trace_private_util/B_queue/index.html create mode 100644 trace/Trace_private_util/Domain_util/index.html create mode 100644 trace/Trace_private_util/Mpsc_bag/index.html create mode 100644 trace/Trace_private_util/index.html diff --git a/index.html b/index.html index b6275f7..2d23628 100644 --- a/index.html +++ b/index.html @@ -2,7 +2,7 @@ index - + @@ -11,8 +11,10 @@

OCaml package documentation

    -
  1. trace 0.2
  2. -
  3. trace-tef 0.2
  4. +
  5. ppx_trace 0.6
  6. +
  7. trace 0.6
  8. +
  9. trace-fuchsia 0.6
  10. +
  11. trace-tef 0.6
diff --git a/fonts/KaTeX_AMS-Regular.woff2 b/odoc.support/fonts/KaTeX_AMS-Regular.woff2 similarity index 100% rename from fonts/KaTeX_AMS-Regular.woff2 rename to odoc.support/fonts/KaTeX_AMS-Regular.woff2 diff --git a/fonts/KaTeX_Caligraphic-Bold.woff2 b/odoc.support/fonts/KaTeX_Caligraphic-Bold.woff2 similarity index 100% rename from fonts/KaTeX_Caligraphic-Bold.woff2 rename to odoc.support/fonts/KaTeX_Caligraphic-Bold.woff2 diff --git a/fonts/KaTeX_Caligraphic-Regular.woff2 b/odoc.support/fonts/KaTeX_Caligraphic-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Caligraphic-Regular.woff2 rename to odoc.support/fonts/KaTeX_Caligraphic-Regular.woff2 diff --git a/fonts/KaTeX_Fraktur-Bold.woff2 b/odoc.support/fonts/KaTeX_Fraktur-Bold.woff2 similarity index 100% rename from fonts/KaTeX_Fraktur-Bold.woff2 rename to odoc.support/fonts/KaTeX_Fraktur-Bold.woff2 diff --git a/fonts/KaTeX_Fraktur-Regular.woff2 b/odoc.support/fonts/KaTeX_Fraktur-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Fraktur-Regular.woff2 rename to odoc.support/fonts/KaTeX_Fraktur-Regular.woff2 diff --git a/fonts/KaTeX_Main-Bold.woff2 b/odoc.support/fonts/KaTeX_Main-Bold.woff2 similarity index 100% rename from fonts/KaTeX_Main-Bold.woff2 rename to odoc.support/fonts/KaTeX_Main-Bold.woff2 diff --git a/fonts/KaTeX_Main-BoldItalic.woff2 b/odoc.support/fonts/KaTeX_Main-BoldItalic.woff2 similarity index 100% rename from fonts/KaTeX_Main-BoldItalic.woff2 rename to odoc.support/fonts/KaTeX_Main-BoldItalic.woff2 diff --git a/fonts/KaTeX_Main-Italic.woff2 b/odoc.support/fonts/KaTeX_Main-Italic.woff2 similarity index 100% rename from fonts/KaTeX_Main-Italic.woff2 rename to odoc.support/fonts/KaTeX_Main-Italic.woff2 diff --git a/fonts/KaTeX_Main-Regular.woff2 b/odoc.support/fonts/KaTeX_Main-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Main-Regular.woff2 rename to odoc.support/fonts/KaTeX_Main-Regular.woff2 diff --git a/fonts/KaTeX_Math-BoldItalic.woff2 b/odoc.support/fonts/KaTeX_Math-BoldItalic.woff2 similarity index 100% rename from fonts/KaTeX_Math-BoldItalic.woff2 rename to odoc.support/fonts/KaTeX_Math-BoldItalic.woff2 diff --git a/fonts/KaTeX_Math-Italic.woff2 b/odoc.support/fonts/KaTeX_Math-Italic.woff2 similarity index 100% rename from fonts/KaTeX_Math-Italic.woff2 rename to odoc.support/fonts/KaTeX_Math-Italic.woff2 diff --git a/fonts/KaTeX_SansSerif-Bold.woff2 b/odoc.support/fonts/KaTeX_SansSerif-Bold.woff2 similarity index 100% rename from fonts/KaTeX_SansSerif-Bold.woff2 rename to odoc.support/fonts/KaTeX_SansSerif-Bold.woff2 diff --git a/fonts/KaTeX_SansSerif-Italic.woff2 b/odoc.support/fonts/KaTeX_SansSerif-Italic.woff2 similarity index 100% rename from fonts/KaTeX_SansSerif-Italic.woff2 rename to odoc.support/fonts/KaTeX_SansSerif-Italic.woff2 diff --git a/fonts/KaTeX_SansSerif-Regular.woff2 b/odoc.support/fonts/KaTeX_SansSerif-Regular.woff2 similarity index 100% rename from fonts/KaTeX_SansSerif-Regular.woff2 rename to odoc.support/fonts/KaTeX_SansSerif-Regular.woff2 diff --git a/fonts/KaTeX_Script-Regular.woff2 b/odoc.support/fonts/KaTeX_Script-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Script-Regular.woff2 rename to odoc.support/fonts/KaTeX_Script-Regular.woff2 diff --git a/fonts/KaTeX_Size1-Regular.woff2 b/odoc.support/fonts/KaTeX_Size1-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Size1-Regular.woff2 rename to odoc.support/fonts/KaTeX_Size1-Regular.woff2 diff --git a/fonts/KaTeX_Size2-Regular.woff2 b/odoc.support/fonts/KaTeX_Size2-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Size2-Regular.woff2 rename to odoc.support/fonts/KaTeX_Size2-Regular.woff2 diff --git a/fonts/KaTeX_Size3-Regular.woff2 b/odoc.support/fonts/KaTeX_Size3-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Size3-Regular.woff2 rename to odoc.support/fonts/KaTeX_Size3-Regular.woff2 diff --git a/fonts/KaTeX_Size4-Regular.woff2 b/odoc.support/fonts/KaTeX_Size4-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Size4-Regular.woff2 rename to odoc.support/fonts/KaTeX_Size4-Regular.woff2 diff --git a/fonts/KaTeX_Typewriter-Regular.woff2 b/odoc.support/fonts/KaTeX_Typewriter-Regular.woff2 similarity index 100% rename from fonts/KaTeX_Typewriter-Regular.woff2 rename to odoc.support/fonts/KaTeX_Typewriter-Regular.woff2 diff --git a/highlight.pack.js b/odoc.support/highlight.pack.js similarity index 100% rename from highlight.pack.js rename to odoc.support/highlight.pack.js diff --git a/katex.min.css b/odoc.support/katex.min.css similarity index 100% rename from katex.min.css rename to odoc.support/katex.min.css diff --git a/katex.min.js b/odoc.support/katex.min.js similarity index 100% rename from katex.min.js rename to odoc.support/katex.min.js diff --git a/odoc.css b/odoc.support/odoc.css similarity index 100% rename from odoc.css rename to odoc.support/odoc.css diff --git a/ppx_trace/Ppx_trace/index.html b/ppx_trace/Ppx_trace/index.html new file mode 100644 index 0000000..1384e36 --- /dev/null +++ b/ppx_trace/Ppx_trace/index.html @@ -0,0 +1,14 @@ + +Ppx_trace (ppx_trace.Ppx_trace)

Module Ppx_trace

val location_errorf : + loc:Ocaml_common.Location.t -> + ('a, Stdlib.Format.formatter, unit, 'b) Stdlib.format4 -> + 'c

let expression

val expand_let : + ctxt:Ppxlib.Expansion_context.Extension.t -> + [ `Unit | `Var of Ppxlib.label Ppxlib.loc ] -> + string -> + Ppxlib_ast.Ast.expression -> + Ppxlib_ast.Ast.expression
val extension_let : Ppxlib.Extension.V3.t
val rule_let : Ppxlib.Context_free.Rule.t

Toplevel binding

val expand_top_let : + ctxt:Ppxlib.Expansion_context.Extension.t -> + Ppxlib__.Import.rec_flag -> + Ppxlib.value_binding list -> + Ppxlib__.Import.structure_item
val extension_top_let : Ppxlib.Extension.V3.t
val rule_top_let : Ppxlib.Context_free.Rule.t
\ No newline at end of file diff --git a/ppx_trace/index.html b/ppx_trace/index.html new file mode 100644 index 0000000..7768cd4 --- /dev/null +++ b/ppx_trace/index.html @@ -0,0 +1,2 @@ + +index (ppx_trace.index)

ppx_trace index

Library ppx_trace

The entry point of this library is the module: Ppx_trace.

\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia/index.html b/trace-fuchsia/Trace_fuchsia/index.html new file mode 100644 index 0000000..4a583ae --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia/index.html @@ -0,0 +1,5 @@ + +Trace_fuchsia (trace-fuchsia.Trace_fuchsia)

Module Trace_fuchsia

val collector : + out:[ `File of string | `Stderr | `Stdout ] -> + unit -> + Trace_core.collector

Make a collector that writes into the given output. See setup for more details.

type output = [
  1. | `Stdout
  2. | `Stderr
  3. | `File of string
]

Output for tracing.

  • `Stdout will enable tracing and print events on stdout
  • `Stderr will enable tracing and print events on stderr
  • `File "foo" will enable tracing and print events into file named "foo"
val setup : ?out:[ output | `Env ] -> unit -> unit

setup () installs the collector depending on out.

  • parameter out

    can take different values:

    • regular output value to specify where events go
    • `Env will enable tracing if the environment variable "TRACE" is set.
    • If it's set to "1", then the file is "trace.fxt".
    • If it's set to "stdout", then logging happens on stdout (since 0.2)
    • If it's set to "stderr", then logging happens on stdout (since 0.2)
    • Otherwise, if it's set to a non empty string, the value is taken to be the file path into which to write.
val with_setup : ?out:[ output | `Env ] -> unit -> (unit -> 'a) -> 'a

with_setup () f (optionally) sets a collector up, calls f(), and makes sure to shutdown before exiting. since 0.2 a () argument was added.

\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Argument/index.html b/trace-fuchsia/Trace_fuchsia_write/Argument/index.html new file mode 100644 index 0000000..480eeaf --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Argument/index.html @@ -0,0 +1,19 @@ + +Argument (trace-fuchsia.Trace_fuchsia_write.Argument)

Module Trace_fuchsia_write.Argument

type 'a t = string * [< user_data | `Kid of int ] as 'a
val check_valid : 'a -> unit
val is_i32_ : int -> bool
val size_word : + [< `Bool of bool & 'a + | `Float of float & 'b + | `Int of int + | `Kid of int & 'c + | `None + | `String of string ] + t -> + int
val encode : + Buf.t -> + [< `Bool of bool & 'a + | `Float of float & 'b + | `Int of int + | `Kid of int & 'c + | `None + | `String of string ] + t -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Arguments/index.html b/trace-fuchsia/Trace_fuchsia_write/Arguments/index.html new file mode 100644 index 0000000..50fa497 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Arguments/index.html @@ -0,0 +1,35 @@ + +Arguments (trace-fuchsia.Trace_fuchsia_write.Arguments)

Module Trace_fuchsia_write.Arguments

type 'a t = 'a Argument.t list
val len : + [< `Bool of bool + | `Float of float + | `Int of int + | `Kid of int + | `None + | `String of string ] + t -> + int
val check_valid : + [< `Bool of bool + | `Float of float + | `Int of int + | `Kid of int + | `None + | `String of string ] + t -> + unit
val size_word : + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + t -> + int
val encode : + Buf.t -> + [< `Bool of bool & 'a & 'b & 'c + | `Float of float & 'd & 'e & 'f + | `Int of int + | `Kid of int & 'g & 'h & 'i + | `None + | `String of string ] + t -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Buf/index.html b/trace-fuchsia/Trace_fuchsia_write/Buf/index.html new file mode 100644 index 0000000..4e45874 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Buf/index.html @@ -0,0 +1,2 @@ + +Buf (trace-fuchsia.Trace_fuchsia_write.Buf)

Module Trace_fuchsia_write.Buf

type t = {
  1. buf : bytes;
  2. mutable offset : int;
}
val empty : t
val create : int -> t
val clear : t -> unit
val available : t -> int
val size : t -> int
val add_i64 : t -> int64 -> unit
val add_string : t -> string -> unit
val to_string : t -> string
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Buf_pool/List_with_len/index.html b/trace-fuchsia/Trace_fuchsia_write/Buf_pool/List_with_len/index.html new file mode 100644 index 0000000..c6a8c2c --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Buf_pool/List_with_len/index.html @@ -0,0 +1,2 @@ + +List_with_len (trace-fuchsia.Trace_fuchsia_write.Buf_pool.List_with_len)

Module Buf_pool.List_with_len

type +'a t =
  1. | Nil
  2. | Cons of int * 'a * 'a t
val empty : 'a t
val len : 'a t -> int
val cons : 'a -> 'b t -> 'b t
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Buf_pool/index.html b/trace-fuchsia/Trace_fuchsia_write/Buf_pool/index.html new file mode 100644 index 0000000..30a639b --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Buf_pool/index.html @@ -0,0 +1,2 @@ + +Buf_pool (trace-fuchsia.Trace_fuchsia_write.Buf_pool)

Module Trace_fuchsia_write.Buf_pool

module List_with_len : sig ... end
type t = {
  1. max_len : int;
  2. buf_size : int;
  3. bufs : Buf.t List_with_len.t {A}1.t;
}
val create : ?max_len:int -> ?buf_size:int -> unit -> t
val alloc : t -> Buf.t
val recycle : t -> Buf.t -> unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Event/Async_begin/index.html b/trace-fuchsia/Trace_fuchsia_write/Event/Async_begin/index.html new file mode 100644 index 0000000..59e235f --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Event/Async_begin/index.html @@ -0,0 +1,29 @@ + +Async_begin (trace-fuchsia.Trace_fuchsia_write.Event.Async_begin)

Module Event.Async_begin

type=5

val size_word : + name:string -> + t_ref:Thread_ref.t -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + Arguments.t -> + unit -> + int
val encode : + Output.t -> + name:string -> + t_ref:Thread_ref.t -> + time_ns:int64 -> + async_id:int -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd & 'e & 'f & 'g + | `Float of float & 'h & 'i & 'j & 'k & 'l & 'm & 'n + | `Int of int + | `Kid of int & 'o & 'p & 'q & 'r & 's & 't & 'u + | `None + | `String of string ] + Arguments.t -> + unit -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Event/Async_end/index.html b/trace-fuchsia/Trace_fuchsia_write/Event/Async_end/index.html new file mode 100644 index 0000000..90ef4d8 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Event/Async_end/index.html @@ -0,0 +1,29 @@ + +Async_end (trace-fuchsia.Trace_fuchsia_write.Event.Async_end)

Module Event.Async_end

type=7

val size_word : + name:string -> + t_ref:Thread_ref.t -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + Arguments.t -> + unit -> + int
val encode : + Output.t -> + name:string -> + t_ref:Thread_ref.t -> + time_ns:int64 -> + async_id:int -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd & 'e & 'f & 'g + | `Float of float & 'h & 'i & 'j & 'k & 'l & 'm & 'n + | `Int of int + | `Kid of int & 'o & 'p & 'q & 'r & 's & 't & 'u + | `None + | `String of string ] + Arguments.t -> + unit -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Event/Counter/index.html b/trace-fuchsia/Trace_fuchsia_write/Event/Counter/index.html new file mode 100644 index 0000000..8ef25ce --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Event/Counter/index.html @@ -0,0 +1,28 @@ + +Counter (trace-fuchsia.Trace_fuchsia_write.Event.Counter)

Module Event.Counter

type=1

val size_word : + name:string -> + t_ref:Thread_ref.t -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + Arguments.t -> + unit -> + int
val encode : + Output.t -> + name:string -> + t_ref:Thread_ref.t -> + time_ns:int64 -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd & 'e & 'f & 'g + | `Float of float & 'h & 'i & 'j & 'k & 'l & 'm & 'n + | `Int of int + | `Kid of int & 'o & 'p & 'q & 'r & 's & 't & 'u + | `None + | `String of string ] + Arguments.t -> + unit -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Event/Duration_begin/index.html b/trace-fuchsia/Trace_fuchsia_write/Event/Duration_begin/index.html new file mode 100644 index 0000000..a7a18f5 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Event/Duration_begin/index.html @@ -0,0 +1,28 @@ + +Duration_begin (trace-fuchsia.Trace_fuchsia_write.Event.Duration_begin)

Module Event.Duration_begin

type=2

val size_word : + name:string -> + t_ref:Thread_ref.t -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + Arguments.t -> + unit -> + int
val encode : + Output.t -> + name:string -> + t_ref:Thread_ref.t -> + time_ns:int64 -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd & 'e & 'f & 'g + | `Float of float & 'h & 'i & 'j & 'k & 'l & 'm & 'n + | `Int of int + | `Kid of int & 'o & 'p & 'q & 'r & 's & 't & 'u + | `None + | `String of string ] + Arguments.t -> + unit -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Event/Duration_complete/index.html b/trace-fuchsia/Trace_fuchsia_write/Event/Duration_complete/index.html new file mode 100644 index 0000000..c0e4101 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Event/Duration_complete/index.html @@ -0,0 +1,29 @@ + +Duration_complete (trace-fuchsia.Trace_fuchsia_write.Event.Duration_complete)

Module Event.Duration_complete

type=4

val size_word : + name:string -> + t_ref:Thread_ref.t -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + Arguments.t -> + unit -> + int
val encode : + Output.t -> + name:string -> + t_ref:Thread_ref.t -> + time_ns:int64 -> + end_time_ns:int64 -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd & 'e & 'f & 'g + | `Float of float & 'h & 'i & 'j & 'k & 'l & 'm & 'n + | `Int of int + | `Kid of int & 'o & 'p & 'q & 'r & 's & 't & 'u + | `None + | `String of string ] + Arguments.t -> + unit -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Event/Duration_end/index.html b/trace-fuchsia/Trace_fuchsia_write/Event/Duration_end/index.html new file mode 100644 index 0000000..34dbd6f --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Event/Duration_end/index.html @@ -0,0 +1,28 @@ + +Duration_end (trace-fuchsia.Trace_fuchsia_write.Event.Duration_end)

Module Event.Duration_end

type=3

val size_word : + name:string -> + t_ref:Thread_ref.t -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + Arguments.t -> + unit -> + int
val encode : + Output.t -> + name:string -> + t_ref:Thread_ref.t -> + time_ns:int64 -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd & 'e & 'f & 'g + | `Float of float & 'h & 'i & 'j & 'k & 'l & 'm & 'n + | `Int of int + | `Kid of int & 'o & 'p & 'q & 'r & 's & 't & 'u + | `None + | `String of string ] + Arguments.t -> + unit -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Event/Instant/index.html b/trace-fuchsia/Trace_fuchsia_write/Event/Instant/index.html new file mode 100644 index 0000000..9a897ed --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Event/Instant/index.html @@ -0,0 +1,28 @@ + +Instant (trace-fuchsia.Trace_fuchsia_write.Event.Instant)

Module Event.Instant

type=0

val size_word : + name:string -> + t_ref:Thread_ref.t -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + Arguments.t -> + unit -> + int
val encode : + Output.t -> + name:string -> + t_ref:Thread_ref.t -> + time_ns:int64 -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd & 'e & 'f & 'g + | `Float of float & 'h & 'i & 'j & 'k & 'l & 'm & 'n + | `Int of int + | `Kid of int & 'o & 'p & 'q & 'r & 's & 't & 'u + | `None + | `String of string ] + Arguments.t -> + unit -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Event/index.html b/trace-fuchsia/Trace_fuchsia_write/Event/index.html new file mode 100644 index 0000000..fa86666 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Event/index.html @@ -0,0 +1,2 @@ + +Event (trace-fuchsia.Trace_fuchsia_write.Event)

Module Trace_fuchsia_write.Event

record type = 4

module Instant : sig ... end

type=0

module Counter : sig ... end

type=1

module Duration_begin : sig ... end

type=2

module Duration_end : sig ... end

type=3

module Duration_complete : sig ... end

type=4

module Async_begin : sig ... end

type=5

module Async_end : sig ... end

type=7

\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/I64/index.html b/trace-fuchsia/Trace_fuchsia_write/I64/index.html new file mode 100644 index 0000000..8b1ae21 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/I64/index.html @@ -0,0 +1,2 @@ + +I64 (trace-fuchsia.Trace_fuchsia_write.I64)

Module Trace_fuchsia_write.I64

include module type of struct include Stdlib.Int64 end
val zero : int64
val one : int64
val minus_one : int64
val neg : int64 -> int64
val add : int64 -> int64 -> int64
val sub : int64 -> int64 -> int64
val mul : int64 -> int64 -> int64
val div : int64 -> int64 -> int64
val unsigned_div : int64 -> int64 -> int64
val rem : int64 -> int64 -> int64
val unsigned_rem : int64 -> int64 -> int64
val succ : int64 -> int64
val pred : int64 -> int64
val abs : int64 -> int64
val max_int : int64
val min_int : int64
val logand : int64 -> int64 -> int64
val logor : int64 -> int64 -> int64
val logxor : int64 -> int64 -> int64
val lognot : int64 -> int64
val shift_left : int64 -> int -> int64
val shift_right : int64 -> int -> int64
val shift_right_logical : int64 -> int -> int64
val of_int : int -> int64
val to_int : int64 -> int
val unsigned_to_int : int64 -> int option
val of_float : float -> int64
val to_float : int64 -> float
val of_int32 : int32 -> int64
val to_int32 : int64 -> int32
val of_nativeint : nativeint -> int64
val to_nativeint : int64 -> nativeint
val of_string : string -> int64
val of_string_opt : string -> int64 option
val to_string : int64 -> string
val bits_of_float : float -> int64
val float_of_bits : int64 -> float
type t = int64
val compare : t -> t -> int
val unsigned_compare : t -> t -> int
val equal : t -> t -> bool
val min : t -> t -> t
val max : t -> t -> t
val (+) : int64 -> int64 -> int64
val (-) : int64 -> int64 -> int64
val (=) : t -> t -> bool
val (land) : int64 -> int64 -> int64
val (lor) : int64 -> int64 -> int64
val lnot : int64 -> int64
val (lsl) : int64 -> int -> int64
val (lsr) : int64 -> int -> int64
val (asr) : int64 -> int -> int64
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Kernel_object/index.html b/trace-fuchsia/Trace_fuchsia_write/Kernel_object/index.html new file mode 100644 index 0000000..66caca8 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Kernel_object/index.html @@ -0,0 +1,27 @@ + +Kernel_object (trace-fuchsia.Trace_fuchsia_write.Kernel_object)

Module Trace_fuchsia_write.Kernel_object

record type = 7

val size_word : + name:string -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd + | `Float of float & 'e & 'f & 'g & 'h + | `Int of int + | `Kid of int & 'i & 'j & 'k & 'l + | `None + | `String of string ] + Arguments.t -> + unit -> + int
type ty = int
val ty_process : ty
val ty_thread : ty
val encode : + Output.t -> + name:string -> + ty:ty -> + kid:int -> + args: + [< `Bool of bool & 'a & 'b & 'c & 'd & 'e & 'f & 'g + | `Float of float & 'h & 'i & 'j & 'k & 'l & 'm & 'n + | `Int of int + | `Kid of int & 'o & 'p & 'q & 'r & 's & 't & 'u + | `None + | `String of string ] + Arguments.t -> + unit -> + unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Metadata/Initialization_record/index.html b/trace-fuchsia/Trace_fuchsia_write/Metadata/Initialization_record/index.html new file mode 100644 index 0000000..78ba8ee --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Metadata/Initialization_record/index.html @@ -0,0 +1,2 @@ + +Initialization_record (trace-fuchsia.Trace_fuchsia_write.Metadata.Initialization_record)

Module Metadata.Initialization_record

val size_word : int
val default_ticks_per_sec : int64

Default: 1 tick = 1 ns

val encode : Output.t -> ticks_per_secs:int64 -> unit -> unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Metadata/Magic_record/index.html b/trace-fuchsia/Trace_fuchsia_write/Metadata/Magic_record/index.html new file mode 100644 index 0000000..c10d9c0 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Metadata/Magic_record/index.html @@ -0,0 +1,2 @@ + +Magic_record (trace-fuchsia.Trace_fuchsia_write.Metadata.Magic_record)

Module Metadata.Magic_record

First record in the trace

val value : int64
val size_word : int
val encode : Output.t -> unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Metadata/Provider_info/index.html b/trace-fuchsia/Trace_fuchsia_write/Metadata/Provider_info/index.html new file mode 100644 index 0000000..22ad0f6 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Metadata/Provider_info/index.html @@ -0,0 +1,2 @@ + +Provider_info (trace-fuchsia.Trace_fuchsia_write.Metadata.Provider_info)

Module Metadata.Provider_info

val size_word : name:string -> unit -> int
val encode : Output.t -> id:int -> name:string -> unit -> unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Metadata/Provider_section/index.html b/trace-fuchsia/Trace_fuchsia_write/Metadata/Provider_section/index.html new file mode 100644 index 0000000..080ba66 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Metadata/Provider_section/index.html @@ -0,0 +1,2 @@ + +Provider_section (trace-fuchsia.Trace_fuchsia_write.Metadata.Provider_section)

Module Metadata.Provider_section

\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Metadata/Trace_info/index.html b/trace-fuchsia/Trace_fuchsia_write/Metadata/Trace_info/index.html new file mode 100644 index 0000000..583244c --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Metadata/Trace_info/index.html @@ -0,0 +1,2 @@ + +Trace_info (trace-fuchsia.Trace_fuchsia_write.Metadata.Trace_info)

Module Metadata.Trace_info

\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Metadata/index.html b/trace-fuchsia/Trace_fuchsia_write/Metadata/index.html new file mode 100644 index 0000000..63704cd --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Metadata/index.html @@ -0,0 +1,2 @@ + +Metadata (trace-fuchsia.Trace_fuchsia_write.Metadata)

Module Trace_fuchsia_write.Metadata

record type = 0

module Magic_record : sig ... end

First record in the trace

module Initialization_record : sig ... end
module Provider_info : sig ... end
module Provider_section : sig ... end
module Trace_info : sig ... end
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Output/index.html b/trace-fuchsia/Trace_fuchsia_write/Output/index.html new file mode 100644 index 0000000..41b51bc --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Output/index.html @@ -0,0 +1,2 @@ + +Output (trace-fuchsia.Trace_fuchsia_write.Output)

Module Trace_fuchsia_write.Output

type t = {
  1. mutable buf : Buf.t;
  2. mutable send_buf : Buf.t -> unit;
  3. buf_pool : Buf_pool.t;
}
val create : buf_pool:Buf_pool.t -> send_buf:(Buf.t -> unit) -> unit -> t
val flush : t -> unit
val get_buf : t -> available_word:int -> Buf.t

Obtain a buffer with at least available bytes

val into_buffer : buf_pool:Buf_pool.t -> Stdlib.Buffer.t -> t
val dispose : t -> unit
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Str_ref/index.html b/trace-fuchsia/Trace_fuchsia_write/Str_ref/index.html new file mode 100644 index 0000000..e560878 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Str_ref/index.html @@ -0,0 +1,2 @@ + +Str_ref (trace-fuchsia.Trace_fuchsia_write.Str_ref)

Module Trace_fuchsia_write.Str_ref

type t = int

16 bits

val inline : int -> t
\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Thread_record/index.html b/trace-fuchsia/Trace_fuchsia_write/Thread_record/index.html new file mode 100644 index 0000000..7cb9636 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Thread_record/index.html @@ -0,0 +1,2 @@ + +Thread_record (trace-fuchsia.Trace_fuchsia_write.Thread_record)

Module Trace_fuchsia_write.Thread_record

record type = 3

val size_word : int
val encode : Output.t -> as_ref:int -> pid:int -> tid:int -> unit -> unit

Record that Thread_ref.ref as_ref represents the pair pid, tid

\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Thread_ref/index.html b/trace-fuchsia/Trace_fuchsia_write/Thread_ref/index.html new file mode 100644 index 0000000..b8e7360 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Thread_ref/index.html @@ -0,0 +1,2 @@ + +Thread_ref (trace-fuchsia.Trace_fuchsia_write.Thread_ref)

Module Trace_fuchsia_write.Thread_ref

type t =
  1. | Ref of int
  2. | Inline of {
    1. pid : int;
    2. tid : int;
    }
val inline : pid:int -> tid:int -> t
val ref : int -> t
val size_word : t -> int
val as_i8 : t -> int

8-bit int for the reference

\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/Util/index.html b/trace-fuchsia/Trace_fuchsia_write/Util/index.html new file mode 100644 index 0000000..5b842e7 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/Util/index.html @@ -0,0 +1,2 @@ + +Util (trace-fuchsia.Trace_fuchsia_write.Util)

Module Trace_fuchsia_write.Util

val missing_to_round : int -> int

How many bytes are missing for n to be a multiple of 8

val round_to_word : int -> int

Round up to a multiple of 8

\ No newline at end of file diff --git a/trace-fuchsia/Trace_fuchsia_write/index.html b/trace-fuchsia/Trace_fuchsia_write/index.html new file mode 100644 index 0000000..ced7cc2 --- /dev/null +++ b/trace-fuchsia/Trace_fuchsia_write/index.html @@ -0,0 +1,2 @@ + +Trace_fuchsia_write (trace-fuchsia.Trace_fuchsia_write)

Module Trace_fuchsia_write

Write fuchsia events into buffers.

Reference: https://fuchsia.dev/fuchsia-src/reference/tracing/trace-format

module Util : sig ... end
module Buf : sig ... end
module Output : sig ... end
module Buf_pool : sig ... end
type user_data = Trace_core.user_data
module I64 : sig ... end
module Str_ref : sig ... end
module Thread_ref : sig ... end
module Metadata : sig ... end

record type = 0

module Argument : sig ... end
module Arguments : sig ... end
module Thread_record : sig ... end

record type = 3

module Event : sig ... end

record type = 4

module Kernel_object : sig ... end

record type = 7

\ No newline at end of file diff --git a/trace-fuchsia/index.html b/trace-fuchsia/index.html new file mode 100644 index 0000000..af155f6 --- /dev/null +++ b/trace-fuchsia/index.html @@ -0,0 +1,2 @@ + +index (trace-fuchsia.index)

trace-fuchsia index

Library trace-fuchsia

The entry point of this library is the module: Trace_fuchsia.

Library trace-fuchsia.write

The entry point of this library is the module: Trace_fuchsia_write.

\ No newline at end of file diff --git a/trace-tef/Trace_tef/.dummy b/trace-tef/Trace_tef/.dummy deleted file mode 100644 index e69de29..0000000 diff --git a/trace-tef/Trace_tef/index.html b/trace-tef/Trace_tef/index.html index fa3bb50..9bc3438 100644 --- a/trace-tef/Trace_tef/index.html +++ b/trace-tef/Trace_tef/index.html @@ -1,5 +1,5 @@ -Trace_tef (trace-tef.Trace_tef)

Module Trace_tef

val collector : +Trace_tef (trace-tef.Trace_tef)

Module Trace_tef

val collector : out:[ `File of string | `Stderr | `Stdout ] -> unit -> - Trace.collector

Make a collector that writes into the given output. See setup for more details.

type output = [
  1. | `Stdout
  2. | `Stderr
  3. | `File of string
]

Output for tracing.

  • `Stdout will enable tracing and print events on stdout
  • `Stderr will enable tracing and print events on stderr
  • `File "foo" will enable tracing and print events into file named "foo"
val setup : ?out:[ output | `Env ] -> unit -> unit

setup () installs the collector depending on out.

  • parameter out

    can take different values:

    • regular output value to specify where events go
    • `Env will enable tracing if the environment variable "TRACE" is set.
    • If it's set to "1", then the file is "trace.json".
    • If it's set to "stdout", then logging happens on stdout (since 0.2)
    • If it's set to "stderr", then logging happens on stdout (since 0.2)
    • Otherwise, if it's set to a non empty string, the value is taken to be the file path into which to write.
val with_setup : ?out:[ output | `Env ] -> unit -> (unit -> 'a) -> 'a

with_setup () f (optionally) sets a collector up, calls f(), and makes sure to shutdown before exiting. since 0.2 a () argument was added.

\ No newline at end of file + Trace_core.collector

Make a collector that writes into the given output. See setup for more details.

type output = [
  1. | `Stdout
  2. | `Stderr
  3. | `File of string
]

Output for tracing.

  • `Stdout will enable tracing and print events on stdout
  • `Stderr will enable tracing and print events on stderr
  • `File "foo" will enable tracing and print events into file named "foo"
val setup : ?out:[ output | `Env ] -> unit -> unit

setup () installs the collector depending on out.

  • parameter out

    can take different values:

    • regular output value to specify where events go
    • `Env will enable tracing if the environment variable "TRACE" is set.
    • If it's set to "1", then the file is "trace.json".
    • If it's set to "stdout", then logging happens on stdout (since 0.2)
    • If it's set to "stderr", then logging happens on stdout (since 0.2)
    • Otherwise, if it's set to a non empty string, the value is taken to be the file path into which to write.
val with_setup : ?out:[ output | `Env ] -> unit -> (unit -> 'a) -> 'a

with_setup () f (optionally) sets a collector up, calls f(), and makes sure to shutdown before exiting. since 0.2 a () argument was added.

\ No newline at end of file diff --git a/trace-tef/index.html b/trace-tef/index.html index 859df0a..eaf5298 100644 --- a/trace-tef/index.html +++ b/trace-tef/index.html @@ -1,2 +1,2 @@ -index (trace-tef.index)

trace-tef index

Library trace-tef

The entry point of this library is the module: Trace_tef.

\ No newline at end of file +index (trace-tef.index)

trace-tef index

Library trace-tef

The entry point of this library is the module: Trace_tef.

\ No newline at end of file diff --git a/trace/Trace/.dummy b/trace/Trace/.dummy deleted file mode 100644 index e69de29..0000000 diff --git a/trace/Trace/Collector/index.html b/trace/Trace/Collector/index.html deleted file mode 100644 index c08ff49..0000000 --- a/trace/Trace/Collector/index.html +++ /dev/null @@ -1,2 +0,0 @@ - -Collector (trace.Trace.Collector)

Module Trace.Collector

A global collector.

The collector, if present, is responsible for collecting messages and spans, and storing them, recording them, forward them, or offering them to other services and processes.

val dummy_span : int64
module type S = sig ... end

Signature for a collector.

\ No newline at end of file diff --git a/trace/Trace/Collector/module-type-S/index.html b/trace/Trace/Collector/module-type-S/index.html deleted file mode 100644 index 3de67eb..0000000 --- a/trace/Trace/Collector/module-type-S/index.html +++ /dev/null @@ -1,14 +0,0 @@ - -S (trace.Trace.Collector.S)

Module type Collector.S

Signature for a collector.

This is only relevant to implementors of tracing backends; to instrument your code you only need to look at the Trace module.

val enter_span : - ?__FUNCTION__:string -> - __FILE__:string -> - __LINE__:int -> - data: - (string * [ `Int of int | `String of string | `Bool of bool | `None ]) list -> - string -> - int64
val exit_span : int64 -> unit
val message : - ?span:int64 -> - data: - (string * [ `Int of int | `String of string | `Bool of bool | `None ]) list -> - string -> - unit
val name_thread : string -> unit

Give a name to the current thread

val name_process : string -> unit

Give a name to the current process

val counter_int : string -> int -> unit

Integer counter

val counter_float : string -> float -> unit

Float counter

val shutdown : unit -> unit

Shutdown collector, possibly waiting for it to finish sending data.

\ No newline at end of file diff --git a/trace/Trace/index.html b/trace/Trace/index.html index 1b9ccb4..37e0e16 100644 --- a/trace/Trace/index.html +++ b/trace/Trace/index.html @@ -1,18 +1,36 @@ -Trace (trace.Trace)

Module Trace

include module type of struct include Trace_core end
type span = int64

A span identifier.

The meaning of the identifier depends on the collector.

type user_data = [
  1. | `Int of int
  2. | `String of string
  3. | `Bool of bool
  4. | `None
]

User defined data, generally passed as key/value pairs to whatever collector is installed (if any).

module Collector = Trace_core.Collector

Tracing

val enabled : unit -> bool

Is there a collector?

This is fast, so that the traced program can check it before creating any span or message

val enter_span : - ?__FUNCTION__:string -> - __FILE__:string -> - __LINE__:int -> - ?data:(unit -> (string * user_data) list) -> - string -> - span

Enter a span. A span is a delimited period of time with a start instant ("enter") and stop instant ("exit"), associated with some metadata about the code entering/exiting some piece of code.

In particular the entrypoint comes with the location of the code (you can use __FILE__ and __LINE__ directly in OCaml), a mandatory name, and some optional metadata in a JSON-like representation.

val exit_span : span -> unit

Exit the span.

This should be called exactly once per span (even in case of exception). Once this is called, a timestamp might be recorded, and the span is considered finished and can't be used anymore

val with_span : +Trace (trace.Trace)

Module Trace

include module type of struct include Trace_core end
type span = int64

A span identifier.

The meaning of the identifier depends on the collector.

type user_data = [
  1. | `Int of int
  2. | `String of string
  3. | `Bool of bool
  4. | `Float of float
  5. | `None
]

User defined data, generally passed as key/value pairs to whatever collector is installed (if any).

type explicit_span = Trace_core.explicit_span = {
  1. span : span;
    (*

    Identifier for this span. Several explicit spans might share the same identifier since we can differentiate between them via meta.

    *)
  2. mutable meta : Trace_core.Meta_map.t;
    (*

    Metadata for this span (and its context)

    *)
}

Explicit span, with collector-specific metadata

module Collector = Trace_core.Collector
module Meta_map = Trace_core.Meta_map

Tracing

val enabled : unit -> bool

Is there a collector?

This is fast, so that the traced program can check it before creating any span or message.

val with_span : ?__FUNCTION__:string -> __FILE__:string -> __LINE__:int -> ?data:(unit -> (string * user_data) list) -> string -> (span -> 'a) -> - 'a

with_span ~__FILE__ ~__LINE__ name f enters a new span sp, and calls f sp. sp might be a dummy span if no collector is installed. When f sp returns or raises, the span sp is exited.

This is the recommended way to instrument most code.

val message : + 'a

with_span ~__FILE__ ~__LINE__ name f enters a new span sp, and calls f sp. sp might be a dummy span if no collector is installed. When f sp returns or raises, the span sp is exited.

This is the recommended way to instrument most code.

NOTE an important restriction is that this is only supposed to work for synchronous, direct style code. Monadic concurrency, Effect-based fibers, etc. might not play well with this style of spans on some or all backends. If you use cooperative concurrency, see enter_manual_span.

val enter_span : + ?__FUNCTION__:string -> + __FILE__:string -> + __LINE__:int -> + ?data:(unit -> (string * user_data) list) -> + string -> + span
val exit_span : span -> unit
val add_data_to_span : span -> (string * user_data) list -> unit

Add structured data to the given active span (see with_span). Behavior is not specified if the span has been exited.

  • since 0.4
val enter_manual_sub_span : + parent:explicit_span -> + ?flavor:[ `Sync | `Async ] -> + ?__FUNCTION__:string -> + __FILE__:string -> + __LINE__:int -> + ?data:(unit -> (string * user_data) list) -> + string -> + explicit_span

Like with_span but the caller is responsible for obtaining the parent span from their own caller, and carry the resulting explicit_span to the matching exit_manual_span.

  • parameter flavor

    a description of the span that can be used by the Collector.S to decide how to represent the span. Typically, `Sync spans start and stop on one thread, and are nested purely by their timestamp; and `Async spans can overlap, migrate between threads, etc. (as happens in Lwt, Eio, Async, etc.) which impacts how the collector might represent them.

  • since 0.3
val enter_manual_toplevel_span : + ?flavor:[ `Sync | `Async ] -> + ?__FUNCTION__:string -> + __FILE__:string -> + __LINE__:int -> + ?data:(unit -> (string * user_data) list) -> + string -> + explicit_span

Like with_span but the caller is responsible for carrying this explicit_span around until it's exited with exit_manual_span. The span can be used as a parent in enter_manual_sub_span.

  • since 0.3
val exit_manual_span : explicit_span -> unit

Exit an explicit span. This can be on another thread, in a fiber or lightweight thread, etc. and will be supported by backends nonetheless. The span can be obtained via enter_manual_sub_span or enter_manual_toplevel_span.

  • since 0.3
val add_data_to_manual_span : + explicit_span -> + (string * user_data) list -> + unit

add_data_explicit esp data adds data to the span esp. The behavior is not specified is the span has been exited already.

  • since 0.4
val message : ?span:span -> ?data:(unit -> (string * user_data) list) -> string -> @@ -20,4 +38,12 @@ ?span:span -> ?data:(unit -> (string * user_data) list) -> ((('a, Stdlib.Format.formatter, unit, unit) Stdlib.format4 -> 'a) -> unit) -> - unit

messagef (fun k->k"hello %s %d!" "world" 42) is like message "hello world 42!" but only computes the string formatting if a collector is installed.

val set_thread_name : string -> unit

Give a name to the current thread. This might be used by the collector to display traces in a more informative way.

val set_process_name : string -> unit

Give a name to the current process. This might be used by the collector to display traces in a more informative way.

val counter_int : string -> int -> unit

Emit a counter of type int. Counters represent the evolution of some quantity over time.

val counter_float : string -> float -> unit

Emit a counter of type float. See counter_int for more details.

Collector

type collector = (module Collector.S)

An event collector.

See Collector for more details.

val setup_collector : collector -> unit

setup_collector c installs c as the current collector.

  • raises Invalid_argument

    if there already is an established collector.

val shutdown : unit -> unit

shutdown () shutdowns the current collector, if one was installed, and waits for it to terminate before returning.

\ No newline at end of file + unit

messagef (fun k->k"hello %s %d!" "world" 42) is like message "hello world 42!" but only computes the string formatting if a collector is installed.

val set_thread_name : string -> unit

Give a name to the current thread. This might be used by the collector to display traces in a more informative way.

val set_process_name : string -> unit

Give a name to the current process. This might be used by the collector to display traces in a more informative way.

val counter_int : + ?data:(unit -> (string * user_data) list) -> + string -> + int -> + unit

Emit a counter of type int. Counters represent the evolution of some quantity over time.

  • parameter data

    metadata for this metric (since 0.4)

val counter_float : + ?data:(unit -> (string * user_data) list) -> + string -> + float -> + unit

Emit a counter of type float. See counter_int for more details.

  • parameter data

    metadata for this metric (since 0.4)

Collector

type collector = (module Collector.S)

An event collector.

See Collector for more details.

val setup_collector : collector -> unit

setup_collector c installs c as the current collector.

  • raises Invalid_argument

    if there already is an established collector.

val shutdown : unit -> unit

shutdown () shutdowns the current collector, if one was installed, and waits for it to terminate before returning.

\ No newline at end of file diff --git a/trace/Trace_core/.dummy b/trace/Trace_core/.dummy deleted file mode 100644 index e69de29..0000000 diff --git a/trace/Trace_core/Collector/index.html b/trace/Trace_core/Collector/index.html index 8630ce8..015d582 100644 --- a/trace/Trace_core/Collector/index.html +++ b/trace/Trace_core/Collector/index.html @@ -1,2 +1,2 @@ -Collector (trace.Trace_core.Collector)

Module Trace_core.Collector

A global collector.

The collector, if present, is responsible for collecting messages and spans, and storing them, recording them, forward them, or offering them to other services and processes.

val dummy_span : int64
module type S = sig ... end

Signature for a collector.

\ No newline at end of file +Collector (trace.Trace_core.Collector)

Module Trace_core.Collector

A global collector.

The collector, if present, is responsible for collecting messages and spans, and storing them, recording them, forward them, or offering them to other services and processes.

val dummy_span : int64
val dummy_explicit_span : Trace_core__.Types.explicit_span
module type S = sig ... end

Signature for a collector.

\ No newline at end of file diff --git a/trace/Trace_core/Collector/module-type-S/index.html b/trace/Trace_core/Collector/module-type-S/index.html index 5c11dca..254f00b 100644 --- a/trace/Trace_core/Collector/module-type-S/index.html +++ b/trace/Trace_core/Collector/module-type-S/index.html @@ -1,14 +1,95 @@ -S (trace.Trace_core.Collector.S)

Module type Collector.S

Signature for a collector.

This is only relevant to implementors of tracing backends; to instrument your code you only need to look at the Trace module.

val enter_span : - ?__FUNCTION__:string -> +S (trace.Trace_core.Collector.S)

Module type Collector.S

Signature for a collector.

This is only relevant to implementors of tracing backends; to instrument your code you only need to look at the Trace module.

val with_span : + __FUNCTION__:string option -> __FILE__:string -> __LINE__:int -> data: - (string * [ `Int of int | `String of string | `Bool of bool | `None ]) list -> + (string + * [ `Int of int + | `String of string + | `Bool of bool + | `Float of float + | `None ]) + list -> string -> - int64
val exit_span : int64 -> unit
val message : + (int64 -> 'a) -> + 'a

Run the function in a new span.

This replaces the previous enter_span and exit_span which were too flexible to be efficient to implement in async contexts.

  • since 0.3
val enter_span : + __FUNCTION__:string option -> + __FILE__:string -> + __LINE__:int -> + data: + (string + * [ `Int of int + | `String of string + | `Bool of bool + | `Float of float + | `None ]) + list -> + string -> + int64

Enter a new implicit span. For many uses cases, with_span will be easier to use.

  • since NEXT_RELEASE
val exit_span : int64 -> unit

Exit span. This should be called on the same thread as the corresponding enter_span, and nest properly with other calls to enter/exit_span and with_span.

  • since NEXT_RELEASE
val enter_manual_span : + parent:Trace_core__.Types.explicit_span option -> + flavor:[ `Sync | `Async ] option -> + __FUNCTION__:string option -> + __FILE__:string -> + __LINE__:int -> + data: + (string + * [ `Int of int + | `String of string + | `Bool of bool + | `Float of float + | `None ]) + list -> + string -> + Trace_core__.Types.explicit_span

Enter an explicit span. Surrounding scope, if any, is provided by parent, and this function can store as much metadata as it wants in the hmap in the explicit_span's meta field.

This means that the collector doesn't need to implement contextual storage mapping span to scopes, metadata, etc. on its side; everything can be transmitted in the explicit_span.

  • since 0.3
val exit_manual_span : Trace_core__.Types.explicit_span -> unit

Exit an explicit span.

  • since 0.3
val add_data_to_span : + int64 -> + (string + * [ `Int of int + | `String of string + | `Bool of bool + | `Float of float + | `None ]) + list -> + unit
  • since Adds data to the current span.

0.4

val add_data_to_manual_span : + Trace_core__.Types.explicit_span -> + (string + * [ `Int of int + | `String of string + | `Bool of bool + | `Float of float + | `None ]) + list -> + unit

Adds data to the given span.

  • since 0.4
val message : ?span:int64 -> data: - (string * [ `Int of int | `String of string | `Bool of bool | `None ]) list -> + (string + * [ `Int of int + | `String of string + | `Bool of bool + | `Float of float + | `None ]) + list -> string -> - unit
val name_thread : string -> unit

Give a name to the current thread

val name_process : string -> unit

Give a name to the current process

val counter_int : string -> int -> unit

Integer counter

val counter_float : string -> float -> unit

Float counter

val shutdown : unit -> unit

Shutdown collector, possibly waiting for it to finish sending data.

\ No newline at end of file + unit

Emit a message with associated metadata.

val name_thread : string -> unit

Give a name to the current thread.

val name_process : string -> unit

Give a name to the current process.

val counter_int : + data: + (string + * [ `Int of int + | `String of string + | `Bool of bool + | `Float of float + | `None ]) + list -> + string -> + int -> + unit

Integer counter.

val counter_float : + data: + (string + * [ `Int of int + | `String of string + | `Bool of bool + | `Float of float + | `None ]) + list -> + string -> + float -> + unit

Float counter.

val shutdown : unit -> unit

Shutdown collector, possibly waiting for it to finish sending data.

\ No newline at end of file diff --git a/trace/Trace_core/Meta_map/Key/index.html b/trace/Trace_core/Meta_map/Key/index.html new file mode 100644 index 0000000..727dd7f --- /dev/null +++ b/trace/Trace_core/Meta_map/Key/index.html @@ -0,0 +1,2 @@ + +Key (trace.Trace_core.Meta_map.Key)

Module Meta_map.Key

Keys with a type witness.

type 'a t

A key of type 'a t is used to access the portion of the map or table that associates keys of type 'a to values.

val create : unit -> 'a t

Make a new key. This is generative, so calling create () twice with the same return type will produce incompatible keys that cannot see each other's bindings.

val equal : 'a t -> 'a t -> bool

Compare two keys that have compatible types.

\ No newline at end of file diff --git a/trace/Trace_core/Meta_map/index.html b/trace/Trace_core/Meta_map/index.html new file mode 100644 index 0000000..27abef0 --- /dev/null +++ b/trace/Trace_core/Meta_map/index.html @@ -0,0 +1,2 @@ + +Meta_map (trace.Trace_core.Meta_map)

Module Trace_core.Meta_map

Associative containers with Heterogeneous Values

module Key : sig ... end

Keys with a type witness.

type pair =
  1. | Pair : 'a Key.t * 'a -> pair
type t

Immutable map from Key.t to values

val empty : t
val mem : _ Key.t -> t -> bool
val add : 'a Key.t -> 'a -> t -> t
val remove : _ Key.t -> t -> t
val length : t -> int
val cardinal : t -> int
val find : 'a Key.t -> t -> 'a option
val find_exn : 'a Key.t -> t -> 'a
  • raises Not_found

    if the key is not in the table.

val iter : (pair -> unit) -> t -> unit
val add_list : t -> pair list -> t
val of_list : pair list -> t
val to_list : t -> pair list
\ No newline at end of file diff --git a/trace/Trace_core/index.html b/trace/Trace_core/index.html index 62a8241..5b1473a 100644 --- a/trace/Trace_core/index.html +++ b/trace/Trace_core/index.html @@ -1,18 +1,36 @@ -Trace_core (trace.Trace_core)

Module Trace_core

Trace.

type span = int64

A span identifier.

The meaning of the identifier depends on the collector.

type user_data = [
  1. | `Int of int
  2. | `String of string
  3. | `Bool of bool
  4. | `None
]

User defined data, generally passed as key/value pairs to whatever collector is installed (if any).

module Collector : sig ... end

A global collector.

Tracing

val enabled : unit -> bool

Is there a collector?

This is fast, so that the traced program can check it before creating any span or message

val enter_span : - ?__FUNCTION__:string -> - __FILE__:string -> - __LINE__:int -> - ?data:(unit -> (string * user_data) list) -> - string -> - span

Enter a span. A span is a delimited period of time with a start instant ("enter") and stop instant ("exit"), associated with some metadata about the code entering/exiting some piece of code.

In particular the entrypoint comes with the location of the code (you can use __FILE__ and __LINE__ directly in OCaml), a mandatory name, and some optional metadata in a JSON-like representation.

val exit_span : span -> unit

Exit the span.

This should be called exactly once per span (even in case of exception). Once this is called, a timestamp might be recorded, and the span is considered finished and can't be used anymore

val with_span : +Trace_core (trace.Trace_core)

Module Trace_core

Trace.

type span = int64

A span identifier.

The meaning of the identifier depends on the collector.

type user_data = [
  1. | `Int of int
  2. | `String of string
  3. | `Bool of bool
  4. | `Float of float
  5. | `None
]

User defined data, generally passed as key/value pairs to whatever collector is installed (if any).

type explicit_span = {
  1. span : span;
    (*

    Identifier for this span. Several explicit spans might share the same identifier since we can differentiate between them via meta.

    *)
  2. mutable meta : Meta_map.t;
    (*

    Metadata for this span (and its context)

    *)
}

Explicit span, with collector-specific metadata

module Collector : sig ... end

A global collector.

module Meta_map : sig ... end

Associative containers with Heterogeneous Values

Tracing

val enabled : unit -> bool

Is there a collector?

This is fast, so that the traced program can check it before creating any span or message.

val with_span : ?__FUNCTION__:string -> __FILE__:string -> __LINE__:int -> ?data:(unit -> (string * user_data) list) -> string -> (span -> 'a) -> - 'a

with_span ~__FILE__ ~__LINE__ name f enters a new span sp, and calls f sp. sp might be a dummy span if no collector is installed. When f sp returns or raises, the span sp is exited.

This is the recommended way to instrument most code.

val message : + 'a

with_span ~__FILE__ ~__LINE__ name f enters a new span sp, and calls f sp. sp might be a dummy span if no collector is installed. When f sp returns or raises, the span sp is exited.

This is the recommended way to instrument most code.

NOTE an important restriction is that this is only supposed to work for synchronous, direct style code. Monadic concurrency, Effect-based fibers, etc. might not play well with this style of spans on some or all backends. If you use cooperative concurrency, see enter_manual_span.

val enter_span : + ?__FUNCTION__:string -> + __FILE__:string -> + __LINE__:int -> + ?data:(unit -> (string * user_data) list) -> + string -> + span
val exit_span : span -> unit
val add_data_to_span : span -> (string * user_data) list -> unit

Add structured data to the given active span (see with_span). Behavior is not specified if the span has been exited.

  • since 0.4
val enter_manual_sub_span : + parent:explicit_span -> + ?flavor:[ `Sync | `Async ] -> + ?__FUNCTION__:string -> + __FILE__:string -> + __LINE__:int -> + ?data:(unit -> (string * user_data) list) -> + string -> + explicit_span

Like with_span but the caller is responsible for obtaining the parent span from their own caller, and carry the resulting explicit_span to the matching exit_manual_span.

  • parameter flavor

    a description of the span that can be used by the Collector.S to decide how to represent the span. Typically, `Sync spans start and stop on one thread, and are nested purely by their timestamp; and `Async spans can overlap, migrate between threads, etc. (as happens in Lwt, Eio, Async, etc.) which impacts how the collector might represent them.

  • since 0.3
val enter_manual_toplevel_span : + ?flavor:[ `Sync | `Async ] -> + ?__FUNCTION__:string -> + __FILE__:string -> + __LINE__:int -> + ?data:(unit -> (string * user_data) list) -> + string -> + explicit_span

Like with_span but the caller is responsible for carrying this explicit_span around until it's exited with exit_manual_span. The span can be used as a parent in enter_manual_sub_span.

  • since 0.3
val exit_manual_span : explicit_span -> unit

Exit an explicit span. This can be on another thread, in a fiber or lightweight thread, etc. and will be supported by backends nonetheless. The span can be obtained via enter_manual_sub_span or enter_manual_toplevel_span.

  • since 0.3
val add_data_to_manual_span : + explicit_span -> + (string * user_data) list -> + unit

add_data_explicit esp data adds data to the span esp. The behavior is not specified is the span has been exited already.

  • since 0.4
val message : ?span:span -> ?data:(unit -> (string * user_data) list) -> string -> @@ -20,4 +38,12 @@ ?span:span -> ?data:(unit -> (string * user_data) list) -> ((('a, Stdlib.Format.formatter, unit, unit) Stdlib.format4 -> 'a) -> unit) -> - unit

messagef (fun k->k"hello %s %d!" "world" 42) is like message "hello world 42!" but only computes the string formatting if a collector is installed.

val set_thread_name : string -> unit

Give a name to the current thread. This might be used by the collector to display traces in a more informative way.

val set_process_name : string -> unit

Give a name to the current process. This might be used by the collector to display traces in a more informative way.

val counter_int : string -> int -> unit

Emit a counter of type int. Counters represent the evolution of some quantity over time.

val counter_float : string -> float -> unit

Emit a counter of type float. See counter_int for more details.

Collector

type collector = (module Collector.S)

An event collector.

See Collector for more details.

val setup_collector : collector -> unit

setup_collector c installs c as the current collector.

  • raises Invalid_argument

    if there already is an established collector.

val shutdown : unit -> unit

shutdown () shutdowns the current collector, if one was installed, and waits for it to terminate before returning.

\ No newline at end of file + unit

messagef (fun k->k"hello %s %d!" "world" 42) is like message "hello world 42!" but only computes the string formatting if a collector is installed.

val set_thread_name : string -> unit

Give a name to the current thread. This might be used by the collector to display traces in a more informative way.

val set_process_name : string -> unit

Give a name to the current process. This might be used by the collector to display traces in a more informative way.

val counter_int : + ?data:(unit -> (string * user_data) list) -> + string -> + int -> + unit

Emit a counter of type int. Counters represent the evolution of some quantity over time.

  • parameter data

    metadata for this metric (since 0.4)

val counter_float : + ?data:(unit -> (string * user_data) list) -> + string -> + float -> + unit

Emit a counter of type float. See counter_int for more details.

  • parameter data

    metadata for this metric (since 0.4)

Collector

type collector = (module Collector.S)

An event collector.

See Collector for more details.

val setup_collector : collector -> unit

setup_collector c installs c as the current collector.

  • raises Invalid_argument

    if there already is an established collector.

val shutdown : unit -> unit

shutdown () shutdowns the current collector, if one was installed, and waits for it to terminate before returning.

\ No newline at end of file diff --git a/trace/Trace_private_util/B_queue/index.html b/trace/Trace_private_util/B_queue/index.html new file mode 100644 index 0000000..193dbc8 --- /dev/null +++ b/trace/Trace_private_util/B_queue/index.html @@ -0,0 +1,2 @@ + +B_queue (trace.Trace_private_util.B_queue)

Module Trace_private_util.B_queue

Basic Blocking Queue

type 'a t
val create : unit -> _ t
exception Closed
val push : 'a t -> 'a -> unit

push q x pushes x into q, and returns ().

  • raises Closed

    if close q was previously called.

val pop_all : 'a t -> 'a list

pop_all bq returns all items presently in bq, in the same order, and clears bq. It blocks if no element is in bq.

val close : _ t -> unit

Close the queue, meaning there won't be any more push allowed.

\ No newline at end of file diff --git a/trace/Trace_private_util/Domain_util/index.html b/trace/Trace_private_util/Domain_util/index.html new file mode 100644 index 0000000..2448442 --- /dev/null +++ b/trace/Trace_private_util/Domain_util/index.html @@ -0,0 +1,2 @@ + +Domain_util (trace.Trace_private_util.Domain_util)

Module Trace_private_util.Domain_util

val cpu_relax : unit -> unit
val n_domains : unit -> int
\ No newline at end of file diff --git a/trace/Trace_private_util/Mpsc_bag/index.html b/trace/Trace_private_util/Mpsc_bag/index.html new file mode 100644 index 0000000..0d8f1c5 --- /dev/null +++ b/trace/Trace_private_util/Mpsc_bag/index.html @@ -0,0 +1,2 @@ + +Mpsc_bag (trace.Trace_private_util.Mpsc_bag)

Module Trace_private_util.Mpsc_bag

A multi-producer, single-consumer bag

type 'a t
val create : unit -> 'a t
val add : 'a t -> 'a -> unit

add q x adds x in the bag.

val pop_all : 'a t -> 'a list option

Return all current items in the insertion order.

\ No newline at end of file diff --git a/trace/Trace_private_util/index.html b/trace/Trace_private_util/index.html new file mode 100644 index 0000000..8405171 --- /dev/null +++ b/trace/Trace_private_util/index.html @@ -0,0 +1,2 @@ + +Trace_private_util (trace.Trace_private_util)

Module Trace_private_util

module B_queue : sig ... end

Basic Blocking Queue

module Domain_util : sig ... end
module Mpsc_bag : sig ... end

A multi-producer, single-consumer bag

\ No newline at end of file diff --git a/trace/index.html b/trace/index.html index 11ba485..d126b7e 100644 --- a/trace/index.html +++ b/trace/index.html @@ -1,2 +1,2 @@ -index (trace.index)

trace index

Library trace

The entry point of this library is the module: Trace.

Library trace.core

The entry point of this library is the module: Trace_core.

\ No newline at end of file +index (trace.index)

trace index

Library trace

The entry point of this library is the module: Trace.

Library trace.core

The entry point of this library is the module: Trace_core.

Library trace.private.util

The entry point of this library is the module: Trace_private_util.

\ No newline at end of file