make subst structs transparent

original commit: 18078400b77114880e99e1c39913f8df96a0faa2
This commit is contained in:
Sam Tobin-Hochstadt 2010-06-29 17:25:48 -04:00
parent 887f054a55
commit 19bb208f4f

View File

@ -19,11 +19,11 @@
(for/hash ([v (in-list vs)] [t (in-list ts)])
(values v (t-subst t))))
(d-s/c subst-rhs ())
(d-s/c (t-subst subst-rhs) ([type Type/c]))
(d-s/c (i-subst subst-rhs) ([types (listof Type/c)]))
(d-s/c (i-subst/starred subst-rhs) ([types (listof Type/c)] [starred Type/c]))
(d-s/c (i-subst/dotted subst-rhs) ([types (listof Type/c)] [dty Type/c] [dbound symbol?]))
(d-s/c subst-rhs () #:transparent)
(d-s/c (t-subst subst-rhs) ([type Type/c]) #:transparent)
(d-s/c (i-subst subst-rhs) ([types (listof Type/c)]) #:transparent)
(d-s/c (i-subst/starred subst-rhs) ([types (listof Type/c)] [starred Type/c]) #:transparent)
(d-s/c (i-subst/dotted subst-rhs) ([types (listof Type/c)] [dty Type/c] [dbound symbol?]) #:transparent)
(define substitution/c (hash/c symbol? subst-rhs? #:immutable #t))