Skip to content

Commit c98483b

Browse files
committed
Broadcast example now use afold
1 parent 93b384d commit c98483b

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src/test/scala/example/BroadcasterSuite.scala

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,22 +25,22 @@ class Broadcaster[A]
2525
val sendc: Channel[A] = makeChannel()
2626
val quitc: Channel[Boolean] = makeChannel()
2727

28-
/*
29-
select.fold(makeChannel[Message[A]]) { (last,s) =>
28+
select.afold(makeChannel[Message[A]]()) { (last,s) =>
3029
s match {
31-
case v: sendc.read =>
32-
val next = makeChannel[Message[A]]
33-
last <~ Message(next,v)
30+
case v: sendc.read @unchecked =>
31+
val next = makeChannel[Message[A]]()
32+
last <~ ValueMessage(next,v)
3433
next
35-
case r: listenc.read =>
34+
case r: listenc.read @unchecked =>
3635
r <~ last
3736
last
3837
case q: quitc.read =>
39-
implicitly[FlowTermination[Unit]].doExit(())
38+
CurrentFlowTermination.exit(last)
4039
}
4140
}
42-
*/
41+
4342

43+
/*
4444
go {
4545
var last = makeChannel[Message[A]]()
4646
for (s <- select.forever) {
@@ -58,6 +58,7 @@ class Broadcaster[A]
5858
}
5959
}
6060
}
61+
*/
6162

6263
def alisten(): Future[Receiver[A]] = go {
6364
val c = makeChannel[Channel[Message[A]]]()

0 commit comments

Comments
 (0)