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:
Christopher Baines 2025-03-04 14:09:31 +00:00
parent a6c96aa1da
commit 3aab1be1e7

View file

@ -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."