in algebird-core/src/main/scala/com/twitter/algebird/GeneratedAbstractAlgebra.scala [1198:1253]
override def plus(
l: (A, B, C, D, E, F, G, H, I, J, K, L),
r: (A, B, C, D, E, F, G, H, I, J, K, L)
): (A, B, C, D, E, F, G, H, I, J, K, L) = (
asemigroup.plus(l._1, r._1),
bsemigroup.plus(l._2, r._2),
csemigroup.plus(l._3, r._3),
dsemigroup.plus(l._4, r._4),
esemigroup.plus(l._5, r._5),
fsemigroup.plus(l._6, r._6),
gsemigroup.plus(l._7, r._7),
hsemigroup.plus(l._8, r._8),
isemigroup.plus(l._9, r._9),
jsemigroup.plus(l._10, r._10),
ksemigroup.plus(l._11, r._11),
lsemigroup.plus(l._12, r._12)
)
override def sumOption(
to: TraversableOnce[(A, B, C, D, E, F, G, H, I, J, K, L)]
): Option[(A, B, C, D, E, F, G, H, I, J, K, L)] =
if (to.iterator.isEmpty) None
else {
val bufA = fromSumOption[A](1000)
val bufB = fromSumOption[B](1000)
val bufC = fromSumOption[C](1000)
val bufD = fromSumOption[D](1000)
val bufE = fromSumOption[E](1000)
val bufF = fromSumOption[F](1000)
val bufG = fromSumOption[G](1000)
val bufH = fromSumOption[H](1000)
val bufI = fromSumOption[I](1000)
val bufJ = fromSumOption[J](1000)
val bufK = fromSumOption[K](1000)
val bufL = fromSumOption[L](1000)
to.iterator.foreach { tuple =>
bufA.put(tuple._1); bufB.put(tuple._2); bufC.put(tuple._3); bufD.put(tuple._4); bufE.put(tuple._5);
bufF.put(tuple._6); bufG.put(tuple._7); bufH.put(tuple._8); bufI.put(tuple._9); bufJ.put(tuple._10);
bufK.put(tuple._11); bufL.put(tuple._12)
}
Some(
(
bufA.flush.get,
bufB.flush.get,
bufC.flush.get,
bufD.flush.get,
bufE.flush.get,
bufF.flush.get,
bufG.flush.get,
bufH.flush.get,
bufI.flush.get,
bufJ.flush.get,
bufK.flush.get,
bufL.flush.get
)
)
}