Exemplo n.º 1
0
 internal ReferenceInconsistency(SynchronizationSingleDependency <TLeft, TRight, TDepLeft, TDepRight> rule, SynchronizationComputation <TLeft, TRight> baseCorrespondence, TDepLeft leftValue, TDepRight rightValue)
 {
     Rule = rule;
     BaseCorrespondence = baseCorrespondence;
     LeftValue          = leftValue;
     RightValue         = rightValue;
 }
Exemplo n.º 2
0
        internal IncrementalReferenceConsistencyCheck(INotifyReversableValue <TDepLeft> left, INotifyReversableValue <TDepRight> right, SynchronizationComputation <TLeft, TRight> computation, SynchronizationSingleDependency <TLeft, TRight, TDepLeft, TDepRight> parent)
        {
            Left        = left;
            Right       = right;
            Parent      = parent;
            Computation = computation;

            Left.ValueChanged  += Left_ValueChanged;
            Right.ValueChanged += Right_ValueChanged;

            if (Computation.SynchronizationContext.Direction == SynchronizationDirection.CheckOnly &&
                Computation.TransformationContext.Trace.ResolveIn(Parent.childRule.LeftToRight, Left.Value) != Right.Value)
            {
                Computation.SynchronizationContext.Inconsistencies.Add(this);
            }
        }