78 lines
1.6 KiB
Scheme
78 lines
1.6 KiB
Scheme
(define-interface collect-channels-interface
|
|
(export make-tagged-msg
|
|
is-tagged-msg?
|
|
tagged-msg-tag
|
|
tagged-msg-stripped
|
|
collect&reply/make-channel
|
|
send&collect/make-channel
|
|
is-collect&reply-channel?
|
|
is-send&collect-channel?
|
|
make-link
|
|
collect&reply/receive
|
|
collect&reply/receive-rv
|
|
collect&reply/send
|
|
collect&reply/send-rv
|
|
send&collect/send
|
|
send&collect/send-rv
|
|
send&collect/receive
|
|
send&collect/receive-rv))
|
|
|
|
(define-structure collect-channels collect-channels-interface
|
|
(open scheme-with-scsh
|
|
finite-types
|
|
srfi-9
|
|
threads
|
|
threads-internal
|
|
(with-prefix rendezvous cml-rv/)
|
|
(with-prefix rendezvous-channels cml-sync-ch/))
|
|
(files collect-channels))
|
|
|
|
(define-interface make-rule-interface
|
|
(export make-rule
|
|
is-rule?
|
|
rule-prereqs
|
|
rule-wants-build?
|
|
rule-build-func
|
|
rule-make))
|
|
|
|
(define-structure make-rule make-rule-interface
|
|
(open scheme-with-scsh
|
|
locks
|
|
with-lock
|
|
threads
|
|
srfi-1
|
|
srfi-9
|
|
finite-types
|
|
collect-channels
|
|
(with-prefix rendezvous cml-rv/)
|
|
(with-prefix rendezvous-channels cml-sync-ch/))
|
|
(files make-rule))
|
|
|
|
(define-interface make-rule-no-cml-interface
|
|
(export make-rule
|
|
is-rule?
|
|
rule-prereqs
|
|
rule-wants-build?
|
|
rule-build-func
|
|
rule-make))
|
|
|
|
(define-structure make-rule-no-cml make-rule-no-cml-interface
|
|
(open scheme-with-scsh
|
|
locks
|
|
with-lock
|
|
srfi-1
|
|
srfi-9)
|
|
(files make-rule-no-cml))
|
|
|
|
(define-interface makros-interface
|
|
(export (make-is-out-of-date? :syntax)
|
|
(makefile :syntax)
|
|
(makefile-rule :syntax)
|
|
(make :syntax)))
|
|
|
|
(define-structure makros makros-interface
|
|
(open scheme-with-scsh
|
|
srfi-1
|
|
make-rule)
|
|
(files makros))
|