feature. See also
. The project being documented here (as the example) is the Zig library itself.
c.pthread_cond_t
pub const pthread_cond_t = switch (native_os)
File
Code
pub const pthread_cond_t = switch (native_os) {
.linux => extern struct {
data: [48]u8 align(@alignOf(usize)) = @splat(0),
},
.driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => extern struct {
sig: c_long = 0x3CB0B1BB,
data: [data_len]u8 = @splat(0),
const data_len = if (@sizeOf(usize) == 8) 40 else 24;
},
.freebsd, .dragonfly, .openbsd => extern struct {
inner: ?*anyopaque = null,
},
.hermit => extern struct {
ptr: usize = maxInt(usize),
},
.netbsd => extern struct {
magic: u32 = 0x55550005,
lock: pthread_spin_t = 0,
waiters_first: ?*u8 = null,
waiters_last: ?*u8 = null,
mutex: ?*pthread_mutex_t = null,
private: ?*anyopaque = null,
},
.haiku => extern struct {
flags: u32 = 0,
unused: i32 = -42,
mutex: ?*anyopaque = null,
waiter_count: i32 = 0,
lock: i32 = 0,
},
.illumos => extern struct {
flag: [4]u8 = @splat(0),
type: u16 = 0,
magic: u16 = 0x4356,
data: u64 = 0,
},
.fuchsia, .emscripten => extern struct {
data: [48]u8 align(@alignOf(usize)) = @splat(0),
},
.serenity => extern struct {
mutex: ?*pthread_mutex_t = null,
value: u32 = 0,
clockid: clockid_t = .REALTIME_COARSE,
},
else => void,
}