Enables reading of the current value during admission.
Enables reading of the current value during admission. Keeps track of written sources internally.
Base implementation for reactives, with Derived for scheduling, together with a ReName and containing a State
Enables the creation of other reactives
Enables the creation of other reactives
A reactive value is something that can be reevaluated
A reactive value is something that can be reevaluated
User facing low level API to access values in a dynamic context.
User facing low level API to access values in a dynamic context.
Encapsulates an action changing a single source.
Encapsulates an action changing a single source.
InnerTickets are used in Rescala to give capabilities to contexts during propagation.
InnerTickets are used in Rescala to give capabilities to contexts during propagation. ReevTicket is used during reevaluation, and AdmissionTicket during the initialization.
Common macro accessors for rescala.operator.SignalBundle.Signal and rescala.operator.EventBundle.Event
Common macro accessors for rescala.operator.SignalBundle.Signal and rescala.operator.EventBundle.Event
return type of the accessor
Further implementation of level-based propagation based on the common propagation implementation.
Further implementation of level-based propagation based on the common propagation implementation.
If no InnerTicket is found, then these implicits will search for a Scheduler, creating the reactives outside of any turn.
If no InnerTicket is found, then these implicits will search for a Scheduler, creating the reactives outside of any turn.
Source of (reactive) values.
Source of (reactive) values. State can only be accessed with a correct InnerTicket.
ReevTicket is given to the Derived reevaluate method and allows to access other reactives.
ReevTicket is given to the Derived reevaluate method and allows to access other reactives. The ticket tracks return values, such as dependencies, the value, and if the value should be propagated. Such usages make it unsuitable as an API for the user, where StaticTicket or DynamicTicket should be used instead.
Propagation engine that defines the basic data-types available to the user and creates turns for propagation handling
Propagation engine that defines the basic data-types available to the user and creates turns for propagation handling
User facing low level API to access values in a static context.
User facing low level API to access values in a static context.
Implementation of the turn handling defined in the Engine trait
Implementation of the turn handling defined in the Engine trait
Transaction type used by the scheduler
State that implements both the buffered pulse and the buffering capabilities itself.
State that implements both the buffered pulse and the buffering capabilities itself.
Abstract propagation definition that defines phases for reactive propagation through dependent reactive elements.
Abstract propagation definition that defines phases for reactive propagation through dependent reactive elements.
Basic implementation of the most fundamental propagation steps as defined by AbstractPropagation.
Basic implementation of the most fundamental propagation steps as defined by AbstractPropagation. Only compatible with spore definitions that store a pulse value and support graph operations.
As reactives can be created during propagation, any InnerTicket can be converted to a creation ticket.
As reactives can be created during propagation, any InnerTicket can be converted to a creation ticket.