summaryrefslogtreecommitdiffstats
path: root/regex.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2015-12-07 22:33:26 -0800
committerKaz Kylheku <kaz@kylheku.com>2015-12-07 22:33:26 -0800
commit1618886a0fb697303cba1e5cb9e669e84babce68 (patch)
tree7624bee8583fdbfef6b0b69005e28b710d821553 /regex.c
parent112258f992e83b60012add87f62ce9336222027f (diff)
downloadtxr-1618886a0fb697303cba1e5cb9e669e84babce68.tar.gz
txr-1618886a0fb697303cba1e5cb9e669e84babce68.tar.bz2
txr-1618886a0fb697303cba1e5cb9e669e84babce68.zip
range-regex returns range, not cons.
* regex.c (range_regex): Return range. (search_regst): Use appropriate accessors on range returned by range_regex. * lib.c (tok_where): Destructure range returned by range_regex, using range_bind. * txr.1: Documented changed behavior.
Diffstat (limited to 'regex.c')
-rw-r--r--regex.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/regex.c b/regex.c
index 859f9f8f..7643d22b 100644
--- a/regex.c
+++ b/regex.c
@@ -2388,7 +2388,7 @@ val range_regex(val haystack, val needle_regex, val start,
if (result) {
cons_bind (pos, len, result);
- rplacd(result, plus(pos, len));
+ return rcons(pos, plus(pos, len));
}
return result;
@@ -2484,7 +2484,7 @@ val regsub(val regex, val repl, val str)
val search_regst(val haystack, val needle_regex, val start_num, val from_end)
{
val range = range_regex(haystack, needle_regex, start_num, from_end);
- return if2(range, sub_str(haystack, car(range), cdr(range)));
+ return if2(range, sub_str(haystack, from(range), to(range)));
}
val match_regst(val str, val regex, val pos_in)