fix defclass and some scheme/gui argument schemevarfont binding
svn: r14042 original commit: d8d25debcd12d27588f31015d128b4b874ca3b8d
This commit is contained in:
parent
1653b798cd
commit
9eb42b71ee
|
@ -44,7 +44,7 @@
|
|||
|
||||
(define-struct decl (name super app-mixins intfs ranges mk-head body))
|
||||
(define-struct constructor (def))
|
||||
(define-struct meth (names mode desc def))
|
||||
(define-struct meth (names mode def))
|
||||
(define-struct spec (def))
|
||||
(define-struct impl (def))
|
||||
|
||||
|
@ -155,7 +155,7 @@
|
|||
(define (build-body decl body)
|
||||
`(,@(map (lambda (i)
|
||||
(cond [(constructor? i) ((constructor-def i))]
|
||||
[(meth? i) ((meth-def i) (meth-desc i))]
|
||||
[(meth? i) ((meth-def i))]
|
||||
[else i]))
|
||||
body)
|
||||
,(make-delayed-block (lambda (r d ri) (make-inherited-table r d ri decl)))))
|
||||
|
@ -426,16 +426,14 @@
|
|||
#'(make-meth '(name ...)
|
||||
'mode
|
||||
(lambda ()
|
||||
(make-splice
|
||||
(append-map (lambda (f)
|
||||
(cond [(impl? f) ((impl-def f))]
|
||||
[(spec? f) ((spec-def f))]
|
||||
[else (list f)]))
|
||||
(list extra ... desc ...))))
|
||||
(lambda (desc-splice)
|
||||
(defproc* #:mode send #:within cname
|
||||
([(name arg ...) result-type] ...)
|
||||
(desc-splice))))))]
|
||||
(make-splice
|
||||
(append-map (lambda (f)
|
||||
(cond [(impl? f) ((impl-def f))]
|
||||
[(spec? f) ((spec-def f))]
|
||||
[else (list f)]))
|
||||
(list extra ... desc ...))))))))]
|
||||
[(_ ([(name arg ...) result-type] ...) desc ...)
|
||||
#'(defmethod* #:mode public ([(name arg ...) result-type] ...) desc ...)]))
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user