Fix contracts in TR.
This commit is contained in:
parent
17b9ed0a75
commit
2b8efd6676
|
@ -42,18 +42,7 @@
|
||||||
[#:fold-rhs (*OrFilter (map filter-rec-id fs))]
|
[#:fold-rhs (*OrFilter (map filter-rec-id fs))]
|
||||||
[#:frees (λ (f) (combine-frees (map f fs)))])
|
[#:frees (λ (f) (combine-frees (map f fs)))])
|
||||||
|
|
||||||
(def-filter FilterSet (thn els)
|
(def-filter FilterSet ([thn Filter/c] [els Filter/c])
|
||||||
[#:contract (->i ([t any/c]
|
|
||||||
[e any/c])
|
|
||||||
(#:syntax [stx #f])
|
|
||||||
#:pre (t e)
|
|
||||||
(and (cond [(Bot? t) #t]
|
|
||||||
[(Bot? e) (Top? t)]
|
|
||||||
[else (Filter/c-predicate? t)])
|
|
||||||
(cond [(Bot? e) #t]
|
|
||||||
[(Bot? t) (Top? e)]
|
|
||||||
[else (Filter/c-predicate? e)]))
|
|
||||||
[result FilterSet?])]
|
|
||||||
[#:fold-rhs (*FilterSet (filter-rec-id thn) (filter-rec-id els))])
|
[#:fold-rhs (*FilterSet (filter-rec-id thn) (filter-rec-id els))])
|
||||||
|
|
||||||
;; represents no info about the filters of this expression
|
;; represents no info about the filters of this expression
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
(define-signature tc-lambda^
|
(define-signature tc-lambda^
|
||||||
([cond-contracted tc/lambda (syntax? syntax? syntax? . -> . tc-results/c)]
|
([cond-contracted tc/lambda (syntax? syntax? syntax? . -> . tc-results/c)]
|
||||||
[cond-contracted tc/lambda/check (syntax? syntax? syntax? tc-results/c . -> . tc-results/c)]
|
[cond-contracted tc/lambda/check (syntax? syntax? syntax? tc-results/c . -> . tc-results/c)]
|
||||||
[cond-contracted tc/rec-lambda/check (syntax? syntax? syntax? syntax? (listof Type/c) tc-results/c . -> . tc-results/c)]))
|
[cond-contracted tc/rec-lambda/check (syntax? syntax? syntax? (listof Type/c) tc-results/c . -> . tc-results/c)]))
|
||||||
|
|
||||||
(define-signature tc-app^
|
(define-signature tc-app^
|
||||||
([cond-contracted tc/app (syntax? . -> . tc-results/c)]
|
([cond-contracted tc/app (syntax? . -> . tc-results/c)]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user