summaryrefslogtreecommitdiffstats
path: root/parser.y
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2011-09-29 12:12:32 -0700
committerKaz Kylheku <kaz@kylheku.com>2011-09-29 12:12:32 -0700
commitb177dea74e5280ccaeeba4bd90fdf6d7967035f1 (patch)
tree5508c4bc6ee4457d6de5e3a3024c6e23600c1711 /parser.y
parent4e33de0b5b4a32e9b9b44c2ac23f4d757eb6e92e (diff)
downloadtxr-b177dea74e5280ccaeeba4bd90fdf6d7967035f1.tar.gz
txr-b177dea74e5280ccaeeba4bd90fdf6d7967035f1.tar.bz2
txr-b177dea74e5280ccaeeba4bd90fdf6d7967035f1.zip
* match.c (chars_k): New variable.
(match_line): Keyword arguments in coll implemented. (match_init): chars_k variable initialized. * parser.l (COLL): Lexical syntax changed to allow for argument material. * parser.y (elem): Coll syntax rewritten for arguments. * txr.1: Updated.
Diffstat (limited to 'parser.y')
-rw-r--r--parser.y6
1 files changed, 3 insertions, 3 deletions
diff --git a/parser.y b/parser.y
index 0972c100..17ad883a 100644
--- a/parser.y
+++ b/parser.y
@@ -201,9 +201,9 @@ elem : TEXT { $$ = string_own($1); }
| list { $$ = $1; }
| regex { $$ = cons(regex_compile(rest($1)),
rest($1)); }
- | COLL elems END { $$ = list(coll_s, $2, nao); }
- | COLL elems
- UNTIL elems END { $$ = list(coll_s, $2, $4, nao); }
+ | COLL exprs_opt ')' elems END { $$ = list(coll_s, $4, nil, $2, nao); }
+ | COLL exprs_opt ')' elems
+ UNTIL elems END { $$ = list(coll_s, $4, $6, $2, nao); }
| COLL error { $$ = nil;
yybadtoken(yychar, lit("coll clause")); }
;