Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
akka.stream.scaladsl.UnzipWithApply.scala Maven / Gradle / Ivy
// auto-generated by sbt-boilerplate
/*
* Copyright (C) 2014-2020 Lightbend Inc.
*/
package akka.stream.scaladsl
import akka.stream._
import akka.stream.stage._
object UnzipWithApply {
abstract trait UnzipWithCreator[In, Out, T] {
def create(unzipper: Function1[In, Out]): T
}
trait UnzipWithCreator2[In, A1, A2] extends UnzipWithCreator[In, Tuple2[A1, A2], UnzipWith2[In, A1, A2]] {
override def create(unzipper: In => (A1, A2)): UnzipWith2[In, A1, A2] = {
new UnzipWith2(unzipper)
}
}
implicit object UnzipWithCreatorObject2 extends UnzipWithCreator2[Any, Any, Any]
trait UnzipWithCreator3[In, A1, A2, A3] extends UnzipWithCreator[In, Tuple3[A1, A2, A3], UnzipWith3[In, A1, A2, A3]] {
override def create(unzipper: In => (A1, A2, A3)): UnzipWith3[In, A1, A2, A3] = {
new UnzipWith3(unzipper)
}
}
implicit object UnzipWithCreatorObject3 extends UnzipWithCreator3[Any, Any, Any, Any]
trait UnzipWithCreator4[In, A1, A2, A3, A4] extends UnzipWithCreator[In, Tuple4[A1, A2, A3, A4], UnzipWith4[In, A1, A2, A3, A4]] {
override def create(unzipper: In => (A1, A2, A3, A4)): UnzipWith4[In, A1, A2, A3, A4] = {
new UnzipWith4(unzipper)
}
}
implicit object UnzipWithCreatorObject4 extends UnzipWithCreator4[Any, Any, Any, Any, Any]
trait UnzipWithCreator5[In, A1, A2, A3, A4, A5] extends UnzipWithCreator[In, Tuple5[A1, A2, A3, A4, A5], UnzipWith5[In, A1, A2, A3, A4, A5]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5)): UnzipWith5[In, A1, A2, A3, A4, A5] = {
new UnzipWith5(unzipper)
}
}
implicit object UnzipWithCreatorObject5 extends UnzipWithCreator5[Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator6[In, A1, A2, A3, A4, A5, A6] extends UnzipWithCreator[In, Tuple6[A1, A2, A3, A4, A5, A6], UnzipWith6[In, A1, A2, A3, A4, A5, A6]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6)): UnzipWith6[In, A1, A2, A3, A4, A5, A6] = {
new UnzipWith6(unzipper)
}
}
implicit object UnzipWithCreatorObject6 extends UnzipWithCreator6[Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator7[In, A1, A2, A3, A4, A5, A6, A7] extends UnzipWithCreator[In, Tuple7[A1, A2, A3, A4, A5, A6, A7], UnzipWith7[In, A1, A2, A3, A4, A5, A6, A7]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7)): UnzipWith7[In, A1, A2, A3, A4, A5, A6, A7] = {
new UnzipWith7(unzipper)
}
}
implicit object UnzipWithCreatorObject7 extends UnzipWithCreator7[Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator8[In, A1, A2, A3, A4, A5, A6, A7, A8] extends UnzipWithCreator[In, Tuple8[A1, A2, A3, A4, A5, A6, A7, A8], UnzipWith8[In, A1, A2, A3, A4, A5, A6, A7, A8]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8)): UnzipWith8[In, A1, A2, A3, A4, A5, A6, A7, A8] = {
new UnzipWith8(unzipper)
}
}
implicit object UnzipWithCreatorObject8 extends UnzipWithCreator8[Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9] extends UnzipWithCreator[In, Tuple9[A1, A2, A3, A4, A5, A6, A7, A8, A9], UnzipWith9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9)): UnzipWith9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9] = {
new UnzipWith9(unzipper)
}
}
implicit object UnzipWithCreatorObject9 extends UnzipWithCreator9[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10] extends UnzipWithCreator[In, Tuple10[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10], UnzipWith10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)): UnzipWith10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10] = {
new UnzipWith10(unzipper)
}
}
implicit object UnzipWithCreatorObject10 extends UnzipWithCreator10[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11] extends UnzipWithCreator[In, Tuple11[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11], UnzipWith11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11)): UnzipWith11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11] = {
new UnzipWith11(unzipper)
}
}
implicit object UnzipWithCreatorObject11 extends UnzipWithCreator11[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12] extends UnzipWithCreator[In, Tuple12[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12], UnzipWith12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12)): UnzipWith12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12] = {
new UnzipWith12(unzipper)
}
}
implicit object UnzipWithCreatorObject12 extends UnzipWithCreator12[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13] extends UnzipWithCreator[In, Tuple13[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13], UnzipWith13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13)): UnzipWith13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13] = {
new UnzipWith13(unzipper)
}
}
implicit object UnzipWithCreatorObject13 extends UnzipWithCreator13[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14] extends UnzipWithCreator[In, Tuple14[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14], UnzipWith14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14)): UnzipWith14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14] = {
new UnzipWith14(unzipper)
}
}
implicit object UnzipWithCreatorObject14 extends UnzipWithCreator14[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15] extends UnzipWithCreator[In, Tuple15[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15], UnzipWith15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15)): UnzipWith15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15] = {
new UnzipWith15(unzipper)
}
}
implicit object UnzipWithCreatorObject15 extends UnzipWithCreator15[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16] extends UnzipWithCreator[In, Tuple16[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16], UnzipWith16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16)): UnzipWith16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16] = {
new UnzipWith16(unzipper)
}
}
implicit object UnzipWithCreatorObject16 extends UnzipWithCreator16[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17] extends UnzipWithCreator[In, Tuple17[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17], UnzipWith17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17)): UnzipWith17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17] = {
new UnzipWith17(unzipper)
}
}
implicit object UnzipWithCreatorObject17 extends UnzipWithCreator17[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18] extends UnzipWithCreator[In, Tuple18[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18], UnzipWith18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18)): UnzipWith18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18] = {
new UnzipWith18(unzipper)
}
}
implicit object UnzipWithCreatorObject18 extends UnzipWithCreator18[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19] extends UnzipWithCreator[In, Tuple19[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19], UnzipWith19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19)): UnzipWith19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19] = {
new UnzipWith19(unzipper)
}
}
implicit object UnzipWithCreatorObject19 extends UnzipWithCreator19[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20] extends UnzipWithCreator[In, Tuple20[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20], UnzipWith20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20)): UnzipWith20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20] = {
new UnzipWith20(unzipper)
}
}
implicit object UnzipWithCreatorObject20 extends UnzipWithCreator20[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21] extends UnzipWithCreator[In, Tuple21[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21], UnzipWith21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21)): UnzipWith21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21] = {
new UnzipWith21(unzipper)
}
}
implicit object UnzipWithCreatorObject21 extends UnzipWithCreator21[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
trait UnzipWithCreator22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22] extends UnzipWithCreator[In, Tuple22[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22], UnzipWith22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22]] {
override def create(unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22)): UnzipWith22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22] = {
new UnzipWith22(unzipper)
}
}
implicit object UnzipWithCreatorObject22 extends UnzipWithCreator22[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]
}
trait UnzipWithApply {
import UnzipWithApply._
/**
* Create a new `UnzipWith` specialized for 2 outputs.
*
* @param unzipper unzipping-function from the input value to 2 output values
*/
def apply[In, A1, A2](unzipper: In => Tuple2[A1, A2])(implicit creator: UnzipWithCreator2[Any, Any, Any]): UnzipWith2[In, A1, A2] = {
creator.asInstanceOf[UnzipWithCreator2[In, A1, A2]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 3 outputs.
*
* @param unzipper unzipping-function from the input value to 3 output values
*/
def apply[In, A1, A2, A3](unzipper: In => Tuple3[A1, A2, A3])(implicit creator: UnzipWithCreator3[Any, Any, Any, Any]): UnzipWith3[In, A1, A2, A3] = {
creator.asInstanceOf[UnzipWithCreator3[In, A1, A2, A3]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 4 outputs.
*
* @param unzipper unzipping-function from the input value to 4 output values
*/
def apply[In, A1, A2, A3, A4](unzipper: In => Tuple4[A1, A2, A3, A4])(implicit creator: UnzipWithCreator4[Any, Any, Any, Any, Any]): UnzipWith4[In, A1, A2, A3, A4] = {
creator.asInstanceOf[UnzipWithCreator4[In, A1, A2, A3, A4]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 5 outputs.
*
* @param unzipper unzipping-function from the input value to 5 output values
*/
def apply[In, A1, A2, A3, A4, A5](unzipper: In => Tuple5[A1, A2, A3, A4, A5])(implicit creator: UnzipWithCreator5[Any, Any, Any, Any, Any, Any]): UnzipWith5[In, A1, A2, A3, A4, A5] = {
creator.asInstanceOf[UnzipWithCreator5[In, A1, A2, A3, A4, A5]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 6 outputs.
*
* @param unzipper unzipping-function from the input value to 6 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6](unzipper: In => Tuple6[A1, A2, A3, A4, A5, A6])(implicit creator: UnzipWithCreator6[Any, Any, Any, Any, Any, Any, Any]): UnzipWith6[In, A1, A2, A3, A4, A5, A6] = {
creator.asInstanceOf[UnzipWithCreator6[In, A1, A2, A3, A4, A5, A6]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 7 outputs.
*
* @param unzipper unzipping-function from the input value to 7 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7](unzipper: In => Tuple7[A1, A2, A3, A4, A5, A6, A7])(implicit creator: UnzipWithCreator7[Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith7[In, A1, A2, A3, A4, A5, A6, A7] = {
creator.asInstanceOf[UnzipWithCreator7[In, A1, A2, A3, A4, A5, A6, A7]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 8 outputs.
*
* @param unzipper unzipping-function from the input value to 8 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8](unzipper: In => Tuple8[A1, A2, A3, A4, A5, A6, A7, A8])(implicit creator: UnzipWithCreator8[Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith8[In, A1, A2, A3, A4, A5, A6, A7, A8] = {
creator.asInstanceOf[UnzipWithCreator8[In, A1, A2, A3, A4, A5, A6, A7, A8]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 9 outputs.
*
* @param unzipper unzipping-function from the input value to 9 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9](unzipper: In => Tuple9[A1, A2, A3, A4, A5, A6, A7, A8, A9])(implicit creator: UnzipWithCreator9[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9] = {
creator.asInstanceOf[UnzipWithCreator9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 10 outputs.
*
* @param unzipper unzipping-function from the input value to 10 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10](unzipper: In => Tuple10[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10])(implicit creator: UnzipWithCreator10[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10] = {
creator.asInstanceOf[UnzipWithCreator10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 11 outputs.
*
* @param unzipper unzipping-function from the input value to 11 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11](unzipper: In => Tuple11[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11])(implicit creator: UnzipWithCreator11[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11] = {
creator.asInstanceOf[UnzipWithCreator11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 12 outputs.
*
* @param unzipper unzipping-function from the input value to 12 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12](unzipper: In => Tuple12[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12])(implicit creator: UnzipWithCreator12[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12] = {
creator.asInstanceOf[UnzipWithCreator12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 13 outputs.
*
* @param unzipper unzipping-function from the input value to 13 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13](unzipper: In => Tuple13[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13])(implicit creator: UnzipWithCreator13[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13] = {
creator.asInstanceOf[UnzipWithCreator13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 14 outputs.
*
* @param unzipper unzipping-function from the input value to 14 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14](unzipper: In => Tuple14[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14])(implicit creator: UnzipWithCreator14[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14] = {
creator.asInstanceOf[UnzipWithCreator14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 15 outputs.
*
* @param unzipper unzipping-function from the input value to 15 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15](unzipper: In => Tuple15[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15])(implicit creator: UnzipWithCreator15[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15] = {
creator.asInstanceOf[UnzipWithCreator15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 16 outputs.
*
* @param unzipper unzipping-function from the input value to 16 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16](unzipper: In => Tuple16[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16])(implicit creator: UnzipWithCreator16[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16] = {
creator.asInstanceOf[UnzipWithCreator16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 17 outputs.
*
* @param unzipper unzipping-function from the input value to 17 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17](unzipper: In => Tuple17[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17])(implicit creator: UnzipWithCreator17[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17] = {
creator.asInstanceOf[UnzipWithCreator17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 18 outputs.
*
* @param unzipper unzipping-function from the input value to 18 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18](unzipper: In => Tuple18[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18])(implicit creator: UnzipWithCreator18[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18] = {
creator.asInstanceOf[UnzipWithCreator18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 19 outputs.
*
* @param unzipper unzipping-function from the input value to 19 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19](unzipper: In => Tuple19[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19])(implicit creator: UnzipWithCreator19[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19] = {
creator.asInstanceOf[UnzipWithCreator19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 20 outputs.
*
* @param unzipper unzipping-function from the input value to 20 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20](unzipper: In => Tuple20[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20])(implicit creator: UnzipWithCreator20[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20] = {
creator.asInstanceOf[UnzipWithCreator20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 21 outputs.
*
* @param unzipper unzipping-function from the input value to 21 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21](unzipper: In => Tuple21[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21])(implicit creator: UnzipWithCreator21[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21] = {
creator.asInstanceOf[UnzipWithCreator21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21]].create(unzipper)
}
/**
* Create a new `UnzipWith` specialized for 22 outputs.
*
* @param unzipper unzipping-function from the input value to 22 output values
*/
def apply[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22](unzipper: In => Tuple22[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22])(implicit creator: UnzipWithCreator22[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]): UnzipWith22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22] = {
creator.asInstanceOf[UnzipWithCreator22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22]].create(unzipper)
}
}
/** `UnzipWith` specialized for 2 outputs */
class UnzipWith2[In, A1, A2](val unzipper: In => (A1, A2)) extends GraphStage[FanOutShape2[In, A1, A2]] {
override def initialAttributes = Attributes.name("UnzipWith2")
override val shape: FanOutShape2[In, A1, A2] = new FanOutShape2[In, A1, A2]("UnzipWith2")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 2
var downstreamRunning = 2
var pending0 = true
var pending1 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith2"
}
/** `UnzipWith` specialized for 3 outputs */
class UnzipWith3[In, A1, A2, A3](val unzipper: In => (A1, A2, A3)) extends GraphStage[FanOutShape3[In, A1, A2, A3]] {
override def initialAttributes = Attributes.name("UnzipWith3")
override val shape: FanOutShape3[In, A1, A2, A3] = new FanOutShape3[In, A1, A2, A3]("UnzipWith3")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 3
var downstreamRunning = 3
var pending0 = true
var pending1 = true
var pending2 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith3"
}
/** `UnzipWith` specialized for 4 outputs */
class UnzipWith4[In, A1, A2, A3, A4](val unzipper: In => (A1, A2, A3, A4)) extends GraphStage[FanOutShape4[In, A1, A2, A3, A4]] {
override def initialAttributes = Attributes.name("UnzipWith4")
override val shape: FanOutShape4[In, A1, A2, A3, A4] = new FanOutShape4[In, A1, A2, A3, A4]("UnzipWith4")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 4
var downstreamRunning = 4
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith4"
}
/** `UnzipWith` specialized for 5 outputs */
class UnzipWith5[In, A1, A2, A3, A4, A5](val unzipper: In => (A1, A2, A3, A4, A5)) extends GraphStage[FanOutShape5[In, A1, A2, A3, A4, A5]] {
override def initialAttributes = Attributes.name("UnzipWith5")
override val shape: FanOutShape5[In, A1, A2, A3, A4, A5] = new FanOutShape5[In, A1, A2, A3, A4, A5]("UnzipWith5")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 5
var downstreamRunning = 5
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith5"
}
/** `UnzipWith` specialized for 6 outputs */
class UnzipWith6[In, A1, A2, A3, A4, A5, A6](val unzipper: In => (A1, A2, A3, A4, A5, A6)) extends GraphStage[FanOutShape6[In, A1, A2, A3, A4, A5, A6]] {
override def initialAttributes = Attributes.name("UnzipWith6")
override val shape: FanOutShape6[In, A1, A2, A3, A4, A5, A6] = new FanOutShape6[In, A1, A2, A3, A4, A5, A6]("UnzipWith6")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 6
var downstreamRunning = 6
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith6"
}
/** `UnzipWith` specialized for 7 outputs */
class UnzipWith7[In, A1, A2, A3, A4, A5, A6, A7](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7)) extends GraphStage[FanOutShape7[In, A1, A2, A3, A4, A5, A6, A7]] {
override def initialAttributes = Attributes.name("UnzipWith7")
override val shape: FanOutShape7[In, A1, A2, A3, A4, A5, A6, A7] = new FanOutShape7[In, A1, A2, A3, A4, A5, A6, A7]("UnzipWith7")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 7
var downstreamRunning = 7
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith7"
}
/** `UnzipWith` specialized for 8 outputs */
class UnzipWith8[In, A1, A2, A3, A4, A5, A6, A7, A8](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8)) extends GraphStage[FanOutShape8[In, A1, A2, A3, A4, A5, A6, A7, A8]] {
override def initialAttributes = Attributes.name("UnzipWith8")
override val shape: FanOutShape8[In, A1, A2, A3, A4, A5, A6, A7, A8] = new FanOutShape8[In, A1, A2, A3, A4, A5, A6, A7, A8]("UnzipWith8")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 8
var downstreamRunning = 8
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith8"
}
/** `UnzipWith` specialized for 9 outputs */
class UnzipWith9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9)) extends GraphStage[FanOutShape9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9]] {
override def initialAttributes = Attributes.name("UnzipWith9")
override val shape: FanOutShape9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9] = new FanOutShape9[In, A1, A2, A3, A4, A5, A6, A7, A8, A9]("UnzipWith9")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 9
var downstreamRunning = 9
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith9"
}
/** `UnzipWith` specialized for 10 outputs */
class UnzipWith10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)) extends GraphStage[FanOutShape10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10]] {
override def initialAttributes = Attributes.name("UnzipWith10")
override val shape: FanOutShape10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10] = new FanOutShape10[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10]("UnzipWith10")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 10
var downstreamRunning = 10
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith10"
}
/** `UnzipWith` specialized for 11 outputs */
class UnzipWith11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11)) extends GraphStage[FanOutShape11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11]] {
override def initialAttributes = Attributes.name("UnzipWith11")
override val shape: FanOutShape11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11] = new FanOutShape11[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11]("UnzipWith11")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 11
var downstreamRunning = 11
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith11"
}
/** `UnzipWith` specialized for 12 outputs */
class UnzipWith12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12)) extends GraphStage[FanOutShape12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12]] {
override def initialAttributes = Attributes.name("UnzipWith12")
override val shape: FanOutShape12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12] = new FanOutShape12[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12]("UnzipWith12")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 12
var downstreamRunning = 12
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith12"
}
/** `UnzipWith` specialized for 13 outputs */
class UnzipWith13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13)) extends GraphStage[FanOutShape13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13]] {
override def initialAttributes = Attributes.name("UnzipWith13")
override val shape: FanOutShape13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13] = new FanOutShape13[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13]("UnzipWith13")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 13
var downstreamRunning = 13
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith13"
}
/** `UnzipWith` specialized for 14 outputs */
class UnzipWith14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14)) extends GraphStage[FanOutShape14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14]] {
override def initialAttributes = Attributes.name("UnzipWith14")
override val shape: FanOutShape14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14] = new FanOutShape14[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14]("UnzipWith14")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 14
var downstreamRunning = 14
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith14"
}
/** `UnzipWith` specialized for 15 outputs */
class UnzipWith15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15)) extends GraphStage[FanOutShape15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15]] {
override def initialAttributes = Attributes.name("UnzipWith15")
override val shape: FanOutShape15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15] = new FanOutShape15[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15]("UnzipWith15")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
def out14: Outlet[A15] = shape.out14
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 15
var downstreamRunning = 15
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
var pending14 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
if (!isClosed(out14)) {
push(out14, elem._15)
pending14 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out14, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending14 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending14) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith15"
}
/** `UnzipWith` specialized for 16 outputs */
class UnzipWith16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16)) extends GraphStage[FanOutShape16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16]] {
override def initialAttributes = Attributes.name("UnzipWith16")
override val shape: FanOutShape16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16] = new FanOutShape16[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16]("UnzipWith16")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
def out14: Outlet[A15] = shape.out14
def out15: Outlet[A16] = shape.out15
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 16
var downstreamRunning = 16
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
var pending14 = true
var pending15 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
if (!isClosed(out14)) {
push(out14, elem._15)
pending14 = true
}
if (!isClosed(out15)) {
push(out15, elem._16)
pending15 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out14, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending14 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending14) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out15, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending15 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending15) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith16"
}
/** `UnzipWith` specialized for 17 outputs */
class UnzipWith17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17)) extends GraphStage[FanOutShape17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17]] {
override def initialAttributes = Attributes.name("UnzipWith17")
override val shape: FanOutShape17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17] = new FanOutShape17[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17]("UnzipWith17")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
def out14: Outlet[A15] = shape.out14
def out15: Outlet[A16] = shape.out15
def out16: Outlet[A17] = shape.out16
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 17
var downstreamRunning = 17
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
var pending14 = true
var pending15 = true
var pending16 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
if (!isClosed(out14)) {
push(out14, elem._15)
pending14 = true
}
if (!isClosed(out15)) {
push(out15, elem._16)
pending15 = true
}
if (!isClosed(out16)) {
push(out16, elem._17)
pending16 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out14, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending14 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending14) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out15, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending15 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending15) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out16, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending16 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending16) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith17"
}
/** `UnzipWith` specialized for 18 outputs */
class UnzipWith18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18)) extends GraphStage[FanOutShape18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18]] {
override def initialAttributes = Attributes.name("UnzipWith18")
override val shape: FanOutShape18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18] = new FanOutShape18[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18]("UnzipWith18")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
def out14: Outlet[A15] = shape.out14
def out15: Outlet[A16] = shape.out15
def out16: Outlet[A17] = shape.out16
def out17: Outlet[A18] = shape.out17
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 18
var downstreamRunning = 18
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
var pending14 = true
var pending15 = true
var pending16 = true
var pending17 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
if (!isClosed(out14)) {
push(out14, elem._15)
pending14 = true
}
if (!isClosed(out15)) {
push(out15, elem._16)
pending15 = true
}
if (!isClosed(out16)) {
push(out16, elem._17)
pending16 = true
}
if (!isClosed(out17)) {
push(out17, elem._18)
pending17 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out14, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending14 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending14) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out15, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending15 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending15) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out16, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending16 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending16) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out17, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending17 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending17) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith18"
}
/** `UnzipWith` specialized for 19 outputs */
class UnzipWith19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19)) extends GraphStage[FanOutShape19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19]] {
override def initialAttributes = Attributes.name("UnzipWith19")
override val shape: FanOutShape19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19] = new FanOutShape19[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19]("UnzipWith19")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
def out14: Outlet[A15] = shape.out14
def out15: Outlet[A16] = shape.out15
def out16: Outlet[A17] = shape.out16
def out17: Outlet[A18] = shape.out17
def out18: Outlet[A19] = shape.out18
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 19
var downstreamRunning = 19
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
var pending14 = true
var pending15 = true
var pending16 = true
var pending17 = true
var pending18 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
if (!isClosed(out14)) {
push(out14, elem._15)
pending14 = true
}
if (!isClosed(out15)) {
push(out15, elem._16)
pending15 = true
}
if (!isClosed(out16)) {
push(out16, elem._17)
pending16 = true
}
if (!isClosed(out17)) {
push(out17, elem._18)
pending17 = true
}
if (!isClosed(out18)) {
push(out18, elem._19)
pending18 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out14, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending14 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending14) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out15, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending15 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending15) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out16, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending16 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending16) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out17, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending17 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending17) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out18, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending18 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending18) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith19"
}
/** `UnzipWith` specialized for 20 outputs */
class UnzipWith20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20)) extends GraphStage[FanOutShape20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20]] {
override def initialAttributes = Attributes.name("UnzipWith20")
override val shape: FanOutShape20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20] = new FanOutShape20[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20]("UnzipWith20")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
def out14: Outlet[A15] = shape.out14
def out15: Outlet[A16] = shape.out15
def out16: Outlet[A17] = shape.out16
def out17: Outlet[A18] = shape.out17
def out18: Outlet[A19] = shape.out18
def out19: Outlet[A20] = shape.out19
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 20
var downstreamRunning = 20
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
var pending14 = true
var pending15 = true
var pending16 = true
var pending17 = true
var pending18 = true
var pending19 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
if (!isClosed(out14)) {
push(out14, elem._15)
pending14 = true
}
if (!isClosed(out15)) {
push(out15, elem._16)
pending15 = true
}
if (!isClosed(out16)) {
push(out16, elem._17)
pending16 = true
}
if (!isClosed(out17)) {
push(out17, elem._18)
pending17 = true
}
if (!isClosed(out18)) {
push(out18, elem._19)
pending18 = true
}
if (!isClosed(out19)) {
push(out19, elem._20)
pending19 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out14, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending14 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending14) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out15, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending15 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending15) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out16, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending16 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending16) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out17, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending17 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending17) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out18, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending18 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending18) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out19, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending19 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending19) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith20"
}
/** `UnzipWith` specialized for 21 outputs */
class UnzipWith21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21)) extends GraphStage[FanOutShape21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21]] {
override def initialAttributes = Attributes.name("UnzipWith21")
override val shape: FanOutShape21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21] = new FanOutShape21[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21]("UnzipWith21")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
def out14: Outlet[A15] = shape.out14
def out15: Outlet[A16] = shape.out15
def out16: Outlet[A17] = shape.out16
def out17: Outlet[A18] = shape.out17
def out18: Outlet[A19] = shape.out18
def out19: Outlet[A20] = shape.out19
def out20: Outlet[A21] = shape.out20
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 21
var downstreamRunning = 21
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
var pending14 = true
var pending15 = true
var pending16 = true
var pending17 = true
var pending18 = true
var pending19 = true
var pending20 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
if (!isClosed(out14)) {
push(out14, elem._15)
pending14 = true
}
if (!isClosed(out15)) {
push(out15, elem._16)
pending15 = true
}
if (!isClosed(out16)) {
push(out16, elem._17)
pending16 = true
}
if (!isClosed(out17)) {
push(out17, elem._18)
pending17 = true
}
if (!isClosed(out18)) {
push(out18, elem._19)
pending18 = true
}
if (!isClosed(out19)) {
push(out19, elem._20)
pending19 = true
}
if (!isClosed(out20)) {
push(out20, elem._21)
pending20 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out14, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending14 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending14) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out15, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending15 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending15) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out16, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending16 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending16) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out17, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending17 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending17) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out18, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending18 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending18) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out19, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending19 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending19) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out20, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending20 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending20) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith21"
}
/** `UnzipWith` specialized for 22 outputs */
class UnzipWith22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22](val unzipper: In => (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22)) extends GraphStage[FanOutShape22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22]] {
override def initialAttributes = Attributes.name("UnzipWith22")
override val shape: FanOutShape22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22] = new FanOutShape22[In, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22]("UnzipWith22")
def in: Inlet[In] = shape.in
def out0: Outlet[A1] = shape.out0
def out1: Outlet[A2] = shape.out1
def out2: Outlet[A3] = shape.out2
def out3: Outlet[A4] = shape.out3
def out4: Outlet[A5] = shape.out4
def out5: Outlet[A6] = shape.out5
def out6: Outlet[A7] = shape.out6
def out7: Outlet[A8] = shape.out7
def out8: Outlet[A9] = shape.out8
def out9: Outlet[A10] = shape.out9
def out10: Outlet[A11] = shape.out10
def out11: Outlet[A12] = shape.out11
def out12: Outlet[A13] = shape.out12
def out13: Outlet[A14] = shape.out13
def out14: Outlet[A15] = shape.out14
def out15: Outlet[A16] = shape.out15
def out16: Outlet[A17] = shape.out16
def out17: Outlet[A18] = shape.out17
def out18: Outlet[A19] = shape.out18
def out19: Outlet[A20] = shape.out19
def out20: Outlet[A21] = shape.out20
def out21: Outlet[A22] = shape.out21
override def createLogic(inheritedAttributes: Attributes): GraphStageLogic = new GraphStageLogic(shape) {
var pendingCount = 22
var downstreamRunning = 22
var pending0 = true
var pending1 = true
var pending2 = true
var pending3 = true
var pending4 = true
var pending5 = true
var pending6 = true
var pending7 = true
var pending8 = true
var pending9 = true
var pending10 = true
var pending11 = true
var pending12 = true
var pending13 = true
var pending14 = true
var pending15 = true
var pending16 = true
var pending17 = true
var pending18 = true
var pending19 = true
var pending20 = true
var pending21 = true
setHandler(in, new InHandler {
override def onPush() = {
val elem = unzipper(grab(in))
if (!isClosed(out0)) {
push(out0, elem._1)
pending0 = true
}
if (!isClosed(out1)) {
push(out1, elem._2)
pending1 = true
}
if (!isClosed(out2)) {
push(out2, elem._3)
pending2 = true
}
if (!isClosed(out3)) {
push(out3, elem._4)
pending3 = true
}
if (!isClosed(out4)) {
push(out4, elem._5)
pending4 = true
}
if (!isClosed(out5)) {
push(out5, elem._6)
pending5 = true
}
if (!isClosed(out6)) {
push(out6, elem._7)
pending6 = true
}
if (!isClosed(out7)) {
push(out7, elem._8)
pending7 = true
}
if (!isClosed(out8)) {
push(out8, elem._9)
pending8 = true
}
if (!isClosed(out9)) {
push(out9, elem._10)
pending9 = true
}
if (!isClosed(out10)) {
push(out10, elem._11)
pending10 = true
}
if (!isClosed(out11)) {
push(out11, elem._12)
pending11 = true
}
if (!isClosed(out12)) {
push(out12, elem._13)
pending12 = true
}
if (!isClosed(out13)) {
push(out13, elem._14)
pending13 = true
}
if (!isClosed(out14)) {
push(out14, elem._15)
pending14 = true
}
if (!isClosed(out15)) {
push(out15, elem._16)
pending15 = true
}
if (!isClosed(out16)) {
push(out16, elem._17)
pending16 = true
}
if (!isClosed(out17)) {
push(out17, elem._18)
pending17 = true
}
if (!isClosed(out18)) {
push(out18, elem._19)
pending18 = true
}
if (!isClosed(out19)) {
push(out19, elem._20)
pending19 = true
}
if (!isClosed(out20)) {
push(out20, elem._21)
pending20 = true
}
if (!isClosed(out21)) {
push(out21, elem._22)
pending21 = true
}
pendingCount = downstreamRunning
}
})
setHandler(out0, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending0 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending0) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out1, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending1 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending1) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out2, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending2 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending2) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out3, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending3 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending3) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out4, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending4 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending4) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out5, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending5 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending5) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out6, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending6 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending6) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out7, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending7 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending7) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out8, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending8 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending8) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out9, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending9 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending9) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out10, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending10 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending10) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out11, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending11 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending11) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out12, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending12 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending12) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out13, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending13 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending13) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out14, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending14 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending14) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out15, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending15 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending15) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out16, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending16 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending16) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out17, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending17 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending17) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out18, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending18 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending18) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out19, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending19 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending19) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out20, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending20 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending20) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
setHandler(out21, new OutHandler {
override def onPull() = {
pendingCount -= 1
pending21 = false
if (pendingCount == 0) pull(in)
}
override def onDownstreamFinish(cause: Throwable): Unit = {
downstreamRunning -= 1
if (downstreamRunning == 0) cancelStage(cause)
else {
if (pending21) pendingCount -= 1
if (pendingCount == 0 && !hasBeenPulled(in)) pull(in)
}
}
})
}
override def toString = "UnzipWith22"
}