예제 #1
0
파일: kw.c 프로젝트: AlainODea/illumos-gate
/*
 * test main for kw module, usage: a.out fname [template...]
 */
int
main(int argc, char *argv[])
{
	int i;
	struct fn *src = fn_new(NULL);
	struct fn *dst = fn_new(NULL);

	err_init(argv[0]);
	setbuf(stdout, NULL);

	Now = time(0);

	if (argc < 2)
		err(0, "first arg must be fname");

	kw_init(fn_new(argv[1]), NULL);

	kw_print(stdout);

	for (i = 2; i < argc; i++) {
		int n;

		for (n = -1; n < 2; n++) {
			fn_renew(src, argv[i]);
			fn_renew(dst, NULL);
			printf("expand<%s> n %d hasn %d ",
			    argv[i], n, kw_expand(src, dst, n, B_FALSE));
			printf("result <%s>\n", fn_s(dst));
		}
	}

	err_done(0);
	/* NOTREACHED */
	return (0);
}
예제 #2
0
void handle_kw(FILE *yyout, const char *yytext, const struct kw_conf *s)
{
    kw_print(yyout, yytext, *s);
}