Make static contracts for channels.

original commit: 333a93000ab2593950e123cda67345a6e4e28f66
This commit is contained in:
Eric Dobson 2013-12-14 14:21:54 -08:00
parent e01a695021
commit 37ec886258
2 changed files with 2 additions and 4 deletions

View File

@ -306,11 +306,8 @@
(parameter/sc (t->sc in) (t->sc out))]
[(Hashtable: k v)
(hash/sc (t->sc k) (t->sc v))]
;; TODO add channel static contracts
#;
[(Channel: t)
(set-chaperone!)
#`(channel/c #,(t->c/both t))]
(channel/sc (t->sc t))]
[else
(fail)]))))

View File

@ -126,4 +126,5 @@
((box/sc (#:invariant)) box/c #:chaperone)
((parameter/sc (#:contravariant) (#:covariant)) parameter/c #:chaperone)
((sequence/sc . (#:covariant)) sequence/c #:impersonator)
((channel/sc . (#:invariant)) channel/c #:chaperone)
((continuation-mark-key/sc (#:invariant)) continuation-mark-key/c #:chaperone))