ox.channels

package ox.channels

Members list

Concise view

Type members

Classlikes

class BufferedChannel[T](capacity: Int) extends Channel[T]

Attributes

Graph
Supertypes
trait Channel[T]
trait Sink[T]
trait Source[T]
trait SourceOps[T]
class Object
trait Matchable
class Any
trait Channel[T] extends Source[T] with Sink[T]

Attributes

Companion:
object
Graph
Supertypes
trait Sink[T]
trait Source[T]
trait SourceOps[T]
class Object
trait Matchable
class Any
Known subtypes
object Channel

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Channel.type
enum ChannelClosedException(reason: Option[Exception]) extends Exception

Attributes

Graph
Supertypes
trait Enum
trait Product
trait Equals
class Exception
class Throwable
trait Serializable
class Object
trait Matchable
class Any
Known subtypes
case Error
case Done
sealed trait ChannelResult[+T]

Attributes

Companion:
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait Closed
object Done.type
class Error
class Value[T]

Attributes

Companion:
trait
Graph
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
class DirectChannel[T] extends Channel[T]

A channel with capacity 0, requiring that senders & receivers meet to exchange a value.

A channel with capacity 0, requiring that senders & receivers meet to exchange a value.

Attributes

Graph
Supertypes
trait Channel[T]
trait Sink[T]
trait Source[T]
trait SourceOps[T]
class Object
trait Matchable
class Any
trait Sink[-T]

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait Channel[T]
class DirectChannel[T]
trait Source[+T] extends SourceOps[T]

Attributes

Companion:
object
Graph
Supertypes
trait SourceOps[T]
class Object
trait Matchable
class Any
Known subtypes
trait Channel[T]
class DirectChannel[T]
object Source extends SourceCompanionOps

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Source.type

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Source.type
trait SourceOps[+T]

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait Source[T]
trait Channel[T]
class DirectChannel[T]
Self type

Value members

Concrete methods

def select[T1, T2](ch1: Source[T1], ch2: Source[T2]): ChannelResult[T1 | T2]
def select[T](channels: List[Source[T]]): ChannelResult[T]

Receive an element from exactly one of the channels, blocking if necessary. Complexity: sum of the waiting queues of the channels.

Receive an element from exactly one of the channels, blocking if necessary. Complexity: sum of the waiting queues of the channels.

Attributes

def selectNow[T1, T2](ch1: Source[T1], ch2: Source[T2]): ChannelResult[Option[T1 | T2]]
def selectNow[T](chs: List[Source[T]]): ChannelResult[Option[T]]

Receive an element from exactly one of the channels, if such an element is immediately available.

Receive an element from exactly one of the channels, if such an element is immediately available.

Attributes