Class

io.chymyst.jc

M

Related Doc: package jc

Permalink

final class M[T] extends (T) ⇒ Unit with Molecule

Non-blocking molecule class. Instance is mutable until the molecule is bound to a reaction site and until all reactions involving this molecule are declared.

T

Type of the value carried by the molecule.

Linear Supertypes
Molecule, PersistentHashCode, (T) ⇒ Unit, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. M
  2. Molecule
  3. PersistentHashCode
  4. Function1
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new M(name: String)

    Permalink

    name

    Name of the molecule, used for debugging only.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def andThen[A](g: (Unit) ⇒ A): (T) ⇒ A

    Permalink
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  5. def apply()(implicit arg: TypeMustBeUnit[T]): Unit

    Permalink
  6. def apply(v: T): Unit

    Permalink

    Emit a non-blocking molecule.

    Emit a non-blocking molecule.

    v

    Value to be put onto the emitted molecule.

    Definition Classes
    M → Function1
  7. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def compose[A](g: (A) ⇒ T): (A) ⇒ Unit

    Permalink
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  10. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. var hasReactionSite: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Molecule
  15. def hashCode(): Int

    Permalink
    Definition Classes
    PersistentHashCode → AnyRef → Any
  16. val isBlocking: Boolean

    Permalink
    Definition Classes
    Molecule
  17. final def isBound: Boolean

    Permalink

    Check whether the molecule is already bound to a reaction site.

    Check whether the molecule is already bound to a reaction site. Note that molecules can be emitted only if they are bound.

    returns

    True if already bound, false otherwise.

    Definition Classes
    Molecule
  18. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  19. def isPipelined: Boolean

    Permalink
    Definition Classes
    Molecule
  20. def isSelfBlocking: Boolean

    Permalink
    Definition Classes
    Molecule
  21. def isStatic: Boolean

    Permalink

    This is a def because we will only know whether this molecule is static after this molecule is bound to a reaction site, at run time.

    This is a def because we will only know whether this molecule is static after this molecule is bound to a reaction site, at run time. This will be overridden by the M class (only non-blocking molecules can be static).

    Definition Classes
    MMolecule
  22. final def logSoup: String

    Permalink
    Definition Classes
    Molecule
  23. val name: String

    Permalink

    Name of the molecule, used for debugging only.

    Name of the molecule, used for debugging only.

    Definition Classes
    MMolecule
  24. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  25. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  26. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  27. var reactionSiteWrapper: ReactionSiteWrapper[_, _]

    Permalink
    Attributes
    protected
    Definition Classes
    Molecule
  28. final def setLogLevel(logLevel: Int): Unit

    Permalink
    Definition Classes
    Molecule
  29. def siteIndex: Int

    Permalink
    Definition Classes
    Molecule
  30. var siteIndexValue: Int

    Permalink
    Attributes
    protected
    Definition Classes
    Molecule
  31. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  32. def toString(): String

    Permalink

    Prints a molecule's displayed name and a /B suffix for blocking molecules.

    Prints a molecule's displayed name and a /B suffix for blocking molecules.

    returns

    A molecule's displayed name as string.

    Definition Classes
    Molecule → AnyRef → Any
  33. def typeSymbol: Symbol

    Permalink
    Definition Classes
    Molecule
  34. def unapply(arg: ReactionBodyInput): Option[T]

    Permalink
  35. var valSelfBlockingPool: Option[Pool]

    Permalink
    Attributes
    protected
    Definition Classes
    Molecule
  36. var valTypeSymbol: Symbol

    Permalink
    Attributes
    protected
    Definition Classes
    Molecule
  37. def volatileValue: T

    Permalink

    Volatile reader for a molecule.

    Volatile reader for a molecule. The molecule must be declared as static.

    returns

    The value carried by the static molecule when it was last emitted. Will throw exception if the static molecule has not yet been emitted.

  38. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  40. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Molecule

Inherited from PersistentHashCode

Inherited from (T) ⇒ Unit

Inherited from AnyRef

Inherited from Any

Ungrouped