trait LevelBasedTransaction extends TwoVersionTransactionImpl with Evaluator
Further implementation of level-based propagation based on the common propagation implementation.
- Alphabetic
- By Inheritance
- LevelBasedTransaction
- Evaluator
- TwoVersionTransactionImpl
- Initializer
- TwoVersionTransaction
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
beforeDynamicDependencyInteraction(dependency: Levelbased.ReSource): Unit
allow the propagation to handle dynamic access to reactives
allow the propagation to handle dynamic access to reactives
- Definition Classes
- TwoVersionTransactionImpl
-
abstract
def
makeDerivedStructState[V](valuePersistency: V): State[V]
Creates the internal state of Deriveds
Creates the internal state of Deriveds
- Attributes
- protected[this]
- Definition Classes
- Initializer
-
abstract
def
preparationPhase(initialWrites: Set[Levelbased.ReSource]): Unit
Locks (and potentially otherwise prepares) all affected reactive values to prevent interfering changes.
Locks (and potentially otherwise prepares) all affected reactive values to prevent interfering changes.
- initialWrites
List of affected reactive values
- Definition Classes
- TwoVersionTransaction
-
abstract
def
releasePhase(): Unit
Unlocks (and potentially otherwise reverts the propagation preparations for) each reactive value to allow future turns to run on them.
Unlocks (and potentially otherwise reverts the propagation preparations for) each reactive value to allow future turns to run on them.
- Definition Classes
- TwoVersionTransaction
Concrete Value Members
-
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
-
def
accessTicket(): Levelbased.AccessTicket
- Definition Classes
- TwoVersionTransactionImpl → Initializer
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @IntrinsicCandidate()
-
final
def
commitDependencyDiff(node: Levelbased.Derived, current: Set[Levelbased.ReSource])(updated: Set[Levelbased.ReSource]): Unit
- Definition Classes
- TwoVersionTransactionImpl
-
def
commitPhase(): Unit
Commits all uncommitted changes to the reactive element.
Commits all uncommitted changes to the reactive element.
- Definition Classes
- TwoVersionTransactionImpl → TwoVersionTransaction
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
evaluate(r: Levelbased.Derived): Unit
Overrides the evaluator, this is essentially an inlined callback
Overrides the evaluator, this is essentially an inlined callback
- Definition Classes
- LevelBasedTransaction → Evaluator
- def evaluateIn(head: Levelbased.Derived)(dt: Levelbased.ReevTicket[core.Core.Derived.Value]): Unit
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
ignite(reactive: Levelbased.Derived, incoming: Set[Levelbased.ReSource], ignitionRequiresReevaluation: Boolean): Unit
to be implemented by the propagation algorithm, called when a new reactive has been instantiated and needs to be connected to the graph and potentially reevaluated.
to be implemented by the propagation algorithm, called when a new reactive has been instantiated and needs to be connected to the graph and potentially reevaluated.
- reactive
the newly instantiated reactive
- incoming
a set of incoming dependencies
- ignitionRequiresReevaluation
true if the reactive must be reevaluated at creation even if none of its dependencies change in the creating turn.
- Attributes
- protected
- Definition Classes
- LevelBasedTransaction → Initializer
-
final
def
initializationPhase(initialChanges: Map[Levelbased.ReSource, Levelbased.InitialChange]): Unit
Starts the propagation by applying the initial changes
Starts the propagation by applying the initial changes
- Definition Classes
- TwoVersionTransactionImpl → TwoVersionTransaction
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- lazy val levelQueue: LevelQueue
-
def
makeSourceStructState[V](valuePersistency: V): State[V]
Creates the internal state of ReSources
Creates the internal state of ReSources
- Attributes
- protected[this]
- Definition Classes
- Initializer
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
def
observe(f: Levelbased.Observation): Unit
- Definition Classes
- TwoVersionTransactionImpl
-
def
observerPhase(): Unit
Call all registered after-commit obverser functions.
Call all registered after-commit obverser functions.
- Definition Classes
- TwoVersionTransactionImpl → TwoVersionTransaction
-
val
observers: ArrayBuffer[Levelbased.Observation]
- Definition Classes
- TwoVersionTransactionImpl
-
final
def
prepareInitialChange(ic: Levelbased.InitialChange): Unit
- Definition Classes
- LevelBasedTransaction → TwoVersionTransactionImpl
-
def
propagationPhase(): Unit
Performs the actual propagation, setting the new (not yet committed) values for each reactive element.
Performs the actual propagation, setting the new (not yet committed) values for each reactive element.
- Definition Classes
- LevelBasedTransaction → TwoVersionTransaction
-
def
register(reactive: Levelbased.ReSource): Unit
hook for schedulers to globally collect all created resources, usually does nothing
hook for schedulers to globally collect all created resources, usually does nothing
- Attributes
- protected[this]
- Definition Classes
- Initializer
-
def
rollbackPhase(): Unit
Reverts all uncommitted changes to the reactive element.
Reverts all uncommitted changes to the reactive element.
- Definition Classes
- TwoVersionTransactionImpl → TwoVersionTransaction
-
def
schedule(commitable: Levelbased.ReSource): Unit
Schedules a temporarily written change to be committed by the turn.
Schedules a temporarily written change to be committed by the turn.
- Definition Classes
- TwoVersionTransactionImpl → TwoVersionTransaction
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
val
toCommit: ArrayBuffer[Levelbased.ReSource]
- Definition Classes
- TwoVersionTransactionImpl
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
val
token: Token
- Definition Classes
- TwoVersionTransactionImpl
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
writeState(pulsing: Levelbased.ReSource)(value: Value): Unit
- Definition Classes
- TwoVersionTransactionImpl