aboutsummaryrefslogtreecommitdiff
path: root/src/cli/args.h
diff options
context:
space:
mode:
authorhachem <im@hachem.wtf>2026-08-30 00:59:52 +0200
committerhachem <im@hachem.wtf>2026-08-30 00:59:52 +0200
commit11d3e0294d6c4d657c45c6f8de23dd628b61680d (patch)
treef58b7b57efe3447dbbe0f07fd47c30a8fc5d44e7 /src/cli/args.h
parentcd04e59647a9440e6b362b3a46b36f46bf2b2576 (diff)
add: command-line argument parser
Diffstat (limited to 'src/cli/args.h')
-rw-r--r--src/cli/args.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/cli/args.h b/src/cli/args.h
new file mode 100644
index 0000000..f80b736
--- /dev/null
+++ b/src/cli/args.h
@@ -0,0 +1,26 @@
+#pragma once
+
+enum Assembler
+{
+ ASSEMBLER_NASM,
+ ASSEMBLER_FASM,
+ ASSEMBLER_MASM,
+};
+
+enum ParseResult
+{
+ PARSE_OK,
+ PARSE_EXIT,
+ PARSE_ERROR,
+};
+
+struct Args
+{
+ const char* input_path;
+ const char* output_path;
+ enum Assembler target;
+};
+
+enum ParseResult parse_args(int argc, char** argv, struct Args* args);
+void print_usage(const char* program);
+void print_version(void);