summaryrefslogtreecommitdiff
path: root/elf/fmt.lua
diff options
context:
space:
mode:
authorSunil Nimmagadda <sunil@nimmagadda.net>2026-10-23 22:43:44 +0530
committerSunil Nimmagadda <sunil@nimmagadda.net>2026-10-23 22:44:48 +0530
commit79f6b161f892f621a909ce1df99b3c680f3682a2 (patch)
tree7647bed7ccaa977f3cd28dcc8283ceef63265e57 /elf/fmt.lua
parentd46e3e7761a133d58b6c77058473d9edc8a54744 (diff)
Refactor: Move to an elf module.
While here, define a elf.d.lua to help author type check configuration file.
Diffstat (limited to 'elf/fmt.lua')
-rw-r--r--elf/fmt.lua17
1 files changed, 17 insertions, 0 deletions
diff --git a/elf/fmt.lua b/elf/fmt.lua
new file mode 100644
index 0000000..44498d4
--- /dev/null
+++ b/elf/fmt.lua
@@ -0,0 +1,17 @@
+local constants = require("elf.constants")
+
+local M = {}
+
+---@param endian Endian
+---@nodiscard
+function M.endian(endian)
+ return (endian == constants.Endian.big) and ">" or "<"
+end
+
+---@param class Class
+---@nodiscard
+function M.word(class)
+ return (class == constants.Class.bit64) and "I8" or "I4"
+end
+
+return M