Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Read() [2/2]

override int System.IO.BufferedStream.Read ( Span< byte > destination)
inlinevirtual

Reimplemented from System.IO.Stream.

Definition at line 396 of file BufferedStream.cs.

397 {
400 int num = ReadFromBuffer(destination);
401 if (num == destination.Length)
402 {
403 return num;
404 }
405 if (num > 0)
406 {
407 destination = destination.Slice(num);
408 }
409 _readPos = (_readLen = 0);
410 if (_writePos > 0)
411 {
412 FlushWrite();
413 }
414 if (destination.Length >= _bufferSize)
415 {
416 return _stream.Read(destination) + num;
417 }
420 return ReadFromBuffer(destination) + num;
421 }
int ReadFromBuffer(byte[] buffer, int offset, int count)
int Read(byte[] buffer, int offset, int count)

References System.IO.BufferedStream._buffer, System.IO.BufferedStream._bufferSize, System.IO.BufferedStream._readLen, System.IO.BufferedStream._readPos, System.IO.BufferedStream._stream, System.IO.BufferedStream._writePos, System.destination, System.IO.BufferedStream.EnsureBufferAllocated(), System.IO.BufferedStream.EnsureCanRead(), System.IO.BufferedStream.EnsureNotClosed(), System.IO.BufferedStream.FlushWrite(), System.IO.Stream.Read(), and System.IO.BufferedStream.ReadFromBuffer().