summaryrefslogtreecommitdiff
path: root/source/command_line_interface.elna
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-02-15 13:17:33 +0100
committerEugen Wissner <belka@caraus.de>2026-02-15 13:17:33 +0100
commit80364d429e373dd1fcea7cc3cc67ff981ebdb5b6 (patch)
treea303ed55a1fc277e6c4507e2c4d25aaa5a415dd7 /source/command_line_interface.elna
parentfe055aa1ae36ee8058a2da7eabc63da913123a69 (diff)
downloadelna-80364d429e373dd1fcea7cc3cc67ff981ebdb5b6.tar.gz
Remove the old version code
Diffstat (limited to 'source/command_line_interface.elna')
-rw-r--r--source/command_line_interface.elna93
1 files changed, 0 insertions, 93 deletions
diff --git a/source/command_line_interface.elna b/source/command_line_interface.elna
deleted file mode 100644
index 040fdeb..0000000
--- a/source/command_line_interface.elna
+++ /dev/null
@@ -1,93 +0,0 @@
-(* This Source Code Form is subject to the terms of the Mozilla Public License,
- v. 2.0. If a copy of the MPL was not distributed with this file, You can
- obtain one at https://mozilla.org/MPL/2.0/. *)
-
-(*
- Command line handling.
-*)
-module;
-
-import cstdlib, cstring, common;
-
-type
- CommandLine* = record
- input: ^Char;
- output: ^Char;
- lex: Bool;
- parse: Bool
- end;
-
-proc parse_command_line*(argc: Int, argv: ^^Char) -> ^CommandLine;
-var
- parameter: ^Char;
- i: Int;
- result: ^CommandLine;
- parsed: Bool;
-begin
- i := 1;
- result := cast(malloc(#size(CommandLine)): ^CommandLine);
- result^.lex := false;
- result^.parse := false;
- result^.input := nil;
- result^.output := nil;
-
- while i < argc & result <> nil do
- parameter := (argv + i)^;
- parsed := false;
-
- if strcmp(parameter, "--lex\0".ptr) = 0 then
- parsed := true;
- result^.lex := true
- end;
- if strcmp(parameter, "--parse\0".ptr) = 0 then
- parsed := true;
- result^.parse := true
- end;
- if strcmp(parameter, "-o\0".ptr) = 0 then
- i := i + 1;
-
- if i = argc then
- write_s("Fatal error: expecting a file name following -o.");
- result := nil
- end;
- if i < argc then
- parameter := (argv + i)^;
- result^.output := parameter
- end;
- parsed := true
- end;
- if (parameter^ <> '-') & ~parsed then
- parsed := true;
-
- if result^.input <> nil then
- write_s("Fatal error: only one source file can be compiled at once. First given \"");
- write_z(result^.input);
- write_s("\", then \"");
- write_z(parameter);
- write_s("\".\n");
- result := nil
- end;
- if result <> nil then
- result^.input := parameter
- end
- end;
- if ~parsed then
- write_s("Fatal error: unknown command line options: ");
-
- write_z(parameter);
- write_s(".\n");
-
- result := nil
- end;
-
- i := i + 1
- end;
- if result <> nil & result^.input = nil then
- write_s("Fatal error: no input files.\n");
- result := nil
- end;
-
- return result
-end;
-
-end.