8#ifndef INCLUDED_BALXML_DECODEROPTIONS
9#define INCLUDED_BALXML_DECODEROPTIONS
43#include <bslalg_typetraits.h>
55#include <bsl_iosfwd.h>
56#include <bsl_limits.h>
60namespace balxml {
class DecoderOptions; }
83 bool d_skipUnknownElements;
86 bool d_validateInputIsUtf8;
89 bool d_validateRootTag;
151#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
152 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
167#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
168 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
185 template <
typename t_MANIPULATOR>
194 template <
typename t_MANIPULATOR>
203 template <
typename t_MANIPULATOR>
242 bsl::ostream&
print(bsl::ostream& stream,
244 int spacesPerLevel = 4)
const;
252 template <
typename t_ACCESSOR>
260 template <
typename t_ACCESSOR>
269 template <
typename t_ACCESSOR>
272 int nameLength)
const;
330template <
typename t_MANIPULATOR>
363template <
typename t_MANIPULATOR>
366 enum { NOT_FOUND = -1 };
389template <
typename t_MANIPULATOR>
391 t_MANIPULATOR& manipulator,
395 enum { NOT_FOUND = -1 };
399 if (0 == attributeInfo) {
415 d_formattingMode = value;
421 d_skipUnknownElements = value;
427 d_validateInputIsUtf8 = value;
433 d_validateRootTag = value;
437template <
typename t_ACCESSOR>
470template <
typename t_ACCESSOR>
473 enum { NOT_FOUND = -1 };
496template <
typename t_ACCESSOR>
498 t_ACCESSOR& accessor,
500 int nameLength)
const
502 enum { NOT_FOUND = -1 };
506 if (0 == attributeInfo) {
522 return d_formattingMode;
528 return d_skipUnknownElements;
534 return d_validateInputIsUtf8;
540 return d_validateRootTag;
552 return lhs.maxDepth() == rhs.maxDepth()
553 && lhs.formattingMode() == rhs.formattingMode()
554 && lhs.skipUnknownElements() == rhs.skipUnknownElements()
555 && lhs.validateInputIsUtf8() == rhs.validateInputIsUtf8()
556 && lhs.validateRootTag() == rhs.validateRootTag();
569 bsl::ostream& stream,
572 return rhs.print(stream, 0, -1);
Definition balxml_decoderoptions.h:72
int manipulateAttributes(t_MANIPULATOR &manipulator)
Definition balxml_decoderoptions.h:331
int accessAttributes(t_ACCESSOR &accessor) const
Definition balxml_decoderoptions.h:438
DecoderOptions & operator=(const DecoderOptions &rhs)
Assign to this object the value of the specified rhs object.
void setMaxDepth(int value)
Definition balxml_decoderoptions.h:407
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition balxml_decoderoptions.h:126
static const bool DEFAULT_INITIALIZER_VALIDATE_ROOT_TAG
Definition balxml_decoderoptions.h:124
int formattingMode() const
Return the value of the "FormattingMode" attribute of this object.
Definition balxml_decoderoptions.h:520
int manipulateAttribute(t_MANIPULATOR &manipulator, int id)
Definition balxml_decoderoptions.h:364
static const char CLASS_NAME[]
Definition balxml_decoderoptions.h:114
void setValidateRootTag(bool value)
Definition balxml_decoderoptions.h:431
@ NUM_ATTRIBUTES
Definition balxml_decoderoptions.h:102
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
void setValidateInputIsUtf8(bool value)
Definition balxml_decoderoptions.h:425
~DecoderOptions()
Destroy this object.
static const bool DEFAULT_INITIALIZER_SKIP_UNKNOWN_ELEMENTS
Definition balxml_decoderoptions.h:120
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
void setSkipUnknownElements(bool value)
Definition balxml_decoderoptions.h:419
static const int DEFAULT_INITIALIZER_FORMATTING_MODE
Definition balxml_decoderoptions.h:118
DecoderOptions(const DecoderOptions &original)
int accessAttribute(t_ACCESSOR &accessor, int id) const
Definition balxml_decoderoptions.h:471
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
static const bool DEFAULT_INITIALIZER_VALIDATE_INPUT_IS_UTF8
Definition balxml_decoderoptions.h:122
void setFormattingMode(int value)
Definition balxml_decoderoptions.h:413
int maxDepth() const
Return the value of the "MaxDepth" attribute of this object.
Definition balxml_decoderoptions.h:514
@ ATTRIBUTE_ID_VALIDATE_INPUT_IS_UTF8
Definition balxml_decoderoptions.h:97
@ ATTRIBUTE_ID_MAX_DEPTH
Definition balxml_decoderoptions.h:94
@ ATTRIBUTE_ID_VALIDATE_ROOT_TAG
Definition balxml_decoderoptions.h:98
@ ATTRIBUTE_ID_SKIP_UNKNOWN_ELEMENTS
Definition balxml_decoderoptions.h:96
@ ATTRIBUTE_ID_FORMATTING_MODE
Definition balxml_decoderoptions.h:95
DecoderOptions()
Create an object of type DecoderOptions having the default value.
bool validateRootTag() const
Return the value of the "ValidateRootTag" attribute of this object.
Definition balxml_decoderoptions.h:538
bool validateInputIsUtf8() const
Definition balxml_decoderoptions.h:532
static const int DEFAULT_INITIALIZER_MAX_DEPTH
Definition balxml_decoderoptions.h:116
bool skipUnknownElements() const
Definition balxml_decoderoptions.h:526
@ ATTRIBUTE_INDEX_VALIDATE_ROOT_TAG
Definition balxml_decoderoptions.h:110
@ ATTRIBUTE_INDEX_VALIDATE_INPUT_IS_UTF8
Definition balxml_decoderoptions.h:109
@ ATTRIBUTE_INDEX_FORMATTING_MODE
Definition balxml_decoderoptions.h:107
@ ATTRIBUTE_INDEX_MAX_DEPTH
Definition balxml_decoderoptions.h:106
@ ATTRIBUTE_INDEX_SKIP_UNKNOWN_ELEMENTS
Definition balxml_decoderoptions.h:108
#define BDLAT_DECL_SEQUENCE_WITH_BITWISEMOVEABLE_TRAITS(ClassName)
Definition bdlat_typetraits.h:294
#define BSLS_IDENT_RCSID(tag, str)
BSLS_IDENT_RCSID() - insert ident str (specific to platform/compiler)
Definition bsls_ident.h:244
#define BSLS_IDENT_PRAGMA_ONCE
BSLS_IDENT_PRAGMA_ONCE - macro to avoid multiple inclusion
Definition bsls_ident.h:263
Definition balxml_base64parser.h:150
bsl::ostream & operator<<(bsl::ostream &stream, const ConfigSchema &schema)
bool operator==(const DecoderOptions &lhs, const DecoderOptions &rhs)
bool operator!=(const DecoderOptions &lhs, const DecoderOptions &rhs)
ALLOCATOR const STRING_VIEW_LIKE_TYPE & rhs
Definition bslstl_string.h:3918
ALLOCATOR & lhs
Definition bslstl_string.h:3917
Definition bdlat_attributeinfo.h:139
int d_id
Definition bdlat_attributeinfo.h:142