BloombergLP::bslx::ByteOutStream

Provide a BDEX output stream that externalizes values to a byte buffer.

Synopsis

Declared in <bslx_byteoutstream.h>

class ByteOutStream;

Description

This class provides output methods to externalize values, and C-style arrays of values, of the fundamental integral and floating-point types, as well as bsl::string values. In particular, each put method of this class is guaranteed to write stream data that can be read by the corresponding get method of bslx::ByteInStream. See the bslx package-level documentation for the definition of the BDEX OutStream protocol.

Member Functions

NameDescription
ByteOutStream [constructor]Constructors
~ByteOutStream [destructor]Destroy this object.
bdexVersionSelector Return the versionSelector to be used with operator<< for BDEX streaming as per the bslx package-level documentation.
data Return the address of this stream's contiguous internal buffer.
invalidate Put this output stream in an invalid state. This function has no effect if this stream is already invalid.
isValid Return true if this stream is valid, and false otherwise.
length Return the number of bytes in this stream.
putArrayFloat32 Write an array of four-byte IEEE single-precision values to this stream.
putArrayFloat64 Write an array of eight-byte IEEE double-precision values to this stream.
putArrayInt16 Write an array of two-byte signed integers to this stream.
putArrayInt24 Write an array of three-byte signed integers to this stream.
putArrayInt32 Write an array of four-byte signed integers to this stream.
putArrayInt40 Write an array of five-byte signed integers to this stream.
putArrayInt48 Write an array of six-byte signed integers to this stream.
putArrayInt56 Write an array of seven-byte signed integers to this stream.
putArrayInt64 Write an array of eight-byte signed integers to this stream.
putArrayInt8 putArrayInt8 overloads
putArrayUint16 Write an array of two-byte unsigned integers to this stream.
putArrayUint24 Write an array of three-byte unsigned integers to this stream.
putArrayUint32 Write an array of four-byte unsigned integers to this stream.
putArrayUint40 Write an array of five-byte unsigned integers to this stream.
putArrayUint48 Write an array of six-byte unsigned integers to this stream.
putArrayUint56 Write an array of seven-byte unsigned integers to this stream.
putArrayUint64 Write an array of eight-byte unsigned integers to this stream.
putArrayUint8 putArrayUint8 overloads
putFloat32 Write a four-byte IEEE single-precision value to this stream.
putFloat64 Write an eight-byte IEEE double-precision value to this stream.
putInt16 Write a two-byte signed integer to this stream.
putInt24 Write a three-byte signed integer to this stream.
putInt32 Write a four-byte signed integer to this stream.
putInt40 Write a five-byte signed integer to this stream.
putInt48 Write a six-byte signed integer to this stream.
putInt56 Write a seven-byte signed integer to this stream.
putInt64 Write an eight-byte signed integer to this stream.
putInt8 Write a one-byte signed integer to this stream.
putLength Write the specified length to this stream using BDEX length encoding.
putString Write the length and characters of the specified value to this stream.
putUint16 Write a two-byte unsigned integer to this stream.
putUint24 Write a three-byte unsigned integer to this stream.
putUint32 Write a four-byte unsigned integer to this stream.
putUint40 Write a five-byte unsigned integer to this stream.
putUint48 Write a six-byte unsigned integer to this stream.
putUint56 Write a seven-byte unsigned integer to this stream.
putUint64 Write an eight-byte unsigned integer to this stream.
putUint8 Write a one-byte unsigned integer to this stream.
putVersion Write the specified one-byte version to this stream.
reserveCapacity Set the internal buffer size of this stream to be at least the specified newCapacity (in bytes).
reset Remove all content in this stream and validate this stream if it is currently invalid.
operator void const* Return a non-null pointer if this stream is valid, and null otherwise.

Friends

NameDescription
BloombergLP::bslx::operator<<Write the specified object to the specified output stream in some reasonable (multi-line) format, and return a reference to stream.

Non-Member Functions

NameDescription
operator<<Write the BDEX-compliant value to the specified output stream.