Revert "Use module-ref for make-base-operation"
This isn't working, with make-base-operation changing from part of a
macro to a procedure, I'm not sure how to maintain compatability. I
think just switching to guile-fibers-next everywhere is the approach
to take.
This reverts commit f41d1853ce
.
This commit is contained in:
parent
a6c96aa1da
commit
3aab1be1e7
1 changed files with 11 additions and 13 deletions
|
@ -119,19 +119,17 @@
|
|||
|
||||
(define (make-wait-operation ready? schedule-when-ready port
|
||||
port-ready-fd this-procedure)
|
||||
((module-ref (resolve-interface '(fibers operations))
|
||||
'make-base-operation)
|
||||
#f
|
||||
(lambda _
|
||||
(and (ready? port) values))
|
||||
(lambda (flag sched resume)
|
||||
(define (commit)
|
||||
(match (atomic-box-compare-and-swap! flag 'W 'S)
|
||||
('W (resume values))
|
||||
('C (commit))
|
||||
('S #f)))
|
||||
(schedule-when-ready
|
||||
sched (port-ready-fd port) commit))))
|
||||
(make-base-operation #f
|
||||
(lambda _
|
||||
(and (ready? port) values))
|
||||
(lambda (flag sched resume)
|
||||
(define (commit)
|
||||
(match (atomic-box-compare-and-swap! flag 'W 'S)
|
||||
('W (resume values))
|
||||
('C (commit))
|
||||
('S #f)))
|
||||
(schedule-when-ready
|
||||
sched (port-ready-fd port) commit))))
|
||||
|
||||
(define (wait-until-port-readable-operation port)
|
||||
"Make an operation that will succeed when PORT is readable."
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue