Namespace for XML encoding, decoding, and formatting components.

Types

Name

Description

Base64Parser

This is a push parser for supported Base64 types (bsl::vector<char> or bsl::string).

ConfigSchema

Provide a namespace for the service configuration schema.

Decoder

Engine for decoding value‐semantic objects in XML format. The decode methods are function templates that will decode any object that meets the requirements of a sequence or choice object as defined in the bdlat_sequencefunctions and bdlat_choicefunctions components. These generic frameworks provide a common compile‐time interface for manipulating struct‐like and union‐like objects.

DecoderOptions

Options for controlling the XML decoding process. The generated C++ code for this schema element is created by using bas_codegen.pl, run by balxml/code_from_xsd.pl with no hand‐editing.

Decoder_ChoiceContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ElementContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ErrorLogger

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_InstantiateContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ListParser

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_NillableContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseAttribute

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseAttribute_executeImpProxy

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseAttribute_executeProxy

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseNillableObject

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseNillableObject_executeImpProxy

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseObject

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseObject_executeImpProxy

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseObject_executeProxy

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseSequenceSimpleContent

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_ParseSequenceSubElement

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_PrepareSequenceContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_PushParserContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_SelectContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_SequenceContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_SimpleContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_StdStringContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_StdVectorCharContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_UTF8Context

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_UnknownElementContext

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

Decoder_decodeImpProxy

COMPONENT‐PRIVATE CLASS. DO NOT USE OUTSIDE OF THIS COMPONENT.

ElementAttribute

Class to represent the properties of an attribute in an XML element tag. Note that this class is not value semantic and does not own any of its pointer values. The owner of the arguments used to set the value of a ElementAttribute is responsible for ensuring that the values remain valid or else must document the conditions that will make the values invalid. Some facets are computed the first time that they are needed. To avoid extra processing, the caller may supply otherwise‐computed facets at construction or by calling reset. Facets provided by the caller are not checked to ensure that they are consistent with one another.

Encoder

This class contains the parameterized encode functions that encode bdlat types in XML format.

EncoderOptions

Options for performing XML encodings. Encoding style is either COMPACT or PRETTY. If encoding style is COMPACT, no whitespace will be added between elements. If encoding style is PRETTY, then the InitialIndentLevel, SpacesPerLevel, and WrapColumn parameters are used to specify the formatting of the output. Note that InitialIndentLevel, SpacesPerLevel, and WrapColumn are ignored when EncodingStyle is COMPACT (this is the default). The generated C++ code for this schema element is created by using bas_codegen.pl, run by balxml/code_from_xsd.pl, with no hand‐editing.

Encoder_Context

This struct contains state that is maintained during encoding. It also contains methods for switching between pretty formatting and compact formatting, based on the encoding options.

Encoder_EncodeObject

Component‐private class. Do not use.

Encoder_EncodeObject_executeImpProxy

Component‐private struct. Do not use.

Encoder_EncodeObject_executeProxy

Component‐private struct. Do not use.

Encoder_EncodeValue

Component‐private class. Do not use.

Encoder_EncodeValue_executeImpProxy

Component‐private struct. Do not use.

Encoder_OptionsCompatibilityUtil

Component‐private struct. Do not use.

Encoder_SequenceFirstPass

Component private class. Do not use.

Encoder_SequenceFirstPass_addAttributeImpProxy

Component‐private struct. Do not use.

Encoder_SequenceFirstPass_addAttributeProxy

Component‐private struct. Do not use.

Encoder_SequenceSecondPass

Component‐private class. Do not use.

EncodingStyle

Enumeration of encoding style (COMPACT or PRETTY). This struct is generated using bas_codegen.pl called by balxml/code_from_xsd.pl

ErrorInfo

This class provides detailed information for errors encountered during XML parsing. Such information is common for most parsers and contains the following data: line number, column number, severity code, identification of source document and the parser error message.

Formatter

This class provides a set of XML‐style formatting utilities that enable transparent indentation and wrapping for users attempting to format data with XML tags and attributes. A formatter object is instantiated with a pointer to an output stream or streambuf. Users can then use the provided utilities to write element tags, attributes, data in a valid XML sequence into the underlying stream.

FormatterWhitespaceType

This struct describes options available when outputting textual data of an element between its pair of opening and closing tags.

Formatter_CompactImplState

This class provides an in‐core, value‐semantic attribute type that maintains all of the state information needed to print an XML document with minimal whitespace using the operations provided by Formatter_CompactImplUtil.

Formatter_CompactImplStateId

This struct provides a namespace for enumerating a set of labels for distinct states of Formatter_CompactImplState.

Formatter_CompactImplUtil

This utility struct provides a namespace for a suite of operations used to pretty‐print XML documents given a sequence of tokens to emit. Together with Formatter_CompactImplState, this struct provides an implementation of a state machine for such pretty‐printing.

Formatter_Mode

This component‐private utility struct provides a namespace for enumerating the set of formatting modes that the Formatter can take.

Formatter_PrettyImplState

This class provides an in‐core, value‐semantic attribute type that maintains all of the state information needed to pretty‐print an XML document using the operations provided by Formatter_PrettyImplUtil.

Formatter_PrettyImplStateId

This struct provides a namespace for enumerating the set of labels for distinct states of Formatter_PrettyImplState.

Formatter_PrettyImplUtil

This utility struct provides a namespace for a suite of operations used to pretty‐print XML documents given a sequence of tokens to emit. Together with Formatter_PrettyImplState, this struct provides an implementation of a state machine for such pretty‐printing.

Formatter_State

This component‐private, in‐core, value‐semantic class provides a variant that can be inhabited by an object of either the component‐private Formatter_CompactImplState type or the component‐private Formatter_PrettyImplState type.

Formatter_StreamHolder

This component‐private class provides a mechanism for holding the bsl::ostream used by the Formatter to emit XML documents. Objects of Formatter_StreamHolder type can be constructed with either a bsl::streambuf * or a bsl::ostream *. If a stream holder is constructed with a bsl::streambuf *, then it owns its held bsl::ostream, which is constructed with the supplied stream buffer. If a stream holder is constructed with a bsl::ostream *, its held bsl::ostream is the supplied stream.

HexParser

This is a push parser for supported Hex types (bsl::vector<char> or bsl::string).

HexParser_Helper

Namespace for facilities that are used in the implementation of class HexParser<TYPE>. Only instances of HexParser<TYPE> can access the facilities in this class.

ListParser

This is a push parser for lists.

MiniReader

This class provides a concrete and efficient implementation of the Reader protocol.

NamespaceRegistry

Mapping that associates a unique integer with each registered namespace URI.

PrefixStack

PrefixStack allows associating a unique integer (namespace ID) with prefix.

Reader

This abstract class defines an interface for fast, forward‐only access to XML data. An object belonging to a derived‐class implementation of this protocol is required to be re‐usable, such that a new XML document can be parsed using the same reader object by calling close followed by another open.

TypesParserUtil

This struct contains functions for parsing input strings using various XML formatting modes.

TypesParserUtilImp_ParseBase64

Component‐private class. Do not use.

TypesParserUtilImp_ParseDecimal

Component‐private class. Do not use.

TypesParserUtilImp_ParseDefault

Component‐private class. Do not use.

TypesParserUtilImp_ParseHex

Component‐private class. Do not use.

TypesParserUtilImp_ParseList

Component‐private class. Do not use.

TypesParserUtilImp_ParseListElementDefault

Component‐private class. Do not use.

TypesParserUtilImp_ParseText

Component‐private class. Do not use.

TypesPrintUtil

This struct contains functions for printing objects to output streams using various formatting modes.

TypesPrintUtilImp_PrintBase64

Component‐private struct. Do not use.

TypesPrintUtilImp_PrintDecimal

Component‐private class. Do not use.

TypesPrintUtilImp_PrintDefault

Component‐private class. Do not use.

TypesPrintUtilImp_PrintHex

Component‐private class. Do not use.

TypesPrintUtilImp_PrintList

Component‐private class. Do not use.

TypesPrintUtilImp_PrintListElementDefault

Component‐private class. Do not use.

TypesPrintUtilImp_PrintText

Component‐private class. Do not use.

Utf8ReaderWrapper

This class "has a" pointer to a held and wrapped Reader object, and operations on this object are passed to the held reader. The held reader is passed a Utf8CheckingInStreamBufWrapper, which holds and wraps a normal streambuf. The Utf8CheckingInStreamBufWrapper checks input for invalid UTF‐8, and if it detects any, makes the diagnosis of the problem available through the errorInfo accessor.

Util

Utility functions for balxml.

ValidatingReader

TBD Class description

Functions

Name

Description

operator<<

Stream insertion operators

operator==

Equality operators

operator!=

Inequality operators

Created with MrDocs