Esempio n. 1
0
        private static IValueTracker <T> CreateValueTracker(ValueTrackerTypes valueTrackerType)
        {
            switch (valueTrackerType)
            {
            case ValueTrackerTypes.Default:
                return(new DefaultValueTracker <T>());

            case ValueTrackerTypes.Equality:
                return(new EqualityValueTracker <T>());

            case ValueTrackerTypes.DeepEquality:
                return(new DeepEqualityValueTracker <T>());

            case ValueTrackerTypes.Interceptor:
            default:
                throw new NotSupportedException();
            }
        }
Esempio n. 2
0
 public TrackValue(T value, ValueTrackerTypes valueTrackerType) : this(value, value, CreateValueTracker(valueTrackerType), false)
 {
 }