diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2011-11-20 12:02:13 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2011-11-20 12:02:13 -0800 |
commit | 71cacde9c896a1532247a349a298e68fd20500a8 (patch) | |
tree | 685d2fe504ac2b1cab28144f386e72039992b635 /txr.1 | |
parent | 811b58e8f70fac421a905a2b627449dfd079958c (diff) | |
download | txr-71cacde9c896a1532247a349a298e68fd20500a8.tar.gz txr-71cacde9c896a1532247a349a298e68fd20500a8.tar.bz2 txr-71cacde9c896a1532247a349a298e68fd20500a8.zip |
Relaxing :vars in collect/coll a little bit.
* match.c (h_coll, v_collect): Only throw an error about
missing required variables if the collect iteration collected some new
variables. This allows strict collects with :vars to have
some cases which explicitly match and skip unwanted material,
without binding variables. Also, print all missing variables in the
diagnostic.
* txr.1: Mention this special exception.
* RELNOTES: Updated.
Diffstat (limited to 'txr.1')
-rw-r--r-- | txr.1 | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -2062,6 +2062,8 @@ variables do not propagate. Furthermore, for any variable which is not specified with a default value, the collect body, whenever it matches successfully, must bind that variable. If it neglects to bind the variable, an exception of type query_error is thrown. +(If a collect body matches successfully, but produces no new bindings, then +this error is suppressed.) For any variable which does have a default value, if the collect body neglects to bind that variable, the behavior is as if the collect did bind that variable |