diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2014-08-12 20:37:52 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2014-08-12 20:37:52 -0700 |
commit | 9aee8dd619826e3fa73f665e72522a342742af0b (patch) | |
tree | dd1b9ee77ea67ae3d2a95954651cde272faf969e /eval.c | |
parent | 17c43f985b8c707e997fe65a20ce31430f51bb36 (diff) | |
download | txr-9aee8dd619826e3fa73f665e72522a342742af0b.tar.gz txr-9aee8dd619826e3fa73f665e72522a342742af0b.tar.bz2 txr-9aee8dd619826e3fa73f665e72522a342742af0b.zip |
When a variable is delimited by some form other than
the contents of a variable, fixed string or regex, we now
use the entire tail of the specline to find the match.
So for instance @var@(trailer)foo works as intuition
might expect.
* match.c (search_form): Static function removed.
(search_match): New static function based on search_form.
Does not handle regexes, and does not update c->bindings.
(h_var): Renamed local variable pat to next. Added a few
missing rlcp's. Combined the cases when pat is a cons to
one block so consp isn't repeatedly tested. Function now
handles a var followed by (sys:text ...) elements specially;
the first element of the text block is pulled out and
matched. Implemented "var delimiting spec" general case
which matches the entire tail of the spec at successive
character positions until a match is found, and the skipped
text goes into the variable.
Diffstat (limited to 'eval.c')
0 files changed, 0 insertions, 0 deletions