xref: /inferno-os/appl/cmd/tokenize.b (revision 37da2899f40661e3e9631e497da8dc59b971cbd0)
1implement Tokenize;
2
3include "sys.m";
4	sys: Sys;
5
6include "draw.m";
7
8Tokenize: module
9{
10	init:	fn(nil: ref Draw->Context, nil: list of string);
11};
12
13stderr: ref Sys->FD;
14
15usage()
16{
17	  sys->fprint(stderr, "Usage: tokenize string delimiters\n");
18	  raise "fail: usage";
19}
20
21init(nil: ref Draw->Context, args : list of string)
22{
23	sys = load Sys Sys->PATH;
24	stderr = sys->fildes(2);
25
26	if(args != nil)
27		args = tl args;
28	if(len args != 2)
29		usage();
30	(nil, l) := sys->tokenize(hd args, hd tl args);
31	for(; l != nil; l = tl l)
32		sys->print("%s\n", hd l);
33}
34