package Ġcom . m ire go . tri kot . streams . reactive . processors Ċ Ċ import Ġorg . reactiv est ream s . Publisher Ċ import Ġorg . reactiv est ream s . Subscriber Ċ Ċ type alias ĠFilter Processor Block < T > Ġ= Ġ( T ) Ġ-> ĠBoolean Ċ Ċ class ĠFilter Processor < T >( parent Publisher : ĠPublisher < T >, Ġprivate Ġval Ġblock : ĠFilter Processor Block < T >) Ġ: ĊĠĠĠ ĠAbstract Processor < T , ĠT >( parent Publisher ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Subscription ( subscriber : ĠSubscriber < in ĠT >): ĠProcessor Subscription < T , ĠT > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠFilter Processor Subscription ( subscriber , Ġblock ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠFilter Processor Subscription < T >( subscriber : ĠSubscriber < in ĠT >, Ġval Ġblock : ĠFilter Processor Block < T >) Ġ: ĊĠĠĠĠĠĠĠ ĠProcessor Subscription < T , ĠT >( subscriber ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Next ( t : ĠT , Ġsubscriber : ĠSubscriber < in ĠT >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( block ( t )) Ġsubscriber . onNext ( t ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ