in integration-test/lincheck/src/main/org/jetbrains/lincheck_test/datastructures/SequentialIntChannel.kt [65:83]
fun poll(): Int? {
if (buffer.size > 0) {
val res = buffer.removeAt(0)
while (true) {
if (senders.isEmpty()) break
val (s, x) = senders.removeAt(0)
if (s.tryResume0(Unit)) {
buffer.add(x)
break
}
}
return res
}
while (true) {
if (senders.isEmpty()) return null
val (s, x) = senders.removeAt(0)
if (s.tryResume0(Unit)) return x
}
}