This struct provides a namespace for enumerating the formatting styles that can be used for writing a JSON document. See Enum in the TYPES sub‐section for details.

Synopsis

Declared in <bdljsn_writestyle.h>

struct WriteStyle;

Description

This class: * supports a complete set of enumeration operations

  • except for bdex serialization * is const thread‐safe For terminology see bsldoc_glossary.

Enums

Name

Description

Enum

Formatting styles for writing JSON text.

Static Member Functions

Name

Description

print

Write the string representation of the specified enumeration value to the specified output stream, and return a reference to stream. Optionally specify an initial indentation level, whose absolute value is incremented recursively for nested objects. If level is specified, optionally specify spacesPerLevel, whose absolute value indicates the number of spaces per indentation level for this and all of its nested objects. If level is negative, suppress indentation of the first line. If spacesPerLevel is negative, format the entire output on one line, suppressing all but the initial indentation (as governed by level). See toAscii for what constitutes the string representation of a WriteStyle::Enum value.

toAscii

Return the non‐modifiable string representation corresponding to the specified enumeration value, if it exists, and a unique (error) string otherwise. The string representation of value matches its corresponding enumerator name with the "e_" prefix elided. For example: ` bsl::cout << WriteStyle::toAscii(WriteStyle::e_PRETTY); ` will print the following on standard output: ` PRETTY ` Note that specifying a value that does not match any of the enumerators will result in a string representation that is distinct from any of those corresponding to the enumerators, but is otherwise unspecified.

Created with MrDocs