Fix contracts in TR.
original commit: 2b8efd66769258c006fd08b571027cdb4fd89a69
This commit is contained in:
parent
84c64fb0d0
commit
33fda17516
|
@ -42,18 +42,7 @@
|
|||
[#:fold-rhs (*OrFilter (map filter-rec-id fs))]
|
||||
[#:frees (λ (f) (combine-frees (map f fs)))])
|
||||
|
||||
(def-filter FilterSet (thn els)
|
||||
[#: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?])]
|
||||
(def-filter FilterSet ([thn Filter/c] [els Filter/c])
|
||||
[#:fold-rhs (*FilterSet (filter-rec-id thn) (filter-rec-id els))])
|
||||
|
||||
;; represents no info about the filters of this expression
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
(define-signature tc-lambda^
|
||||
([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/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^
|
||||
([cond-contracted tc/app (syntax? . -> . tc-results/c)]
|
||||
|
|
Loading…
Reference in New Issue
Block a user