BloombergLP::baljsn::DatumUtil::decode

Decode JSON from the specified jsonBuffer into the specified result.

Synopsis

Declared in <baljsn_datumutil.h>

static
int
decode(
    bdld::ManagedDatum* result,
    std::streambuf* jsonBuffer);

Description

If the optionally specified errorStream is non-null, a description of any errors that occur during parsing will be output to this stream. If the optionally specified options argument is not present, treat it as a default-constructed DatumDecoderOptions. Return 0 on success, and a negative value if json could not be decoded (either because it is ill-formed, or if a constraint imposed by option is violated). An error status will be returned if json contains arrays or objects that are nested beyond a depth configured by options.maxNestedDepth(). The mapping of types in JSON to the types supported by Datum is described in []Types).

Return Value

0 on success, and a negative value otherwise

Parameters

NameDescription
resultreceives the decoded Datum
jsonBufferstream buffer providing JSON text