Class TBufferedReadStream
Unit
Declaration
type TBufferedReadStream = class(TPeekCharStream)
Description
Read another stream, sequentially, always being able to back one character, and buffering it. This implements abstract TPeekCharStream class, so this is a purely sequential read-only stream that reads from underlying SourceStream and you can use PeekChar and ReadChar and ReadUpto routines.
This stream will buffer incoming data from SourceStream. This means that reading by a very small chunks (like e.g. byte-by-byte) does not hurt performance.
Hierarchy
- TObject
- TStream
- TPeekCharStream
- TBufferedReadStream
Overview
Methods
function GetPosition: Int64; override; |
|
constructor Create(ASourceStream: TStream; AOwnsSourceStream: boolean; ABufferSize: Cardinal = DefaultReadBufferSize); |
|
destructor Destroy; override; |
|
function Read(var LocalBuffer; Count: Longint): Longint; override; |
|
function PeekChar: Integer; override; |
|
function ReadChar: Integer; override; |
|
function ReadUpto(const EndingChars: TSetOfChars): AnsiString; override; |
Properties
property BufferSize: Cardinal read FBufferSize; |
Description
Methods
function GetPosition: Int64; override; |
|
This item has no description. |
constructor Create(ASourceStream: TStream; AOwnsSourceStream: boolean; ABufferSize: Cardinal = DefaultReadBufferSize); |
|
This item has no description. |
destructor Destroy; override; |
|
This item has no description. |
function Read(var LocalBuffer; Count: Longint): Longint; override; |
|
This item has no description. |
function PeekChar: Integer; override; |
|
This item has no description. Showing description inherited from TPeekCharStream.PeekChar.
Peek next character. Returns the next character without making it "already read", so the next call to Read or ReadBuffer will return this char. Subsequent calls to Returns -1 if stream ended, otherwise returns Ord or given char. This may call SourceStream.Read, and any exceptions that may be raised in SourceStream.Read are propagated higher from this method. |
function ReadChar: Integer; override; |
|
This item has no description. Showing description inherited from TPeekCharStream.ReadChar. Read next character. A shortcut for Read(c, 1), but it returns -1 if end of stream is reached. So it's consistent with PeekChar. Sometimes it's also more comfortable, and it's a little faster. |
function ReadUpto(const EndingChars: TSetOfChars): AnsiString; override; |
|
This item has no description. Showing description inherited from TPeekCharStream.ReadUpto. Read characters, until one of EndingChars (or end of stream) is found. The ending character is not "consumed" from the stream. The Result is guaranteed to not contain any char from EndingChars. |
Properties
property BufferSize: Cardinal read FBufferSize; |
|
This item has no description. |
Generated by PasDoc 0.16.0-snapshot.