aboutsummaryrefslogtreecommitdiff
path: root/lib/std/os.zig
diff options
context:
space:
mode:
authordata-man <datamanrb@gmail.com>2019-12-06 06:29:23 +0500
committerAndrew Kelley <andrew@ziglang.org>2020-01-05 16:52:36 -0500
commit2f6b045fb13b6a49e5185fa0f4006bef1dacd0d7 (patch)
tree2b4e3ba5b75276e3b1ee6ce2c9199efd5661856b /lib/std/os.zig
parent62bebda270d44a163a69393c9e189c2b1811f023 (diff)
downloadzig-2f6b045fb13b6a49e5185fa0f4006bef1dacd0d7.tar.gz
zig-2f6b045fb13b6a49e5185fa0f4006bef1dacd0d7.zip
Add std.os.getrusage
Diffstat (limited to 'lib/std/os.zig')
-rw-r--r--lib/std/os.zig11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/std/os.zig b/lib/std/os.zig
index 878d1a57e7..17945b9ce4 100644
--- a/lib/std/os.zig
+++ b/lib/std/os.zig
@@ -3325,3 +3325,14 @@ pub fn memfd_create(name: []const u8, flags: u32) !fd_t {
const name_t = try toMemFdPath(name);
return memfd_createC(&name_t, flags);
}
+
+pub fn getrusage(who: i32) rusage {
+ var result: rusage = undefined;
+ const rc = system.getrusage(who, &result);
+ switch (errno(rc)) {
+ 0 => return result,
+ EINVAL => unreachable,
+ EFAULT => unreachable,
+ else => unreachable,
+ }
+}