diff --git a/minimart/route.rkt b/minimart/route.rkt index 2015a18..01b36c3 100644 --- a/minimart/route.rkt +++ b/minimart/route.rkt @@ -109,12 +109,6 @@ (define (rwild r) (rseq ? r)) (define (rwildseq r) (if (matcher-empty? r) r (wildcard-sequence r))) -(define (rseq* x . xs) - (let walk ((xs (cons x xs))) - (match xs - [(list r) r] - [(cons e xs1) (rseq e (walk xs1))]))) - ;; Any -> Boolean ;; Racket objects are structures, so we reject them explicitly for ;; now, leaving them opaque to unification. @@ -912,6 +906,12 @@ (define EAB (E (set 'A 'B))) + (define (rseq* x . xs) + (let walk ((xs (cons x xs))) + (match xs + [(list r) r] + [(cons e xs1) (rseq e (walk xs1))]))) + (check-equal? (intersect ? ?) (rwild EAB)) (check-equal? (intersect 'a ?) (rseq 'a EAB)) (check-equal? (intersect 123 ?) (rseq 123 EAB))