public ReadRange(T start, T end, bool fromEnd, IRangeEnumerator <T> enumerator) { this.Start = start; this.End = end; this.IsFromEnd = fromEnd; this.enumerator = enumerator; }
private ReadRange(SerializationInfo info, StreamingContext context) { this.Start = info.GetValueOrDefault <T>(nameof(this.Start)); this.End = info.GetValueOrDefault <T>(nameof(this.End)); this.IsFromEnd = info.GetBooleanOrDefault(nameof(this.IsFromEnd)); this.enumerator = null; }
public ReadRange(T start, T end, bool fromEnd) { this.Start = start; this.End = end; this.IsFromEnd = fromEnd; this.enumerator = null; }
public ReadRange <T> With(T?Start = null, T?End = null, bool?IsFromEnd = null, IRangeEnumerator <T> Enumerator = null) => new ReadRange <T>( Start ?? this.Start, End ?? this.End, IsFromEnd ?? this.IsFromEnd, Enumerator ?? this.enumerator );