BloombergLP::baljsn::EncoderTestChoiceWithAllCategories

Test type EncoderTestChoiceWithAllCategories used by baljsn encoder tests.

Synopsis

Declared in <baljsn_encoder_testtypes.h>

class EncoderTestChoiceWithAllCategories;

Enums

NameDescription
Unnamed enum Selection identifier constants.
Unnamed enum Number of selections.
Unnamed enum Selection index constants.

Member Functions

NameDescription
EncoderTestChoiceWithAllCategories [constructor]Constructors
~EncoderTestChoiceWithAllCategories [destructor]Destroy this object.
operator= Assignment operators
accessSelection Invoke the specified 'accessor' on the non-modifiable selection, supplying 'accessor' with the corresponding selection information structure. Return the value returned from the invocation of 'accessor' if this object has a defined selection, and -1 otherwise.
charArray charArray overloads
choice choice overloads
customizedType customizedType overloads
enumeration enumeration overloads
isCharArrayValue Return 'true' if the value of this object is a "CharArray" value, and return 'false' otherwise.
isChoiceValue Return 'true' if the value of this object is a "Choice" value, and return 'false' otherwise.
isCustomizedTypeValue Return 'true' if the value of this object is a "CustomizedType" value, and return 'false' otherwise.
isEnumerationValue Return 'true' if the value of this object is a "Enumeration" value, and return 'false' otherwise.
isSequenceValue Return 'true' if the value of this object is a "Sequence" value, and return 'false' otherwise.
isSimpleValue Return 'true' if the value of this object is a "Simple" value, and return 'false' otherwise.
isUndefinedValue Return 'true' if the value of this object is undefined, and 'false' otherwise.
makeCharArray makeCharArray overloads
makeChoice makeChoice overloads
makeCustomizedType makeCustomizedType overloads
makeEnumeration makeEnumeration overloads
makeSelection makeSelection overloads
makeSequence makeSequence overloads
makeSimple makeSimple overloads
manipulateSelection Invoke the specified 'manipulator' on the address of the modifiable selection, supplying 'manipulator' with the corresponding selection information structure. Return the value returned from the invocation of 'manipulator' if this object has a defined selection, and -1 otherwise.
print Format this object to the specified output 'stream' at the optionally specified indentation 'level' and return a reference to the modifiable 'stream'. If 'level' is specified, optionally specify 'spacesPerLevel', the number of spaces per indentation level for this and all of its nested objects. Each line is indented by the absolute value of 'level * spacesPerLevel'. If 'level' is negative, suppress indentation of the first line. If 'spacesPerLevel' is negative, suppress line breaks and format the entire output on one line. If 'stream' is initially invalid, this operation has no effect. Note that a trailing newline is provided in multiline mode only.
reset Reset this object to the default value (i.e., its value upon default construction).
selectionId Return the id of the current selection if the selection is defined, and -1 otherwise.
selectionName Return the symbolic name of the current selection of this object.
sequence sequence overloads
simple simple overloads

Static Member Functions

NameDescription
lookupSelectionInfo lookupSelectionInfo overloads

Data Members

NameDescription
d_charArray [variant member]Storage for the charArray selection value.
d_choice [variant member]The d_choice data member.
d_customizedType [variant member]The d_customizedType data member.
d_enumeration [variant member]The d_enumeration data member.
d_sequence [variant member]Storage for the active selection (d_sequence).
d_simple [variant member]Storage for the simple selection value.

Static Data Members

NameDescription
CLASS_NAME Name of this class.
SELECTION_INFO_ARRAY Selection metadata for this choice type.

Friends

NameDescription
BloombergLP::baljsn::hashAppendPass the specified 'object' to the specified 'hashAlg'. This function integrates with the 'bslh' modular hashing system and effectively provides a 'bsl::hash' specialization for 'EncoderTestChoiceWithAllCategories'.
BloombergLP::baljsn::operator<<Format the specified 'rhs' to the specified output 'stream' and return a reference to the modifiable 'stream'.
BloombergLP::baljsn::operator!=Return 'true' if the specified 'lhs' and 'rhs' objects do not have the same values, as determined by 'operator==', and 'false' otherwise.
BloombergLP::baljsn::operator==Return 'true' if the specified 'lhs' and 'rhs' objects have the same value, and 'false' otherwise. Two 'EncoderTestChoiceWithAllCategories' objects have the same value if either the selections in both objects have the same ids and the same values, or both selections are undefined.