Module Core_profiler_offline_tool.Interest
module Interval_subject : sig ... end
module Raw : sig ... end
A raw or "unfiltered" interest. Specifically, an
Event_generator.t
can produce events given a buffer and a list of raw interests, which are typically then "filtered" by aFilter.t
(a filter takes a list of actual interests /Interest.t
s). An event will only ever match oneInterest.Raw.t
(indeed, events are keyed by raw interests inEvent_generator.t
) whereas it could match several distinctInterest.t
s (e.g., overlapping intervals)
type 'a t
=
|
All of 'a Raw.t
|
In_interval of 'a Raw.t * Interval_subject.t * Core_profiler_disabled.Profiler_units.t * Core.Interval.Int.t
A
t
specifies some subset of the core-profiler file that we're interested in.
include Ppx_sexp_conv_lib.Sexpable.S1 with type 'a t := 'a t
val t_of_sexp : (Sexplib0.Sexp.t -> 'a) -> Sexplib0.Sexp.t -> 'a t
val sexp_of_t : ('a -> Sexplib0.Sexp.t) -> 'a t -> Sexplib0.Sexp.t
module I : sig ... end
When keyed by
Probe_id.t
s, interests are comparable, hashable.
val raw : 'a t -> 'a Raw.t
If this is a filtered interest, this drills down to the 'raw' unfiltered interest. Currently, this means it retrieves the first argument of an
In_interval
interest, and is the identity function otherwise.
val string_t_of_sexp : Core.Sexp.t -> string t
In the presence of special characters,
Fn.compose string_t_of_string string_t_to_string
might not be the identify function; indeed, it may even raise an error.
val sexp_of_string_t : string t -> Core.Sexp.t
val string_t_of_string : string -> string t
val string_t_to_string : string t -> string
val lookup_ids : string t -> Util.Name_map.t -> Core_profiler.Probe_id.t t
val lookup_names : Core_profiler.Probe_id.t t -> Reader.Header.t -> string t
val id_t_to_string : Core_profiler.Probe_id.t t -> Reader.Header.t -> string
val spec : Core_profiler.Probe_id.t t -> Reader.Header.t -> Core_profiler.Probe_type.t
Retrieve the
Probe_type.t
associated with this interest, by drilling down to the relevantProbe_id.t
of the group or single
val is_path : _ t -> bool
val coerce_interval_units : Core_profiler.Probe_id.t t -> Reader.Header.t -> Core_profiler.Probe_id.t t
If necessary, coerce the units of any values in this interest to those that the probe that the interest refers to is quoted in.
val readme : string Core.Lazy.t
val arg_type : string t Core.Command.Spec.Arg_type.t
val list_arg : string t list Core.Command.Spec.param
val default_interests : Reader.Header.t -> Core_profiler.Probe_id.t t list
Generate a (hopefully sane) set of default interests for the items in this header