Skip to documentation
SLOP

tiny.memtrace.Context

Reference tiny.memtrace Context

Defined in context.

API (15)

Actions

Public operations.

Fields and members

Public fields and members.

No direct callersNo direct callscontextContext
Static calls · unresolved targets: unknown · external targets: unknown.

Source

Source: lib/memtrace/src/context.zig:52

zig
pub const Context = struct {    tracer: ?*tracer_mod.Tracer = null,    census: ?*census_mod.Census = null,    intervals: ?IntervalSink = null,    pub fn init(tracer: ?*tracer_mod.Tracer, census: ?*census_mod.Census) Context {        return .{            .tracer = tracer,            .census = census,        };    }    pub fn disabled() Context {        return .{};    }    pub fn tracesAllocations(self: Context) bool {        return self.tracer != null;    }    pub fn recordsCensus(self: Context) bool {        return self.census != null;    }    pub fn enabled(self: Context) bool {        return self.tracesAllocations() or self.recordsCensus() or            self.intervals != null;    }    pub fn withIntervals(self: Context, intervals: ?IntervalSink) Context {        var result = self;        result.intervals = intervals;        return result;    }    pub fn enter(self: Context, label: []const u8) !Span {        const actual = self.tracer orelse return .{};        return .{ .scope = try actual.enter(label) };    }    pub fn enterInterval(self: Context, category: u8) IntervalSpan {        const sink = self.intervals orelse return .{};        const token = sink.begin(category);        if (token == IntervalSink.invalid_token) return .{};        return .{ .sink = sink, .token = token };    }    pub fn record(self: Context, label: []const u8, bytes: usize) !void {        const actual = self.census orelse return;        try actual.record(label, bytes);    }    pub fn recordPrefixed(self: Context, prefix: []const u8, label: []const u8, bytes: usize) !void {        const actual = self.census orelse return;        try actual.recordPrefixed(prefix, label, bytes);    }    pub fn recordCount(self: Context, label: []const u8, count: usize, bytes: usize) !void {        const actual = self.census orelse return;        try actual.recordCount(label, count, bytes);    }    pub fn recordCountPrefixed(self: Context, prefix: []const u8, label: []const u8, count: usize, bytes: usize) !void {        const actual = self.census orelse return;        try actual.recordCountPrefixed(prefix, label, count, bytes);    }};

Source: lib/memtrace/src/root.zig:55

zig
pub const Context = context_mod.Context;
Called byCallsNo direct callstest sourcelib.memtrace.src.contexttest: disabled context is a no-op par...test sourcelib.memtrace.src.contexttest: interval context preserves nest...Contextdisabled
Static calls · unresolved targets: 0 · external targets: 0.
Called byCallsNo direct callersContextrecordsCensusContexttracesAllocationsContextenabled
Static calls · unresolved targets: 0 · external targets: 0.
Called byCallsNo direct callstest sourcelib.memtrace.src.contexttest: context records allocation scop...Contextenter
Static calls · unresolved targets: 0 · external targets: 1.
Called byCallsNo direct callstest sourcelib.memtrace.src.contexttest: context records allocation scop...Contextinit
Static calls · unresolved targets: 0 · external targets: 0.
Called byCallsNo direct callstest sourcelib.memtrace.src.contexttest: context records allocation scop...Contextrecord
Static calls · unresolved targets: 0 · external targets: 1.
Called byCallsNo direct callsContextenabledContextrecordsCensus
Static calls · unresolved targets: 0 · external targets: 0.
Called byCallsNo direct callsContextenabledContexttracesAllocations
Static calls · unresolved targets: 0 · external targets: 0.

Audit

Definitions13
Public names26
Members3
Version26.7.0
Revisiondaab053ee433