Contract generation for continuation mark keys
This commit is contained in:
parent
29d54fb0d0
commit
5fbeffaec6
|
@ -1,5 +1,7 @@
|
||||||
#lang racket/base
|
#lang racket/base
|
||||||
|
|
||||||
|
;; Contract generation for Typed Racket
|
||||||
|
|
||||||
(provide type->contract define/fixup-contract? change-contract-fixups)
|
(provide type->contract define/fixup-contract? change-contract-fixups)
|
||||||
|
|
||||||
(require
|
(require
|
||||||
|
@ -337,6 +339,9 @@
|
||||||
#`(promise/c #,(t->c t))]
|
#`(promise/c #,(t->c t))]
|
||||||
[(Opaque: p? cert)
|
[(Opaque: p? cert)
|
||||||
#`(flat-named-contract (quote #,(syntax-e p?)) #,(cert p?))]
|
#`(flat-named-contract (quote #,(syntax-e p?)) #,(cert p?))]
|
||||||
|
[(Continuation-Mark-Key: t)
|
||||||
|
(set-chaperone!)
|
||||||
|
#`(continuation-mark-key/c #,(t->c t))]
|
||||||
;; TODO
|
;; TODO
|
||||||
[(F: v) (cond [(assoc v (vars)) => second]
|
[(F: v) (cond [(assoc v (vars)) => second]
|
||||||
[else (int-err "unknown var: ~a" v)])]
|
[else (int-err "unknown var: ~a" v)])]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user