Class DiffNode.TimeDependentState<L extends Label>

java.lang.Object
org.variantsync.diffdetective.variation.diff.DiffNode.TimeDependentState<L>
Enclosing class:
DiffNode<L extends Label>

private static class DiffNode.TimeDependentState<L extends Label> extends Object
Bundles all the state that may be different before and after an edit.
See Also:
  • Field Details

    • parent

      public DiffNode<L extends Label> parent
      The parents DiffNode before and after the edit. This array has to be indexed by Time.ordinal() Invariant: Iff getParent(time) != null then getParent(time).getChildOrder(time).contains(this).
    • children

      public List<DiffNode<L extends Label>> children
      The children before and after the edit. This array has to be indexed by Time.ordinal() Invariant: Iff getChildOrder(time).contains(child) then child.getParent(time) == this.
    • projection

      public Projection<L extends Label> projection
      Cache for before and after projections. It stores the projection node at each time so that only one instance of Projection per Time is ever created. This array has to be indexed by Time.ordinal()

      This field is required to allow identity tests of Projections with ==.

  • Constructor Details

    • TimeDependentState

      public TimeDependentState()