This class implements overflowable output stream-buffer functionality.
Declared in <bdlsb_overflowmemoutput.h>
class OverflowMemOutput;
This class, like bdlsb::OverflowMemOutStreamBuf, implements the output functionality of the bsl::basic_streambuf interface, using a client-supplied buffer and allocator-supplied overflow buffer if additional memory is needed. It has an interface similar to bdlsb::OverflowMemOutStreamBuf but does not inherit from bsl::streambuf. Thus, it is suitable for use as template parameter to bslx::GenericByteOutStream (but not to bslx::ByteOutStream or bslx::ByteOutStreamFormatter). Note that this class is not designed to be derived from.
| Name | Description |
|---|---|
char_type | This typedef is an alias to char. |
int_type | This typedef is an alias to traits_type::int_type. |
off_type | This typedef is an alias to traits_type::off_type. |
pos_type | This typedef is an alias to traits_type::pos_type. |
traits_type | This typedef is an alias to bsl::char_traits<char>. |
| Name | Description |
|---|---|
OverflowMemOutput [constructor] | Create an OverflowMemOutput using the specified initial output buffer. |
~OverflowMemOutput [destructor] | Destroy this stream buffer. |
dataLength | Return the number of bytes that have been written to this object. |
dataLengthInInitialBuffer | Return the length of data in the initial buffer, i.e., dataLength() if there is no overflow buffer, or initialBufferSize() if there is one. |
dataLengthInOverflowBuffer | Return the length of the data in the overflow buffer, i.e., 0 if there is no overflow buffer, or dataLength() - initialBufferSize() if there is one. |
initialBuffer | Return a pointer providing non-modifiable access to the character buffer held by this stream buffer (specified at construction). |
initialBufferSize | Return the size of the initial buffer held by this stream buffer. |
overflowBuffer | Return a pointer providing non-modifiable access to the overflow buffer if there is one, or 0 otherwise. |
overflowBufferSize | Return the size of the overflow buffer, or 0 if there is no overflow buffer. |
pubseekoff | Set the position indicator relative to the specified base position. |
pubseekpos | Set the position indicator to the specified absolute position. |
pubsetbuf | Reinitialize this stream buffer to use the specified character buffer. |
pubsync | Synchronize this stream buffer with associated character sequence. Operation has no effect. Return 0 unconditionally. |
sputc | Write the specified character at the current write position. |
sputn | Write characters from the specified source to this buffer. |
operator BloombergLP::bslmf::NestedTraitDeclaration<OverflowMemOutput, UsesBslmaAllocator> | Declare that this type uses a bslma allocator. |