decodeAny overloads
Declared in <balxml_decoder.h>
Decode into a type-erased bdlar::AnyRef from the current open input.
int
decodeAny(bdlar::AnyRef* object);
» more...
Decode the specified object of parameterized TYPE from the input source specified by a previous call to open and leave the reader in an open state. Return 0 on success, and a non-zero value otherwise. A compilation error will result unless TYPE conforms to the requirements of a bdlat sequence or choice, as described in bdlat_sequencefunctions and bdlat_choicefunctions. The behavior is undefined unless this call was preceded by a prior successful call to open. Note that this function behaves identically to decode, but does not instantiate any templates at compile time at the expense of being slightly slower at runtime; see the balxml package documentation for more details.
template<class TYPE>
int
decodeAny(TYPE* object);
» more...
Decode the specified AnyRef from the specified input stream using runtime type dispatch.
std::istream&
decodeAny(
std::istream& stream,
bdlar::AnyRef* object,
char const* uri = 0);
» more...
Decode into a type-erased bdlar::AnyRef from the specified buffer.
int
decodeAny(
std::streambuf* buffer,
bdlar::AnyRef* object,
char const* uri = 0);
» more...
Decode the specified object of parameterized TYPE from the specified input stream. Return a reference to the modifiable stream. If a decoding error is detected, stream.fail() will be true after this method returns. The (optionally) specified uri is used for identifying the input document in error messages. A compilation error will result unless TYPE conforms to the requirements of a bdlat sequence or choice, as described in bdlat_sequencefunctions and bdlat_choicefunctions. Note that this function behaves identically to decode, but does not instantiate any templates at compile time at the expense of being slightly slower at runtime; see the balxml package documentation for more details.
template<class TYPE>
std::istream&
decodeAny(
std::istream& stream,
TYPE* object,
char const* uri = 0);
» more...
Decode the specified object of parameterized TYPE from the specified stream buffer. The (optionally) specified uri is used for identifying the input document in error messages. Return 0 on success, and a non-zero value otherwise. A compilation error will result unless TYPE conforms to the requirements of a bdlat sequence or choice, as described in bdlat_sequencefunctions and bdlat_choicefunctions. Note that this function behaves identically to decode, but does not instantiate any templates at compile time at the expense of being slightly slower at runtime; see the balxml package documentation for more details.
template<class TYPE>
int
decodeAny(
std::streambuf* buffer,
TYPE* object,
char const* uri = 0);
» more...