summaryrefslogtreecommitdiff
path: root/appl/cmd/tokenize.b
blob: e5bcf4160ba83e0804476ee8b9b3f0ac44cf2d24 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
implement Tokenize;

include "sys.m";
	sys: Sys;

include "draw.m";

Tokenize: module
{
	init:	fn(nil: ref Draw->Context, nil: list of string);
};

stderr: ref Sys->FD;

usage()
{
	  sys->fprint(stderr, "Usage: tokenize string delimiters\n");
	  raise "fail: usage";
}

init(nil: ref Draw->Context, args : list of string)
{
	sys = load Sys Sys->PATH;
	stderr = sys->fildes(2);

	if(args != nil)
		args = tl args;
	if(len args != 2)
		usage();
	(nil, l) := sys->tokenize(hd args, hd tl args);
	for(; l != nil; l = tl l)
		sys->print("%s\n", hd l);
}