From c7d5569546118f6ac51cc40148bb394048abbc49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Mon, 6 Jul 2026 09:36:16 +0200 Subject: [PATCH] std.elf: add helper methods on CLASS and DATA --- lib/std/elf.zig | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/std/elf.zig b/lib/std/elf.zig index a22c3f4c29c674c8830299b799dd89e03933e56a..e742135955789f48a42099b19cf8480540cedc1e 100644 --- a/lib/std/elf.zig +++ b/lib/std/elf.zig @@ -1644,6 +1644,14 @@ pub const CLASS = enum(u8) { pub const NUM = @typeInfo(CLASS).@"enum".field_names.len; + pub inline fn size(class: CLASS) u32 { + return switch (class) { + .NONE, _ => unreachable, + .@"32" => 4, + .@"64" => 8, + }; + } + pub fn ElfN(comptime class: CLASS) type { return switch (class) { .NONE, _ => comptime unreachable, @@ -1668,6 +1676,14 @@ pub const DATA = enum(u8) { _, pub const NUM = @typeInfo(DATA).@"enum".field_names.len; + + pub inline fn endian(data: DATA) std.lang.Endian { + return switch (data) { + .NONE, _ => unreachable, + .@"2LSB" => .little, + .@"2MSB" => .big, + }; + } }; pub const OSABI = enum(u8) { -- 2.54.0