diff options
| author | seh <henesy.dev@gmail.com> | 2019-03-18 16:36:39 -0500 |
|---|---|---|
| committer | seh <henesy.dev@gmail.com> | 2019-03-18 16:36:39 -0500 |
| commit | 0283ccf588a5243b2a992d3d726c2f1344c5438a (patch) | |
| tree | 72c7fd3b20f147299c52aebfc8829adcf4b158cc /Args/args.b | |
| parent | 5cd0b7d8139f0cd5f4af1f9f3b82fe2cd3f37288 (diff) | |
stdlib modules have -M suffix for dir ;; frame for lists example
Diffstat (limited to 'Args/args.b')
| -rw-r--r-- | Args/args.b | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/Args/args.b b/Args/args.b deleted file mode 100644 index 392f371..0000000 --- a/Args/args.b +++ /dev/null @@ -1,54 +0,0 @@ -implement Args; - -include "sys.m"; -include "draw.m"; - -include "arg.m"; - -sys: Sys; -print: import sys; - -Args: module { - init: fn(nil: ref Draw->Context, argv: list of string); -}; - -init(nil: ref Draw->Context, argv: list of string) { - sys = load Sys Sys->PATH; - arg := load Arg Arg->PATH; - if(arg == nil) - raise "bad module load"; - - arg->init(argv); - arg->setusage(arg->progname() + " [-r] [-c mark] words..."); - - rev := 0; - mark := "→ "; - - while((opt := arg->opt()) != 0) - case opt { - 'r' => - rev = 1; - 'c' => - mark = arg->earg(); - * => - arg->usage(); - } - - argv = arg->argv(); - - print("Argc after flags: %d\n", len argv); - - if(rev) { - argl: list of string; - - for(; argv != nil; argv = tl argv) - argl = hd argv :: argl; - - argv = argl; - } - - for(; argv != nil; argv = tl argv) - sys->print("%s %s\n", mark, hd argv); - - exit; -} |
