equal
deleted
inserted
replaced
96 val (results, continue) = consume(reqs.map(_.arg)) |
96 val (results, continue) = consume(reqs.map(_.arg)) |
97 |
97 |
98 for { (Some(req), Some(res)) <- reqs.map(Some(_)).zipAll(results.map(Some(_)), None, None) } |
98 for { (Some(req), Some(res)) <- reqs.map(Some(_)).zipAll(results.map(Some(_)), None, None) } |
99 { |
99 { |
100 (req.ack, res) match { |
100 (req.ack, res) match { |
101 case ((Some(a), _)) => a.change(_ => Some(res)) |
101 case (Some(a), _) => a.change(_ => Some(res)) |
102 case ((None, Exn.Res(_))) => |
102 case (None, Exn.Res(_)) => |
103 case ((None, Exn.Exn(exn))) => failure(exn) |
103 case (None, Exn.Exn(exn)) => failure(exn) |
104 } |
104 } |
105 } |
105 } |
106 |
106 |
107 if (continue) main_loop(msgs.drop(reqs.length)) |
107 if (continue) main_loop(msgs.drop(reqs.length)) |
108 else robust_finish() |
108 else robust_finish() |