#include <stream.h>
Friends | |
class | SeekableWriter |
Additional Inherited Members | |
![]() | |
enum | Whence : uint8_t { kBeginning = 0b001 , kCurrent = 0b010 , kEnd = 0b100 } |
Positions from which to seek. More... | |
![]() | |
constexpr bool | readable () const |
constexpr bool | writable () const |
constexpr bool | seekable () const |
constexpr bool | seekable (Whence origin) const |
True if the stream supports seeking from the specified origin. | |
Result< ByteSpan > | Read (ByteSpan dest) |
Result< ByteSpan > | Read (void *dest, size_t size_bytes) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
Result< ByteSpan > | ReadExact (ByteSpan const buffer) |
Status | Write (ConstByteSpan data) |
Status | Write (const void *data, size_t size_bytes) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
Status | Write (const std::byte b) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
Status | Seek (ptrdiff_t offset, Whence origin=kBeginning) |
size_t | Tell () |
size_t | ConservativeReadLimit () const |
size_t | ConservativeWriteLimit () const |
![]() | |
static constexpr size_t | kUnlimited = std::numeric_limits<size_t>::max() |
Value returned from read/write limit if unlimited. | |
static constexpr size_t | kUnknownPosition = std::numeric_limits<size_t>::max() |
Returned by Tell() if getting the position is not supported. | |
![]() | |
enum class | LimitType : bool { kRead , kWrite } |
A Writer that supports at least relative seeking within some range of the current position. Seeking beyond that or from other origins may or may not be supported. The extent to which seeking is possible is NOT exposed by this API.
Use in APIs when:
Inherit from when:
A buffered Writer that only supports seeking within its buffer is a good example of a RelativeSeekableWriter.