Encode the JSON representation of object member named memberName.

Synopsis

Declared in <baljsn_encodeimplutil.h>

static
int
encodeMember(
    bool* isMemberEmpty,
    FORMATTER* formatter,
    std::ostream* logStream,
    std::string_view const& memberName,
    bsl::vector<char> const& member,
    FormattingMode formattingMode,
    EncoderOptions const& options,
    bool isFirstMember,
    bdlat_TypeCategory::Array category);

Description

Encode the JSON representation of the specified object member having the specified memberName to the specified JSON formatter, according to the specified formattingMode. If the representation contains no text, load the value true to isMemberEmpty and the value false otherwise. If the specified isFirstMember option is true, then the representation of the member contains no leading sequence delimiter, and does contain such a delimiter otherwise. Use the specified options to configure aspects of the JSON representation of the member. If this operation is not successful, load an unspecified, human‐readable description of the error condition to the specified logStream. Return 0 on success, and a non‐zero value otherwise. The behavior is undefined unless the specified TYPE satisfies both the static and dynamic requirements of the specified category bdlat type‐category concept. See baljsn_encoderoptions for a description of the effects, if any, of each option in the options on the JSON representation of the selection. See the package‐level documentation of bdlat for an introduction to the requirements of bdlat type‐category concepts.

Return Value

0 on success, and a non‐zero value otherwise

Parameters

Name

Description

isMemberEmpty

receives whether the member is empty

formatter

JSON formatter that receives the encoded tokens

logStream

stream for human‐readable error descriptions

memberName

name of the member to encode

member

member value to encode

formattingMode

formatting‐mode bit‐field for the member

options

encoding options

isFirstMember

if true, omit a leading sequence delimiter

category

bdlat Array type‐category tag

Created with MrDocs