Declaraciones públicas de src/os.zig (zkit (SDK consumido)).
apps/docs/generated/zig/zkit.jsonPágina generada desde
zkit@zkit-0.0.0-_fk2iAa4BQCqGFKJeeY9WvMQClX5kiZQ2iOZrVsxVyyN (src/root.zig). No se edita a mano:bun run docs:genla regenera ybun run docs:checkfalla si difiere.
zkit/os — entorno y aleatoriedad del SO sin runtime Io.
Desde 0.16 std.process.getEnvVarOwned y std.crypto.random cuelgan de la
interfaz Io. Un daemon con hilos propios no tiene uno que pasarles, así
que cada repo reescribía getenv y randomBytes sobre libc (styx los
tomaba del fork de quic-zig, quic.sys, que es un shim de sockets y no
debería ser la dependencia de nadie para leer una variable de entorno).
Reglas:
getenv devuelve memoria de libc: no se libera y no sobrevive a un
setenv posterior del mismo nombre. Si hay que conservarla, cópiala.getenvInt distingue "no está" (null) de "está mal" (error): un
valor de configuración malformado no se convierte en el default en
silencio — el llamador decide si eso es fatal.randomBytes es aleatoriedad CRIPTOGRÁFICA (getrandom / arc4random).
Nunca falla en silencio: si el kernel no puede darla, pánico.os.getenvfn · línea 31
pub fn getenv(name: [*:0]const u8) ?[:0]const u8Valor de la variable de entorno name, o null si no está definida.
La memoria pertenece a libc (ver doc del módulo).
os.GetenvIntErrorconst · línea 36
pub const GetenvIntError = error{InvalidEnvValue}Sin ///.
os.getenvIntfn · línea 40
pub fn getenvInt(comptime T: type, name: [*:0]const u8) GetenvIntError!?TEntero decimal de la variable name. null si no está definida o está
vacía; error.InvalidEnvValue si no es un T válido (incluye desborde).
os.randomBytesfn · línea 49
pub fn randomBytes(buf: []u8) voidRellena buf con bytes aleatorios criptográficos.
os.randomIntfn · línea 67
pub fn randomInt(comptime T: type) TUn entero aleatorio criptográfico de tipo T.