|
StormByte C++ Library: Buffer module 1.2.0
StormByte-Buffer is the buffer module of the StormByte C++ suite.
|
Adapter that turns any ReadOnly buffer into an ExternalReader. More...
#include <StormByte/buffer/external.hxx>


Public Member Functions | |
Constructors / destructor / assignment | |
| ExternalBufferReader (ReadOnly &buffer) noexcept | |
| Construct from a ReadOnly reference. | |
| ExternalBufferReader (const ExternalBufferReader &)=default | |
| ExternalBufferReader (ExternalBufferReader &&) noexcept=default | |
| ~ExternalBufferReader () noexcept override | |
| ExternalBufferReader & | operator= (const ExternalBufferReader &)=default |
| ExternalBufferReader & | operator= (ExternalBufferReader &&) noexcept=default |
Clonable | |
| PointerType | Clone () const noexcept override |
| Polymorphic copy. | |
| PointerType | Move () noexcept override |
| Polymorphic move. | |
Queries | |
| std::size_t | AvailableBytes () const noexcept override |
| Number of bytes currently available for reading. | |
| bool | Empty () const noexcept override |
| Whether the underlying source holds no data. | |
| bool | EoF () const noexcept override |
| End-of-file / end-of-stream condition. | |
| bool | IsReadable () const noexcept override |
| Whether the source can still be read. | |
Reading | |
| bool | Read (std::size_t count, DataType &out) const noexcept override |
| Non-destructive read (advances the logical position). | |
| bool | Extract (std::size_t count, DataType &out) noexcept override |
| Destructive read (consumes / erases data from the source). | |
| bool | Peek (std::size_t count, DataType &out) const noexcept override |
| Non-destructive peek (does not advance the position). | |
| void | ReadUntilEoF (DataType &out) const noexcept override |
| Read everything until EoF (non-destructive). | |
| void | ExtractUntilEoF (DataType &out) noexcept override |
| Extract everything until EoF (destructive). | |
Positioning / maintenance | |
| void | Seek (std::ptrdiff_t offset, Position mode) const noexcept override |
| Move the logical read position. | |
| void | Clean () noexcept override |
| Discard already-consumed data (from start up to the current read position). | |
Public Member Functions inherited from StormByte::Buffer::ExternalReader | |
| ExternalReader () noexcept=default | |
| ExternalReader (const ExternalReader &)=default | |
| ExternalReader (ExternalReader &&) noexcept=default | |
| ~ExternalReader () noexcept override | |
| ExternalReader & | operator= (const ExternalReader &)=default |
| ExternalReader & | operator= (ExternalReader &&) noexcept=default |
| bool | Read (DataType &out) const noexcept |
| Convenience overload — read all available bytes. | |
| bool | Extract (DataType &out) noexcept |
| Convenience overload — extract all available bytes. | |
Adapter that turns any ReadOnly buffer into an ExternalReader.
|
inlineexplicitnoexcept |
|
default |
|
defaultnoexcept |
|
overridenoexcept |
|
overridevirtualnoexcept |
Number of bytes currently available for reading.
Implements StormByte::Buffer::ExternalReader.
|
overridevirtualnoexcept |
Discard already-consumed data (from start up to the current read position).
Reimplemented from StormByte::Buffer::ExternalReader.
|
overridenoexcept |
Polymorphic copy.
|
overridevirtualnoexcept |
Whether the underlying source holds no data.
true if no data remains. Implements StormByte::Buffer::ExternalReader.
|
overridevirtualnoexcept |
End-of-file / end-of-stream condition.
true when the source is closed (or in error) and no more bytes are available. Implements StormByte::Buffer::ExternalReader.
|
overridevirtualnoexcept |
Destructive read (consumes / erases data from the source).
| count | Number of bytes requested (0 = all available). |
| out | Destination buffer (appended to). |
true on success, false on insufficient data or error. Implements StormByte::Buffer::ExternalReader.
|
overridevirtualnoexcept |
Extract everything until EoF (destructive).
| out | Destination buffer. |
Implements StormByte::Buffer::ExternalReader.
|
overridevirtualnoexcept |
Whether the source can still be read.
false when the source is in a permanent error state. Implements StormByte::Buffer::ExternalReader.
|
overridenoexcept |
Polymorphic move.
|
default |
|
defaultnoexcept |
|
overridevirtualnoexcept |
Non-destructive peek (does not advance the position).
| count | Number of bytes requested (0 = all available). |
| out | Destination buffer (appended to). |
true on success, false on insufficient data or error. Implements StormByte::Buffer::ExternalReader.
|
overridevirtualnoexcept |
Non-destructive read (advances the logical position).
| count | Number of bytes requested (0 = all available). |
| out | Destination buffer (appended to). |
true on success, false on insufficient data or error. Implements StormByte::Buffer::ExternalReader.
|
overridevirtualnoexcept |
Read everything until EoF (non-destructive).
| out | Destination buffer. |
Implements StormByte::Buffer::ExternalReader.
|
overridevirtualnoexcept |
Move the logical read position.
| offset | Offset value. |
| mode | Position::Absolute or Position::Relative. |
Reimplemented from StormByte::Buffer::ExternalReader.