summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2011-09-28 08:19:58 -0700
committerKaz Kylheku <kaz@kylheku.com>2011-09-28 08:19:58 -0700
commit88a0ca81d753a6393b06fdabb984aeff48dcaa3b (patch)
tree1f901fe70fd43c3abe633c88866042463b308b1f /ChangeLog
parentea7e91958c74d51ce05245243715dda42715e6ab (diff)
downloadtxr-88a0ca81d753a6393b06fdabb984aeff48dcaa3b.tar.gz
txr-88a0ca81d753a6393b06fdabb984aeff48dcaa3b.tar.bz2
txr-88a0ca81d753a6393b06fdabb984aeff48dcaa3b.zip
* match.c (match_line): Logic restructured to allow for
regex variables which also have nested variables. Previously this code was assuming that the cases were mutually exclusive, and the parser happened to work that way. Also, added support for a "double var" match which occurs when an unbound variable is followed by a regex variable. This case should be allowed because it makes sense. It's similar to a variable followed by a regex, except that the regex is also a variable binding. * parser.y (o_elems_transform): New function. (o_elems_opt, o_elems_opt2, quasilit): Transform o_elems with new function. This is needed because subst_vars doesn't deal with the nested var syntax for consecutive variables. (var): New syntax case '{' IDENT exprs '}' elem. This allows consecutive variables to be nested in all cases.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog19
1 files changed, 19 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 7fc9e6af..91978a74 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,22 @@
+2011-09-28 Kaz Kylheku <kaz@kylheku.com>
+
+ * match.c (match_line): Logic restructured to allow for
+ regex variables which also have nested variables.
+ Previously this code was assuming that the cases were
+ mutually exclusive, and the parser happened to work that way.
+ Also, added support for a "double var" match which occurs
+ when an unbound variable is followed by a regex variable.
+ This case should be allowed because it makes sense.
+ It's similar to a variable followed by a regex, except
+ that the regex is also a variable binding.
+
+ * parser.y (o_elems_transform): New function.
+ (o_elems_opt, o_elems_opt2, quasilit): Transform o_elems with new
+ function. This is needed because subst_vars doesn't
+ deal with the nested var syntax for consecutive variables.
+ (var): New syntax case '{' IDENT exprs '}' elem. This
+ allows consecutive variables to be nested in all cases.
+
2011-09-27 Kaz Kylheku <kaz@kylheku.com>
* parser.y ('{', '}'): Nope, still not right.