BloombergLP::baljsn::DatumUtil::encode

Encode the specified datum as a JSON string into the specified result.

Synopsis

Declared in <baljsn_datumutil.h>

static
int
encode(
    bsl::string* result,
    bdld::Datum const& datum);

Description

Return 0 on success, and a negative value if datum could not be encoded (with no effect on result). If the optionally specified options argument is not present, treat it as a default-constructed DatumEncoderOptions. If options.strictTypes is true and a type that is not supported by JSON, or a singular double value (e.g., NaN or infinity) is being encoded (see []Types)) return a positive value, but also populate result with an encoded JSON string (i.e., the value of result is the same regardless of the strictTypes option, but if strictTypes is true a non-zero positive status will be returned). The mapping of types supported by Datum to JSON types is described in []Types).

Return Value

0 on success, a negative value on failure, or a positive value if strictTypes is enabled and an unsupported type is encoded

Parameters

NameDescription
resultreceives the encoded JSON string
datumDatum to encode