Allow dummy filtersets

original commit: 41f0152435e5f8ae7edefa75b1c4e965cf6349df
This commit is contained in:
Sam Tobin-Hochstadt 2010-05-12 17:31:58 -04:00
parent d1153d23e0
commit 5fb5d7125b

View File

@ -24,12 +24,13 @@
(subst-object old-obj k o #t)))]))
(d/c (subst-filter-set fs k o polarity [t #f])
(->* (FilterSet? name-ref/c Object? boolean?) ((or/c #f Type/c)) FilterSet?)
(->* ((or/c FilterSet? NoFilter?) name-ref/c Object? boolean?) ((or/c #f Type/c)) FilterSet?)
(define extra-filter (if t (make-TypeFilter t null k) -top))
(match fs
[(FilterSet: f+ f-)
(combine (subst-filter (-and extra-filter f+) k o polarity)
(subst-filter (-and extra-filter f-) k o polarity))]))
(subst-filter (-and extra-filter f-) k o polarity))]
[_ (-FS -top -top)]))
(d/c (subst-type t k o polarity)
(-> Type/c name-ref/c Object? boolean? Type/c)