public TakeStream(Stream stream, long count, bool leaveOpen) : base(StreamCapabilities.InferFrom(stream).Intersect(ReadCapabilities), ReadCapabilities) { this.stream = stream; this.count = this.remaining = count; this.initialPosition = stream.CanSeek ? stream.Position : default(long?); this.leaveOpen = leaveOpen; }
public AutoFlushedStream(Stream stream, bool leaveOpen) : base(StreamCapabilities.InferFrom(stream).Intersect(BaseCapabilities), BaseCapabilities) { this.stream = stream; this.leaveOpen = leaveOpen; }
public ConcatStream(Stream first, Stream second) : base(StreamCapabilities.InferFrom(first).Intersect(StreamCapabilities.InferFrom(second)).Intersect(ReadCapabilities), ReadCapabilities) { this.first = first; this.second = second; }