trait RuntimeComponentApi extends SignalsApi with TrellisApi
- Alphabetic
- By Inheritance
- RuntimeComponentApi
- TrellisApi
- SignalsApi
- ContactsDsl
- ComponentsApi
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
implicit
class
ContactExtractor
[T] extends AnyRef
Extractor of contacts' data from result.
Extractor of contacts' data from result.
- Definition Classes
- SignalsApi
-
implicit
class
RichSignalList
extends AnyRef
- Definition Classes
- SignalsApi
-
case class
SubsystemDirectSignal
[T](subsystemName: String, signal: SignalsApi.Signal[T]) extends SubsystemDirectSignal0 with Product with Serializable
An encapsulation of the signal that targets a subsystem's internal contact.
An encapsulation of the signal that targets a subsystem's internal contact.
- Definition Classes
- SignalsApi
-
sealed
trait
SubsystemDirectSignal0
extends AnyRef
- Definition Classes
- SignalsApi
-
case class
SubsystemDirectSignalDist
(subsystemName: String, signal: SignalsApi.SignalDist) extends SubsystemDirectSignal0 with Product with Serializable
- Definition Classes
- SignalsApi
-
type
Component = components.Component
- Definition Classes
- ComponentsApi
-
type
ComponentWithInternalStructure = components.ComponentWithInternalStructure
- Definition Classes
- ComponentsApi
-
type
Contact[T] = components.Contact[T]
- Definition Classes
- ComponentsApi
-
type
Context = Map[Contact[_], _]
The context for system is a map from state handles to values.
The context for system is a map from state handles to values.
- Definition Classes
- TrellisApi
-
type
FlatMapLink[-T1, +T2] = components.FlatMapLink[T1, T2]
- Definition Classes
- ComponentsApi
-
type
Link[T1, T2, -TL1 >: T1, +TL2 <: T2] = components.Link[T1, T2, TL1, TL2]
- Definition Classes
- ComponentsApi
-
type
LinkInfo[-T1, +T2] = components.LinkInfo[T1, T2]
- Definition Classes
- ComponentsApi
-
type
Named = components.Named
- Definition Classes
- ComponentsApi
-
type
NopLink[-T1, +T2 >: T1] = components.NopLink[T1, T2]
- Definition Classes
- ComponentsApi
-
type
RedMapLink[-T1, +T2] = components.RedMapLink[T1, T2]
- Definition Classes
- ComponentsApi
-
sealed
trait
RuntimeComponent
extends Named
A runtime component that should be processed with pattern matching.
-
case class
RuntimeComponentFlatMap
(name: String, input: RuntimeComponentApi.Contact[_], output: RuntimeComponentApi.Contact[_], f: (RuntimeComponentApi.Signal[_]) ⇒ RuntimeComponentApi.SignalCollection[RuntimeComponentApi.Signal[_]]) extends RuntimeComponentTransparent with Product with Serializable
The most popular runtime component.
The most popular runtime component. Transforms a signal into other signals. This component is not only FlatMap link. It can represent almost any stateless part of a system.
- f
- the actual transformation
-
case class
RuntimeComponentMultiState
(name: String, stateHandles: List[RuntimeComponentApi.Contact[_]], f: RuntimeComponentApi.TotalTrellisProducer) extends RuntimeComponent with Product with Serializable
The most general processing element.
The most general processing element. Can depend on a few states.
-
case class
RuntimeComponentStateFlatMap
[S](name: String, inputContacts: List[RuntimeComponentApi.Contact[_]], outputContacts: List[RuntimeComponentApi.Contact[_]], stateHandle: RuntimeComponentApi.Contact[S], f: (S, RuntimeComponentApi.Signal[_]) ⇒ (S, RuntimeComponentApi.SignalCollection[RuntimeComponentApi.Signal[_]])) extends RuntimeComponentTransparent with Product with Serializable
Is very similar to the most generic link — StateFlatMap.
Is very similar to the most generic link — StateFlatMap. This component refers a single stateHandle.
- sealed trait RuntimeComponentTransparent extends RuntimeComponent
-
type
Signal[T] = components.Signal[T]
- Definition Classes
- ComponentsApi
-
type
SignalCollection[+T] = Iterable[T]
- Definition Classes
- ComponentsApi
-
type
SignalDist = components.SignalDist
- Definition Classes
- ComponentsApi
-
type
SimpleSignalProcessor = (Signal[_]) ⇒ SignalCollection[Signal[_]]
The simplest signal processor.
The simplest signal processor. Corresponds to FlatMap.
- Definition Classes
- TrellisApi
-
type
StateHandle[T] = components.StateHandle[T]
- Definition Classes
- ComponentsApi
-
type
StateZipLink[S, -T1, +T2 >: T1] = components.StateZipLink[S, T1, T2]
- Definition Classes
- ComponentsApi
-
type
StatefulFlatMapLink[S, -T1, +T2] = components.StatefulFlatMapLink[S, T1, T2]
- Definition Classes
- ComponentsApi
-
type
StaticSystem = components.StaticSystem
- Definition Classes
- ComponentsApi
-
type
StaticSystemExtensionId[+T] = components.StaticSystemExtensionId[T]
- Definition Classes
- ComponentsApi
-
type
TotalTrellisProducer = (Context, Signal[_]) ⇒ TrellisElement
A function that takes a single signal on input and returns the last trellis element.
A function that takes a single signal on input and returns the last trellis element. This producer does not store managed state in it.
- Definition Classes
- TrellisApi
-
case class
Trace
(signalsReversed: List[RuntimeComponentApi.Signal[_]], processorsReversed: List[RuntimeComponent] = Nil) extends Product with Serializable
The trace of a signal towards the original one.
The trace of a signal towards the original one. This class is intended for debug purposes. It can also be used in pattern matching and back tracking algorithm.
- signalsReversed
a list of signals starting from the last produced one and collecting the signals that have lead to the production of the last signal.
- processorsReversed
a list of processors that have worked for the production of the current signal. The length of the processors list is usually by one shorter than the length of the signals. However if it is a "lost trace" (the one that didn't produce output), then the last processor is added but the signal is not added. Thus the lengths are the same.
-
type
TrellisElement = (Context, SignalCollection[Signal[_]])
A snapshot of a running system at some discrete time moment.
A snapshot of a running system at some discrete time moment.
- Definition Classes
- TrellisApi
-
type
TrellisProducer = (TrellisElement) ⇒ TrellisElement
A function that makes single step (or a few steps) over time.
A function that makes single step (or a few steps) over time.
- Definition Classes
- TrellisApi
-
type
WithStaticSystem = components.WithStaticSystem
- Definition Classes
- ComponentsApi
-
implicit
class
RichSimpleSignalProcessor
extends AnyRef
- Definition Classes
- TrellisApi
-
implicit
class
RichTotalTrellisProducer
extends AnyRef
- Definition Classes
- TrellisApi
Value Members
-
object
SubsystemDirectSignal0
- Definition Classes
- SignalsApi
-
object
SubsystemSpecialAnswerContact
extends Contact[SubsystemDirectSignal0]
This contact is used to process answers of internal system.
This contact is used to process answers of internal system.
- Definition Classes
- SignalsApi
-
object
SubsystemSpecialContact
extends Contact[SubsystemDirectSignal0]
This contact is used to process signals of internal system.
This contact is used to process signals of internal system.
In asynchronous execution the resulting signal should come at the same level of "call stack". However as far as we usually get the signal asynchronously it is processed at top level. So in order to run it in inside the subsystem, we package asynchronous result into Signal(SubsystemSpecialContact, SubsystemDirectSignal( name, actual resulting signal))
- Definition Classes
- SignalsApi
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
val
Contact: components.Contact.type
- Definition Classes
- ComponentsApi
-
val
FlatMapLink: components.FlatMapLink.type
- Definition Classes
- ComponentsApi
-
val
Link: components.Link.type
- Definition Classes
- ComponentsApi
-
val
NopLink: components.NopLink.type
- Definition Classes
- ComponentsApi
-
val
RedMapLink: components.RedMapLink.type
- Definition Classes
- ComponentsApi
-
val
Signal: components.Signal.type
- Definition Classes
- ComponentsApi
-
val
SignalCollection: Iterable.type
- Definition Classes
- ComponentsApi
-
val
SignalDist: components.SignalDist.type
- Definition Classes
- ComponentsApi
-
val
StateHandle: components.StateHandle.type
- Definition Classes
- ComponentsApi
-
val
StateZipLink: components.StateZipLink.type
- Definition Classes
- ComponentsApi
-
val
StatefulFlatMapLink: components.StatefulFlatMapLink.type
- Definition Classes
- ComponentsApi
-
val
StaticSystem: components.StaticSystem.type
- Definition Classes
- ComponentsApi
-
val
WithStaticSystem: components.WithStaticSystem.type
- Definition Classes
- ComponentsApi
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
contact[T](name: String): components.Contact[T]
Create a contact with the given name.
Create a contact with the given name.
- Definition Classes
- ContactsDsl
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val linkToRuntimeComponent: PartialFunction[Component, RuntimeComponent]
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
implicit
def
pairToSignal[T](p: (Contact[T], T)): Signal[T]
One may use notation (contact -> data) to represent a signal
One may use notation (contact -> data) to represent a signal
- Definition Classes
- SignalsApi
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )