invariants.core

propagation

package propagation

This package proposes a model of propagation. A propagation is a wave that updates something in PropagationElement Propagation elements have some dependencies that must be followed by the propagation wave. Propagation elements are grouped in a structure called the PropagationStructure

A propagation is like wave that sweeps the graph defined by the propagation elements, calling the performPropagation method of each propagation element in such a way that

One might request targeted propagation, which specify that the propagation wave must only propagate what is necessary to reach a defined element.

Visibility
  1. Public
  2. All

Type Members

  1. trait BulkPropagator extends PropagationElement

    This is the node type to be used for bulking

  2. case class KeyForElementRemoval (element: PropagationElement, KeyForListenedElement: PFDLLStorageElement[(PropagationElement, Any)], KeyForListeningElement: PFDLLStorageElement[PropagationElement]) extends Product with Serializable

    This class is used in Asteroid as a handle to register and unregister dynbamically to varaibles

  3. trait PropagationElement extends DAGNode with TarjanNode

    this is a propagation element.

  4. class PropagationStructure extends AnyRef

    This class manages propagation among propagation elements.

  5. class StrognlyConnexComponent extends PropagationElement with DAG

Value Members

  1. object PropagationElement extends AnyRef