Packages

t

gopher.channels

ForeverSelectorBuilder

trait ForeverSelectorBuilder extends SelectorBuilder[Unit]

Builder for 'forever' selector. Can be obtained as gopherApi.select.forever.

Linear Supertypes
SelectorBuilder[Unit], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ForeverSelectorBuilder
  2. SelectorBuilder
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type timeout = FiniteDuration
    Definition Classes
    SelectorBuilder

Abstract Value Members

  1. abstract def api: GopherAPI
    Definition Classes
    SelectorBuilder

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. macro def apply(f: PartialFunction[Any, Unit]): Future[Unit]

    provide syntax for running select loop as async operation.

    provide syntax for running select loop as async operation.

    val receiver = gopherApi.select.forever{
                     case x: channel.read => Console.println(s"received:$x")
                   }
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. implicit def ec: ExecutionContext
    Definition Classes
    SelectorBuilder
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. macro def foreach(f: (Any) ⇒ Unit): Unit

    provide syntax for running select loop inside go (or async) block example of usage:

    provide syntax for running select loop inside go (or async) block example of usage:

    go {
      .....
      for(s <- gopherApi.select.forever)
        s match {
          case x: ch1.read => do something with x
          case q: chq.read => implicitly[FlowTermination[Unit]].doExit(())
          case y: ch2.write if (y=expr) => do something with y
          case _ => do somethig when idle.
        }

    Note, that you can use implicit instance of [FlowTermination[Unit]] to stop loop.

  12. def futureInput[A](f: Future[A]): FutureInput[A]
    Definition Classes
    SelectorBuilder
    Annotations
    @inline()
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  14. final def go: Future[Unit]
    Definition Classes
    SelectorBuilder
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  16. macro def idle(body: Unit): ForeverSelectorBuilder
  17. macro def input[B](f: PartialFunction[Any, B]): Input[B]
  18. def inputBuilder[B](): InputSelectorBuilder[B]
  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. macro def map[B](f: (Any) ⇒ B): Input[B]

    provide syntax for creating output channels.

    provide syntax for creating output channels.

    val multiplexed = for(s <- gopherApi.select.forever) yield
         s match {
            case x: channelA => s"A:${x}"
            case x: channelB => s"B:${x}"
         }
  21. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. final def notify(): Unit
    Definition Classes
    AnyRef
  23. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  24. def onIdle(arg: SkipSelectorArgument[Unit]): ForeverSelectorBuilder.this.type
    Definition Classes
    SelectorBuilder
  25. def onRead[E](ch: Input[E])(arg: ReadSelectorArgument[E, Unit]): ForeverSelectorBuilder.this.type
    Definition Classes
    SelectorBuilder
  26. def onTimeout(t: FiniteDuration)(arg: SkipSelectorArgument[Unit]): ForeverSelectorBuilder.this.type
    Definition Classes
    SelectorBuilder
  27. def onWrite[E](ch: Output[E])(arg: WriteSelectorArgument[E, Unit]): ForeverSelectorBuilder.this.type
    Definition Classes
    SelectorBuilder
  28. macro def reading[A](ch: Input[A])(f: (A) ⇒ Unit): ForeverSelectorBuilder
  29. def readingWithFlowTerminationAsync[A](ch: Input[A], f: (ExecutionContext, FlowTermination[Unit], A) ⇒ Future[Unit]): ForeverSelectorBuilder.this.type
  30. def selectorRun: Future[Unit]
    Definition Classes
    SelectorBuilder
  31. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  32. macro def timeout(t: FiniteDuration)(f: (FiniteDuration) ⇒ Unit): ForeverSelectorBuilder
  33. def timeoutWithFlowTerminationAsync(t: FiniteDuration, f: (ExecutionContext, FlowTermination[Unit], FiniteDuration) ⇒ Future[Unit]): ForeverSelectorBuilder.this.type
    Annotations
    @inline()
  34. def toString(): String
    Definition Classes
    AnyRef → Any
  35. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. def withIdle(f: (Skip[Unit]) ⇒ Option[Future[Continuated[Unit]]]): ForeverSelectorBuilder.this.type
    Definition Classes
    SelectorBuilder
    Annotations
    @inline()
  39. def withReader[B](ch: Input[B], f: (ContRead[B, Unit]) ⇒ Option[(In[B]) ⇒ Future[Continuated[Unit]]]): ForeverSelectorBuilder.this.type
    Definition Classes
    SelectorBuilder
    Annotations
    @inline()
  40. def withTimeout(t: FiniteDuration)(f: (Skip[Unit]) ⇒ Option[Future[Continuated[Unit]]]): ForeverSelectorBuilder.this.type
    Definition Classes
    SelectorBuilder
    Annotations
    @inline()
  41. def withWriter[B](ch: Output[B], f: (ContWrite[B, Unit]) ⇒ Option[(B, Future[Continuated[Unit]])]): ForeverSelectorBuilder.this.type
    Definition Classes
    SelectorBuilder
    Annotations
    @inline()
  42. macro def writing[A](ch: Output[A], x: A)(f: (A) ⇒ Unit): ForeverSelectorBuilder
  43. def writingWithFlowTerminationAsync[A](ch: Output[A], x: ⇒ A, f: (ExecutionContext, FlowTermination[Unit], A) ⇒ Future[Unit]): ForeverSelectorBuilder
    Annotations
    @inline()

Inherited from SelectorBuilder[Unit]

Inherited from AnyRef

Inherited from Any

Ungrouped