BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bdljsn::WriteStyle Struct Reference

#include <bdljsn_writestyle.h>

Public Types

enum  Enum { e_PRETTY , e_ONELINE , e_COMPACT }
 

Static Public Member Functions

static bsl::ostream & print (bsl::ostream &stream, WriteStyle::Enum value, int level=0, int spacesPerLevel=4)
 
static const char * toAscii (WriteStyle::Enum value)
 

Detailed Description

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.

This class:

  • supports a complete set of enumeration operations
    • except for bdex serialization
  • is const thread-safe For terminology see bsldoc_glossary .

Member Enumeration Documentation

◆ Enum

Enumerator
e_PRETTY 
e_ONELINE 
e_COMPACT 

Member Function Documentation

◆ print()

static bsl::ostream & bdljsn::WriteStyle::print ( bsl::ostream &  stream,
WriteStyle::Enum  value,
int  level = 0,
int  spacesPerLevel = 4 
)
static

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()

static const char * bdljsn::WriteStyle::toAscii ( WriteStyle::Enum  value)
static

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:

static const char * toAscii(WriteStyle::Enum value)
@ e_PRETTY
Definition bdljsn_writestyle.h:128

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.


The documentation for this struct was generated from the following file: