From 0a344194aa717aeff7079560ed1624c97066447b Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Sun, 24 Jan 2021 13:23:51 -0800 Subject: doc: add back discussion about (rcons ...) pattern. * txr.1: Add anote that a pattern a..b matches rcons syntax, and add examples. * tests/011/patmatch.tl: new examples from doc added as tests. --- txr.1 | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'txr.1') diff --git a/txr.1 b/txr.1 index 99e03045..3d64f752 100644 --- a/txr.1 +++ b/txr.1 @@ -39878,6 +39878,12 @@ is matched against its .code to part. +Note that if the range expression notation +.code a..b +is used as a pattern, that is actualy a list pattern, due to +that being a syntactic sugar for +.codn "(rcons a b)" . + .TP* Examples: .verb @@ -39886,6 +39892,13 @@ part. (if-match #R(10 20) #R(1 2) :yes :no) -> :no (when-match #R(@a @b) 1..2 (list a b)) -> (1 2) + + ;; not a range match! rcons syntax match + (when-match @a..@b '1..2 (list a b)) -> (1 2) + + ;; above, de-sugared: + (when-match (rcons @a @b) (rcons 1 2) (list a b)) -> (1 2) + .brev .coNP Pattern operator @ struct -- cgit v1.2.3