class CompositionIOC[C] extends CompositionIO[C] with DoneSignalDelegate[C] with CloseableInputOutput[A, C]
- Alphabetic
- By Inheritance
- CompositionIOC
- CloseableInputOutput
- DoneSignalDelegate
- CloseableInput
- DoneProvider
- CompositionIO
- InputOutput
- Output
- Input
- GopherAPIProvider
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new CompositionIOC(other: InputOutput[B, C])
Type Members
- trait DoneSignalDelegate[T] extends CloseableInput[T]
- Definition Classes
- CloseableInput
- class CompositionIOC[C] extends CompositionIO[C] with DoneSignalDelegate[C] with CloseableInputOutput[A, C]
- Definition Classes
- CloseableInputOutput
- type <~ = C
- Definition Classes
- Input
- type done = Unit
- Definition Classes
- DoneProvider
- type read = C
- Definition Classes
- Input
- type write = A
- Definition Classes
- Output
- type writeExp[X] = A
- Definition Classes
- Output
- type ~> = A
- Definition Classes
- Output
- class FilteredIOC extends FilteredIO with DoneSignalDelegate[B] with CloseableInputOutput[A, B]
- Definition Classes
- CloseableInputOutput
- class MappedIOC[C] extends MappedIO[C] with DoneSignalDelegate[C] with CloseableInputOutput[A, C]
- Definition Classes
- CloseableInputOutput
- class Filtered extends Input[A]
- Definition Classes
- Input
- class FutureMapped[B] extends Input[B]
- Definition Classes
- Input
- class Mapped[B] extends Input[B]
- Definition Classes
- Input
- case class Read(value: A) extends Product with Serializable
- Definition Classes
- Input
- trait CbwriteDelegate extends Output[A]
- Definition Classes
- InputOutput
- class CompositionIO[C] extends InputOutput[A, C]
- Definition Classes
- InputOutput
- class FilteredIO extends Filtered with CbwriteDelegate with InputOutput[A, B]
- Definition Classes
- InputOutput
- class MappedIO[C] extends Mapped[C] with CbwriteDelegate with InputOutput[A, C]
- Definition Classes
- InputOutput
Value Members
- macro def !(a: A): Unit
shortcut for blocking write.
shortcut for blocking write.
- Definition Classes
- Output
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- macro def <~(a: A): Output[A]
shortcut for blocking write.
shortcut for blocking write.
- Definition Classes
- Output
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- macro def ?: C
synonym for read.
synonym for read.
- Definition Classes
- Input
- macro def afold[S, B](s0: S)(f: (S, C) => S): Future[S]
async incarnation of fold.
async incarnation of fold. Fold return future, which successed when channel is closed. Operations withing fold applyed on result on each other, starting with s0.
val fsum = ch.afold(0){ (s, n) => s+n }
Here in fsum will be future with value: sum of all elements in channel until one has been closed.
- Definition Classes
- Input
- def afoldAsync[S, B](s0: S)(f: (S, C) => Future[S])(implicit ec: ExecutionContext): Future[S]
- Definition Classes
- Input
- def afoldSync[S, B](s0: S)(f: (S, C) => S): Future[S]
- Definition Classes
- Input
- macro def aforeach(f: (C) => Unit): Future[Unit]
- Definition Classes
- Input
- def amap[B](g: (C) => Future[B]): Input[B]
- Definition Classes
- Input
- val api: GopherAPI
instance of gopher API
instance of gopher API
- Definition Classes
- CompositionIO → Output → Input → GopherAPIProvider
- def append(other: Input[C]): Input[C]
when the first channel is exhaused, read from second.
when the first channel is exhaused, read from second.
- Definition Classes
- Input
- def applyDone[B](cr: ContRead[Unit, B]): Unit
- Attributes
- protected
- Definition Classes
- CloseableInput
- def aread: Future[C]
async version of read.
async version of read. Immediatly return future, which will contains result of read or failur with StreamClosedException in case of stream is closed.
- Definition Classes
- Input
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def async: AnyRef { ... /* 3 definitions in type refinement */ }
- Definition Classes
- Input
- def atake(n: Int): Future[IndexedSeq[C]]
return feature which contains sequence from first
n
elements.return feature which contains sequence from first
n
elements.- Definition Classes
- Input
- def awrite(a: A): Future[A]
- Definition Classes
- Output
- def awriteAll[C <: Iterable[A]](c: C): Future[Unit]
- Definition Classes
- Output
- def cbread[D](f: (ContRead[C, D]) => Option[(In[C]) => Future[Continuated[D]]], ft: FlowTermination[D]): Unit
apply f, when input will be ready and send result to API processor
apply f, when input will be ready and send result to API processor
- Definition Classes
- CompositionIO → Input
- def cbwrite[B](f: (ContWrite[A, B]) => Option[(A, Future[Continuated[B]])], ft: FlowTermination[B]): Unit
apply f and send result to channels processor.
apply f and send result to channels processor.
- Definition Classes
- CompositionIO → Output
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- lazy val closeless: Input[C]
- returns
Input without close event: i.e. reading from closeless channel after channel close will wait forever instead throwing CloseChannelException
- Definition Classes
- Input
- def compose[C](other: InputOutput[C, C]): CloseableInputOutput[A, C]
- Definition Classes
- CloseableInputOutput → InputOutput
- val done: Input[Unit]
- Definition Classes
- DoneSignalDelegate → DoneProvider
- def dup(): (Input[C], Input[C])
duplicate input
duplicate input
- Definition Classes
- Input
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def filter(p: (C) => Boolean): CloseableInputOutput[A, C]
- Definition Classes
- CloseableInputOutput → CloseableInput → InputOutput → Input
- def flatFold(fun: (Input[C], C) => Input[C]): Input[C]
- Definition Classes
- Input
- def flatMap[B](g: (C) => Input[B]): Input[B]
- Definition Classes
- Input
- def flatMapOp[B](g: (C) => Input[B])(op: (Input[B], Input[B]) => Input[B]): Input[B]
- Definition Classes
- Input
- macro def fold[S, B](s0: S)(f: (S, C) => S): S
fold opeations, available inside async bloc.
fold opeations, available inside async bloc.
go { val sum = ch.fold(0){ (s,n) => s+n } }
- Definition Classes
- Input
- macro def foreach(f: (C) => Unit): Unit
run
f
each time when new object is arrived.run
f
each time when new object is arrived. Ended when input closes.must be inside go/async/action block.
- Definition Classes
- Input
- def foreachAsync(f: (C) => Future[Unit])(implicit ec: ExecutionContext): Future[Unit]
- Definition Classes
- Input
- def foreachSync(f: (C) => Unit): Future[Unit]
- Definition Classes
- Input
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- val internalFlowTermination: PromiseFlowTermination[Unit]
- Attributes
- protected
- Definition Classes
- CompositionIO
- def internalRead(cr: ContRead[B, Unit]): Option[(In[B]) => Future[Continuated[Unit]]]
- Definition Classes
- CompositionIO
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def map[C](g: (C) => C): CloseableInputOutput[A, C]
- Definition Classes
- CloseableInputOutput → CloseableInput → InputOutput → Input
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def or(other: Input[C]): Input[C]
synonim for non-deteremenistics choice.
synonim for non-deteremenistics choice.
- Definition Classes
- Input
- def pam[B](g: (B) => A): Output[B]
alias for premap
alias for premap
- Definition Classes
- Output
- def premap[C](g: (C) => A): Output[C]
before passing value to output, apply g to one.
before passing value to output, apply g to one.
- Definition Classes
- Output
- def prepend(a: C): Input[C]
- Definition Classes
- Input
- macro def read: C
read object from channel.
read object from channel. Must be situated inside async/go/action block.
- Definition Classes
- Input
- def seq: AnyRef { def flatMap[B](g: C => gopher.channels.Input[B]): gopher.channels.Input[B] }
- Definition Classes
- Input
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def timedAread(waitTime: FiniteDuration): Future[C]
- Definition Classes
- Input
- def toString(): String
- Definition Classes
- AnyRef → Any
- def unfold[S](s: S)(f: (S) => (S, A)): Unit
- Definition Classes
- Output
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def withFilter(p: (C) => Boolean): Input[C]
- Definition Classes
- Input
- def withInputTimeouts(timeout: FiniteDuration): (Input[C], Input[FiniteDuration])
return pair of inputs
(ready, timeouts)
, such that when you read fromready
you receive element fromthis
and if during reading you wait more than specifiedtimeout
, than timeout message is appear intimeouts
return pair of inputs
(ready, timeouts)
, such that when you read fromready
you receive element fromthis
and if during reading you wait more than specifiedtimeout
, than timeout message is appear intimeouts
val (inReady, inTimeouts) = in withInputTimeouts (10 seconds) select.forever { case x: inReady.read => Console.println(s"received value ${value}") case x: inTimeouts.read => Console.println(s"timeout occured") }
- Definition Classes
- Input
- def withOutputTimeouts(timeout: FiniteDuration): (Output[A], Input[FiniteDuration])
provide pair from Output and Input
(ready, timeouts)
such that writing toready
will case writing tooutput
and if it was not completed during
timeoutstimeout
than appropriative duration will be availabe ininput.
provide pair from Output and Input
(ready, timeouts)
such that writing toready
will case writing tooutput
and if it was not completed during
timeoutstimeout
than appropriative duration will be availabe ininput.
val (chReady, chTimeouts) = ch withOutputTimeouts (5 seconds) select.forever { case x: chReady.write if (x==somethingToWrite) => Console.println(s" ${x} send") case t: chTimeouts.read => Console.println(s"timeout during writing") }
- Definition Classes
- Output
- macro def write(a: A): A
'blocking' write of 'a' to channel.
'blocking' write of 'a' to channel. Note, that this method can be called only inside 'go' or 'async' blocks.
- Definition Classes
- Output
- macro def writeAll[C <: Iterable[A]](it: C): Unit
- Definition Classes
- Output
- def zip[B](x: Input[B]): Input[(C, B)]
- Definition Classes
- Input
- def zip[B](x: Iterable[B]): Input[(C, B)]
- Definition Classes
- Input
- def |(other: Input[C]): Input[C]
return input merged with 'other'.
return input merged with 'other'. (i.e. non-determenistics choice)
- Definition Classes
- Input
- def |>[C](other: InputOutput[C, C]): CloseableInputOutput[A, C]
Synonym for this.compose(other)
Synonym for this.compose(other)
- Definition Classes
- CloseableInputOutput → InputOutput
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated