in src/main/scala/com/twitter/stitch/TryBuffer.scala [347:383]
def joinMap[A, B, C, D, E, F, G, H, I, Z](
as: ArrayBuffer[Try[A]],
bs: ArrayBuffer[Try[B]],
cs: ArrayBuffer[Try[C]],
ds: ArrayBuffer[Try[D]],
es: ArrayBuffer[Try[E]],
fs: ArrayBuffer[Try[F]],
gs: ArrayBuffer[Try[G]],
hs: ArrayBuffer[Try[H]],
is: ArrayBuffer[Try[I]],
k: (A, B, C, D, E, F, G, H, I) => Z
): ArrayBuffer[Try[Z]] = {
val len = as.length
val rs = as.asInstanceOf[ArrayBuffer[Try[Z]]]
var i = 0
assert(bs.length == len)
assert(cs.length == len)
assert(ds.length == len)
assert(es.length == len)
assert(fs.length == len)
assert(gs.length == len)
assert(hs.length == len)
assert(is.length == len)
while (i < as.length) {
rs(i) =
try {
Return(k(as(i)(), bs(i)(), cs(i)(), ds(i)(), es(i)(), fs(i)(), gs(i)(), hs(i)(), is(i)()))
} catch {
case NonFatal(t) => Throw(t)
}
i += 1
}
rs
}