aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/libghostty-vt/pkg/sentry/uuid.zig
blob: 07268fdaf04a21f0911eaf0f4a40d9edfaef4a8b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
const std = @import("std");
const assert = std.debug.assert;
const c = @import("c.zig").c;

/// sentry_uuid_t
pub const UUID = struct {
    value: c.sentry_uuid_t,

    pub fn init() UUID {
        return .{ .value = c.sentry_uuid_new_v4() };
    }

    pub fn isNil(self: UUID) bool {
        return c.sentry_uuid_is_nil(&self.value) != 0;
    }

    pub fn string(self: UUID) [36:0]u8 {
        var buf: [36:0]u8 = undefined;
        c.sentry_uuid_as_string(&self.value, &buf);
        return buf;
    }
};