BloombergLP::balber::BerDecoder

This class contains the parameterized decode functions that decode data (in BER format) from an incoming stream into bdlat types.

Synopsis

Declared in <balber_berdecoder.h>

class BerDecoder;

Enums

NameDescription
ErrorSeverity Severity of a log or error message produced during decoding.

Member Functions

NameDescription
BerDecoder [constructor]Construct a decoder object. Optionally specify decoder options. If options is 0, BerDecoderOptions() is used. Optionally specify a basicAllocator used to supply memory. If basicAllocator is 0, the currently installed default allocator is used.
~BerDecoder [destructor]Destroy this object. This destruction has no effect on objects pointed-to by the pointers provided at construction.
decode decode overloads
decodeAny decodeAny overloads
decoderOptions Return the address of the BER decoder options.
errorSeverity Return the severity of the most severe log or error message encountered during the last call to the decode method. The severity is reset each time decode is called.
loggedMessages Return a string containing any error or trace messages that were logged during the last call to the decode method. The log is reset each time decode is called.
maxDepthExceeded Return 'true' if the maximum depth level is exceeded and 'false' otherwise.
numUnknownElementsSkipped Return the number of unknown elements that were skipped during the previous decoding operation. Note that unknown elements are skipped only if true == options()->skipUnknownElements().
setNumUnknownElementsSkipped Set the number of unknown elements skipped by the decoder during the current decoding operation to the specified value. The behavior is undefined unless 0 <= value.

Friends

NameDescription
BloombergLP::balber::BerDecoder_NodeThis class provides current context for BER decoding process and represents a node for BER element. The BER element consists of element tag, length field, body field and optional end of tag. The class also provides various methods to read the different parts of BER element such as tag header (tag itself and length fields), body for any type of data, and optional tag trailer.