private static bool BoundariesProduceEmptyInterval(LowerBoundary <T> lowerBoundary, UpperBoundary <T> upperBoundary) { throw null; //return lowerBoundary.Value.IsGreaterThan(upperBoundary.Value) || (lowerBoundary.Value.IsEqualTo(upperBoundary.Value) && (lowerBoundary.IsOpen || upperBoundary.IsOpen)); }
internal Interval(LowerBoundary <T> lowerBoundary, UpperBoundary <T> upperBoundary) : this(new Interval <T, DefaultValueComparer <T> >(lowerBoundary, upperBoundary)) { }
public bool Equals(UpperBoundary <T, TComparer> other) => IsValid && other.IsValid ? Value.IsEqualTo <T, TComparer>(other.Value) && Type == other.Type : IsValid == other.IsValid;
internal Interval(LowerBoundary <T, TComparer> lowerBoundary, UpperBoundary <T, TComparer> upperBoundary) { _lowerBoundary = lowerBoundary; _upperBoundary = upperBoundary; }
internal UpperBoundary(UpperBoundary <T, DefaultValueComparer <T> > boundary) => _boundary = boundary;