molecule

package molecule

Visibility
  1. Public
  2. All

Type Members

  1. trait LowPrioMessageImplicits extends LowestPrioMessageImplicits

    The LowPrioMessageImplicits trait provides implicit objects of type Message[T[A]] for a number of general typed classes, but that are (or can be) partially overridden by higher-priority conversions in the object Message, or custom objects.

  2. trait LowestPrioMessageImplicits extends AnyRef

    The LowestPrioMessageImplicits trait provides implicit objects of type Message[A] with PureMessage as implementation for all types, but that are partially overridden by higher-priority conversions in objects LowPrioMessageImplicits and Message, or custom objects.

  3. abstract class Message[-A] extends AnyRef

    Type class defining how messages sent over channels are poisoned.

  4. trait PureMessage extends Message[Any]

    Traits that marks "pure" message i.

  5. class RichExecutor extends AnyRef

    Class that enriches a juc.Executor with additional methods.

  6. class RichTraversableToIChan[A] extends AnyRef

    Class that enriches a traversable with additional methods.

  7. class RichValToIChan[A] extends AnyRef

    Class that enriches a value with additional methods.

  8. type Seg[+A] = Seg[A]

    Definition Classes
    package
  9. abstract class Signal extends AnyRef

    Supertype of all termination signals.

  10. trait Tilt extends AnyRef

    Convenience functions to flatten pair of values created recursively by sequencing monadic operations.

  11. case class ~[+a, +b](_1: a, _2: b) extends Product with Serializable

    Pair of values returned by operators that sequence two monadic actions (see IO and parser combinators).

Value Members

  1. object EOS extends Signal with Product with Serializable

    Standard End-Of-Stream signal.

  2. object Message extends LowPrioMessageImplicits

    The object Message provides implicit objects of type Message[A] for a number of common final classes or sealed abstract classes.

  3. final val NilSeg: molecule.seg.NilSeg.type

    Definition Classes
    package
  4. object PureMessage extends Message[Any] with PureMessage

    Message typeclass for "pure" message.

  5. final val Seg: molecule.seg.Seg.type

    Definition Classes
    package
  6. object Signal extends AnyRef

  7. final def bridge[A](richan: RIChan[A], rochan: ROChan[A]): Unit

    Pass the result from a result channel to a return channel.

    Pass the result from a result channel to a return channel.

    richan

    the input.

    rochan

    the output.

    returns

    Unit

    Definition Classes
    Predefs
  8. final def bridge[A](ichan: IChan[A], ochan: OChan[A]): Unit

    Bridge a system-level input interface and a system-level output interface.

    Bridge a system-level input interface and a system-level output interface. All the segments coming on the input are forwarded to the output in a tight immutable loop in the threads of the sender and the receiver without further level of indirection. If the input terminates first, the output is closed with the termination signal of the input. If the output terminates first, the input is poisoned with the termination signal of the output.

    ichan

    the input.

    ochan

    the output.

    returns

    Unit

    Definition Classes
    Predefs
  9. package channel

    This package contains standard channels to interact with standard input/output and connect Molecule processes.

  10. implicit def enrichExecutor[A](executor: Executor): RichExecutor

    Enrich a juc.Executor with additional methods.

    Enrich a juc.Executor with additional methods.

    Definition Classes
    Predefs
  11. implicit def enrichTraversableToIChan[A](as: Traversable[A]): RichTraversableToIChan[A]

    Enrich a traversable with additional methods.

    Enrich a traversable with additional methods.

    Definition Classes
    Predefs
  12. implicit def enrichValToIChan[A](a: A): RichValToIChan[A]

    Enrich a value with additional methods.

    Enrich a value with additional methods.

    Definition Classes
    Predefs
  13. implicit def flatten2[A, B, C](f: (A, B) ⇒ C): (~[A, B]) ⇒ C

    Definition Classes
    Tilt
  14. implicit def flatten3[A, B, C, D](f: (A, B, C) ⇒ D): (~[~[A, B], C]) ⇒ D

    Definition Classes
    Tilt
  15. implicit def flatten4[A, B, C, D, E](f: (A, B, C, D) ⇒ E): (~[~[~[A, B], C], D]) ⇒ E

    Definition Classes
    Tilt
  16. implicit def flatten5[A, B, C, D, E, F](f: (A, B, C, D, E) ⇒ F): (~[~[~[~[A, B], C], D], E]) ⇒ F

    Definition Classes
    Tilt
  17. implicit def headOptionTailToFunList[A, T](f: (List[A]) ⇒ T): (~[A, Option[List[A]]]) ⇒ T

    Definition Classes
    Tilt
  18. package io

    This package offers monadic process types and various combinators for monadic actions (see value members below).

  19. package net

    This package permits to create clients and servers for UDP and TCP protocols using streaming I/O channels.

  20. package parsers

  21. package parsing

    Parsing utility methods

  22. package platform

    Platform execution resources: executors, user-level threads and schedulers.

  23. package process

    Types for process types and instances

  24. package request

    Message definitions for request-response protocols.

  25. package seg

    Definition of segments transmited on channels.

  26. package signals

    This package defines standard signals

  27. package stream

    Stream channel interfaces

  28. package utils

    Misc utilities