trait LevelBasedTransaction extends TwoVersionTransactionImpl with Evaluator with Initializer
Further implementation of level-based propagation based on the common propagation implementation.
- Alphabetic
- By Inheritance
- LevelBasedTransaction
- Initializer
- Evaluator
- TwoVersionTransactionImpl
- TwoVersionTransaction
- Transaction
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
type
State[V] = Levelbased.State[V]
- Definition Classes
- LevelBasedTransaction → Initializer → TwoVersionTransactionImpl → TwoVersionTransaction → Transaction
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](initialValue: 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
access(reactive: Levelbased.ReSource): (reactive)#Value
- Definition Classes
- TwoVersionTransactionImpl → Transaction
-
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
-
val
commitStarted: Boolean
- Definition Classes
- TwoVersionTransactionImpl
-
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: ReevTicket[(head)#State, (head)#Value]): Unit
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
initializationPhase(initialChanges: Map[Levelbased.ReSource, InitialChange[State]]): Unit
Starts the propagation by applying the initial changes
Starts the propagation by applying the initial changes
- Definition Classes
- LevelBasedTransaction → TwoVersionTransaction
-
def
initialize(reactive: Levelbased.Derived, incoming: Set[Levelbased.ReSource], needsReevaluation: 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
- needsReevaluation
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
-
def
initializer: of[State]
- Definition Classes
- LevelBasedTransaction → Transaction
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- lazy val levelQueue: LevelQueue
-
def
makeSourceStructState[V](initialValue: 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()
-
final
def
now[A](reactive: of[State, A]): A
- Definition Classes
- Transaction
-
def
observe(f: Observation): Unit
- Definition Classes
- TwoVersionTransactionImpl → Transaction
-
def
observerPhase(): Unit
Call all registered after-commit obverser functions.
Call all registered after-commit obverser functions.
- Definition Classes
- TwoVersionTransactionImpl → TwoVersionTransaction
-
val
observers: ListBuffer[Observation]
- Definition Classes
- TwoVersionTransactionImpl
- final def prepareInitialChange(ic: InitialChange[State]): Unit
-
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: of[State], inputs: Set[of[State]]): 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: ListBuffer[core.ReSource { type State[V] = Levelbased.this.State[V] }]
- 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( ... )
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
writeState(pulsing: Levelbased.ReSource)(value: (pulsing)#Value): Unit
- Definition Classes
- TwoVersionTransactionImpl
-
object
accessHandler extends AccessHandler[State]
- Definition Classes
- TwoVersionTransactionImpl