1.3 KiB
1.3 KiB
functions
var received_fd = @as(i32, cmsg.dataPtr().*);
std.mem.copy(u8, buffer, &msg_buffer);
@ptrCast(*std.x.os.Socket.Message, &m)
os.exit(0xff);
var network_envvar = std.process.getEnvVarOwned(fba, "IPC_NETWORK") catch |err| switch(err) {
// error{ OutOfMemory, EnvironmentVariableNotFound, InvalidUtf8 } (ErrorSet)
.EnvironmentVariableNotFound => { return; }, // no need to contact IPCd
else => { return err; },
};
const log = std.log.scoped(.libipc_context);
log.err("context.deinit(): IndexOutOfBounds", .{});
log.debug("stuff(): IndexOutOfBounds", .{});
Functions done
receive_fd
send_fd
Test stuff
zig test src/main.zig
Documentation
zig build-exe -femit-docs -fno-emit-bin src/main.zig
ACCESS_LOGS ?= ./access.log
servedoc:
darkhttpd docs/ --addr 127.0.0.1 --port 35000 --log $(ACCESS_LOGS)
Errors
Double returning type => no need for specific return structures.
Timer
const Timer = std.time.Timer;
var timer = try Timer.start();
var duration = timer.read() / 1000000; // ns -> ms
var value = db.get(key) orelse return error.notHere;
There is still room for improvement.
When the result actually is a single value (anonymous hash).
src/switch.zig:125:37: error: binary operator |
has whitespace on one side, but not the other.
self.db.fetchSwapRemove(fd) |k,v|{