Fixed {~^ power:nat} for the match expander (the . rest was missing)
This commit is contained in:
parent
c7c2549695
commit
7465aead4c
|
@ -285,6 +285,8 @@
|
|||
(syntax-parser
|
||||
#:context context
|
||||
#:literals (^ * + - ∞ once)
|
||||
[({~do (displayln this-syntax)} #:oops-nope)
|
||||
#'trbgfdsctgbrfvdc]
|
||||
[()
|
||||
#'(list)]
|
||||
[rest:not-stx-pair
|
||||
|
@ -335,7 +337,7 @@
|
|||
#`(list-rest-ish [] base ellipsis #,(xl #'rest))]
|
||||
[(:base {~^ once} . rest)
|
||||
#`(list-rest-ish [] base #|no ellipsis|# #,(xl #'rest))]
|
||||
[(:base {~^ power:nat})
|
||||
[(:base {~^ power:nat} . rest)
|
||||
#:with occurrences (gensym 'occurrences)
|
||||
#`(list-rest-ish [(? (λ (_) (= (length occurrences) power)))]
|
||||
(and occurrences base) ooo
|
||||
|
|
|
@ -200,9 +200,9 @@
|
|||
(void))
|
||||
|
||||
(test-begin
|
||||
"{once}, {1} and a simple pattern variable"
|
||||
(check-match '(a a a a a a a a)
|
||||
[(xlist a1 ^ {once} a2 ^ {1} a3 a4 ^ *)
|
||||
(list a4 a3 a2 a1)]
|
||||
'((a a a a a) a (a) a))
|
||||
(void))
|
||||
"{once}, {1} and a simple pattern variable"
|
||||
(check-match '(a a a a a a a a)
|
||||
[(xlist a1 ^ {once} a2 ^ {1} a3 a4 ^ *)
|
||||
(list a4 a3 a2 a1)]
|
||||
'((a a a a a) a (a) a))
|
||||
(void))
|
||||
|
|
Loading…
Reference in New Issue
Block a user