|
| GenericInStream (STREAMBUF *streamBuf) |
|
| ~GenericInStream () |
| Destroy this object.
|
|
GenericInStream & | getLength (int &length) |
|
GenericInStream & | getVersion (int &version) |
|
void | invalidate () |
|
GenericInStream & | getInt64 (bsls::Types::Int64 &variable) |
|
GenericInStream & | getUint64 (bsls::Types::Uint64 &variable) |
|
GenericInStream & | getInt56 (bsls::Types::Int64 &variable) |
|
GenericInStream & | getUint56 (bsls::Types::Uint64 &variable) |
|
GenericInStream & | getInt48 (bsls::Types::Int64 &variable) |
|
GenericInStream & | getUint48 (bsls::Types::Uint64 &variable) |
|
GenericInStream & | getInt40 (bsls::Types::Int64 &variable) |
|
GenericInStream & | getUint40 (bsls::Types::Uint64 &variable) |
|
GenericInStream & | getInt32 (int &variable) |
|
GenericInStream & | getUint32 (unsigned int &variable) |
|
GenericInStream & | getInt24 (int &variable) |
|
GenericInStream & | getUint24 (unsigned int &variable) |
|
GenericInStream & | getInt16 (short &variable) |
|
GenericInStream & | getUint16 (unsigned short &variable) |
|
GenericInStream & | getInt8 (char &variable) |
|
GenericInStream & | getInt8 (signed char &variable) |
|
GenericInStream & | getUint8 (char &variable) |
|
GenericInStream & | getUint8 (unsigned char &variable) |
|
GenericInStream & | getFloat64 (double &variable) |
|
GenericInStream & | getFloat32 (float &variable) |
|
GenericInStream & | getString (bsl::string &variable) |
|
GenericInStream & | getArrayInt64 (bsls::Types::Int64 *variables, int numVariables) |
|
GenericInStream & | getArrayUint64 (bsls::Types::Uint64 *variables, int numVariables) |
|
GenericInStream & | getArrayInt56 (bsls::Types::Int64 *variables, int numVariables) |
|
GenericInStream & | getArrayUint56 (bsls::Types::Uint64 *variables, int numVariables) |
|
GenericInStream & | getArrayInt48 (bsls::Types::Int64 *variables, int numVariables) |
|
GenericInStream & | getArrayUint48 (bsls::Types::Uint64 *variables, int numVariables) |
|
GenericInStream & | getArrayInt40 (bsls::Types::Int64 *variables, int numVariables) |
|
GenericInStream & | getArrayUint40 (bsls::Types::Uint64 *variables, int numVariables) |
|
GenericInStream & | getArrayInt32 (int *variables, int numVariables) |
|
GenericInStream & | getArrayUint32 (unsigned int *variables, int numVariables) |
|
GenericInStream & | getArrayInt24 (int *variables, int numVariables) |
|
GenericInStream & | getArrayUint24 (unsigned int *variables, int numVariables) |
|
GenericInStream & | getArrayInt16 (short *variables, int numVariables) |
|
GenericInStream & | getArrayUint16 (unsigned short *variables, int numVariables) |
|
GenericInStream & | getArrayInt8 (char *variables, int numVariables) |
|
GenericInStream & | getArrayInt8 (signed char *variables, int numVariables) |
|
GenericInStream & | getArrayUint8 (char *variables, int numVariables) |
|
GenericInStream & | getArrayUint8 (unsigned char *variables, int numVariables) |
|
GenericInStream & | getArrayFloat64 (double *variables, int numVariables) |
|
GenericInStream & | getArrayFloat32 (float *variables, int numVariables) |
|
| operator const void * () const |
|
bool | isValid () const |
|
template<class STREAMBUF>
class bslx::GenericInStream< STREAMBUF >
This class provides input methods to unexternalize values, and C-style arrays of values, of the fundamental integral and floating-point types, as well as bsl::string
values, using a byte format documented in the bslx_byteoutstream component. In particular, each get
method of this class is guaranteed to read stream data written by the corresponding put
method of bslx::GenericOutStream
. Note that attempting to read beyond the end of a stream will automatically invalidate the stream. See the bslx
package-level documentation for the definition of the BDEX InStream
protocol.
See bslx_genericinstream
template<class STREAMBUF >
Assign to the specified variables
the consecutive four-byte IEEE single-precision floating-point numbers (in host byte order) comprised of each of the specified numVariables
four-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity.
template<class STREAMBUF >
Assign to the specified variables
the consecutive eight-byte IEEE double-precision floating-point numbers (in host byte order) comprised of each of the specified numVariables
eight-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity.
template<class STREAMBUF >
Assign to the specified variables
the consecutive two-byte, two's complement integers (in host byte order) comprised of each of the specified numVariables
two-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be sign-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive three-byte, two's complement integers (in host byte order) comprised of each of the specified numVariables
three-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numValues
and variables
has sufficient capacity. Note that each of the values will be sign-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive four-byte, two's complement integers (in host byte order) comprised of each of the specified numVariables
four-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be sign-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive five-byte, two's complement integers (in host byte order) comprised of each of the specified numVariables
five-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be sign-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive six-byte, two's complement integers (in host byte order) comprised of each of the specified numVariables
six-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be sign-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive seven-byte, two's complement integers (in host byte order) comprised of each of the specified numVariables
seven-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be sign-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive eight-byte, two's complement integers (in host byte order) comprised of each of the specified numVariables
eight-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be sign-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive one-byte, two's complement integers comprised of each of the specified numVariables
one-byte sequences of this stream at the current cursor location, update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be sign-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive two-byte, two's complement unsigned integers (in host byte order) comprised of each of the specified numVariables
two-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be zero-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive three-byte, two's complement unsigned integers (in host byte order) comprised of each of the specified numVariables
three-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be zero-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive four-byte, two's complement unsigned integers (in host byte order) comprised of each of the specified numVariables
four-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be zero-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive five-byte, two's complement unsigned integers (in host byte order) comprised of each of the specified numVariables
five-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be zero-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive six-byte, two's complement unsigned integers (in host byte order) comprised of each of the specified numVariables
six-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be zero-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive seven-byte, two's complement unsigned integers (in host byte order) comprised of each of the specified numVariables
seven-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be zero-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive eight-byte, two's complement unsigned integers (in host byte order) comprised of each of the specified numVariables
eight-byte sequences of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be zero-extended.
template<class STREAMBUF >
Assign to the specified variables
the consecutive one-byte, two's complement unsigned integers comprised of each of the specified numVariables
one-byte sequences of this stream at the current cursor location, update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variables
is undefined. The behavior is undefined unless 0 <= numVariables
and variables
has sufficient capacity. Note that each of the values will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the eight-byte IEEE double-precision floating-point number (in host byte order) comprised of the eight bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined.
template<class STREAMBUF >
Assign to the specified variable
the two-byte, two's complement integer (in host byte order) comprised of the two bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be sign-extended.
template<class STREAMBUF >
Assign to the specified variable
the three-byte, two's complement integer (in host byte order) comprised of the three bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be sign-extended.
template<class STREAMBUF >
Assign to the specified variable
the four-byte, two's complement integer (in host byte order) comprised of the four bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be sign-extended.
template<class STREAMBUF >
Assign to the specified variable
the five-byte, two's complement integer (in host byte order) comprised of the five bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be sign-extended.
template<class STREAMBUF >
Assign to the specified variable
the six-byte, two's complement integer (in host byte order) comprised of the six bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be sign-extended.
template<class STREAMBUF >
Assign to the specified variable
the seven-byte, two's complement integer (in host byte order) comprised of the seven bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be sign-extended.
template<class STREAMBUF >
Assign to the specified variable
the eight-byte, two's complement integer (in host byte order) comprised of the eight bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be sign-extended.
template<class STREAMBUF >
Assign to the specified variable
the one-byte, two's complement integer comprised of the one byte of this stream at the current cursor location, update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be sign-extended.
template<class STREAMBUF >
If the most-significant bit of the one byte of this stream at the current cursor location is set, assign to the specified length
the four-byte, two's complement integer (in host byte order) comprised of the four bytes of this stream at the current cursor location (in network byte order) with the most-significant bit unset; otherwise, assign to length
the one-byte, two's complement integer comprised of the one byte of this stream at the current cursor location. Update the cursor location and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of length
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the two-byte, two's complement unsigned integer (in host byte order) comprised of the two bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the three-byte, two's complement unsigned integer (in host byte order) comprised of the three bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the four-byte, two's complement unsigned integer (in host byte order) comprised of the four bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the five-byte, two's complement unsigned integer (in host byte order) comprised of the five bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the six-byte, two's complement unsigned integer (in host byte order) comprised of the six bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the seven-byte, two's complement unsigned integer (in host byte order) comprised of the seven bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the eight-byte, two's complement unsigned integer (in host byte order) comprised of the eight bytes of this stream at the current cursor location (in network byte order), update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified variable
the one-byte, two's complement unsigned integer comprised of the one byte of this stream at the current cursor location, update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of variable
is undefined. Note that the value will be zero-extended.
template<class STREAMBUF >
Assign to the specified version
the one-byte, two's complement unsigned integer comprised of the one byte of this stream at the current cursor location, update the cursor location, and return a reference to this stream. If this stream is initially invalid, this operation has no effect. If this function otherwise fails to extract a valid value, this stream is marked invalid and the value of version
is undefined. Note that the value will be zero-extended.