8#ifndef INCLUDED_S_BALTST_BASICSCHEMA
9#define INCLUDED_S_BALTST_BASICSCHEMA
43#include <bslalg_typetraits.h>
60#include <bsl_string.h>
62#include <bsl_vector.h>
64#include <bsl_iosfwd.h>
65#include <bsl_limits.h>
72namespace s_baltst {
class BasicSchemaAnnotationElement; }
73namespace s_baltst {
class BasicSchemaEnumerationElementChoice; }
74namespace s_baltst {
class BasicSchemaEnumerationElement; }
75namespace s_baltst {
class BasicSchemaRestrictionElementChoice; }
76namespace s_baltst {
class BasicSchemaRestrictionElement; }
77namespace s_baltst {
class BasicSchemaSimpleTypeElementChoice; }
78namespace s_baltst {
class BasicSchemaSimpleTypeElement; }
79namespace s_baltst {
class BasicSchemaChoiceElement; }
80namespace s_baltst {
class BasicSchemaChoiceElementChoice; }
81namespace s_baltst {
class BasicSchemaComplexTypeElement; }
82namespace s_baltst {
class BasicSchemaComplexTypeElementChoice; }
83namespace s_baltst {
class BasicSchemaElement; }
84namespace s_baltst {
class BasicSchemaElementChoice; }
85namespace s_baltst {
class BasicSchemaSequenceElement; }
86namespace s_baltst {
class BasicSchemaSequenceElementChoice; }
87namespace s_baltst {
class BasicSchemaChoice; }
88namespace s_baltst {
class BasicSchema; }
148#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
149 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
174#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
175 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
192 template<
class MANIPULATOR>
201 template<
class MANIPULATOR>
210 template<
class MANIPULATOR>
233 bsl::ostream&
print(bsl::ostream& stream,
235 int spacesPerLevel = 4)
const;
243 template<
class ACCESSOR>
251 template<
class ACCESSOR>
260 template<
class ACCESSOR>
263 int nameLength)
const;
293template <
typename HASH_ALGORITHM>
368#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
369 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
394#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
395 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
419#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
420 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
432 template<
class MANIPULATOR>
455 bsl::ostream&
print(bsl::ostream& stream,
457 int spacesPerLevel = 4)
const;
467 template<
class ACCESSOR>
510template <
typename HASH_ALGORITHM>
581#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
582 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
607#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
608 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
625 template<
class MANIPULATOR>
634 template<
class MANIPULATOR>
643 template<
class MANIPULATOR>
670 bsl::ostream&
print(bsl::ostream& stream,
672 int spacesPerLevel = 4)
const;
680 template<
class ACCESSOR>
688 template<
class ACCESSOR>
697 template<
class ACCESSOR>
700 int nameLength)
const;
734template <
typename HASH_ALGORITHM>
812#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
813 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
838#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
839 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
863#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
864 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
873#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
874 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
886 template<
class MANIPULATOR>
915 bsl::ostream&
print(bsl::ostream& stream,
917 int spacesPerLevel = 4)
const;
927 template<
class ACCESSOR>
980template <
typename HASH_ALGORITHM>
1051#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1052 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1077#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1078 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1095 template<
class MANIPULATOR>
1104 template<
class MANIPULATOR>
1113 template<
class MANIPULATOR>
1140 bsl::ostream&
print(bsl::ostream& stream,
1142 int spacesPerLevel = 4)
const;
1150 template<
class ACCESSOR>
1158 template<
class ACCESSOR>
1167 template<
class ACCESSOR>
1170 int nameLength)
const;
1204template <
typename HASH_ALGORITHM>
1281#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1282 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1307#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1308 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1332#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1333 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1342#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1343 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1355 template<
class MANIPULATOR>
1384 bsl::ostream&
print(bsl::ostream& stream,
1386 int spacesPerLevel = 4)
const;
1396 template<
class ACCESSOR>
1449template <
typename HASH_ALGORITHM>
1523#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1524 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1549#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1550 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1567 template<
class MANIPULATOR>
1576 template<
class MANIPULATOR>
1585 template<
class MANIPULATOR>
1616 bsl::ostream&
print(bsl::ostream& stream,
1618 int spacesPerLevel = 4)
const;
1626 template<
class ACCESSOR>
1634 template<
class ACCESSOR>
1643 template<
class ACCESSOR>
1646 int nameLength)
const;
1684template <
typename HASH_ALGORITHM>
1752#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1753 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1778#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1779 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
1796 template<
class MANIPULATOR>
1805 template<
class MANIPULATOR>
1814 template<
class MANIPULATOR>
1837 bsl::ostream&
print(bsl::ostream& stream,
1839 int spacesPerLevel = 4)
const;
1847 template<
class ACCESSOR>
1855 template<
class ACCESSOR>
1864 template<
class ACCESSOR>
1867 int nameLength)
const;
1897template <
typename HASH_ALGORITHM>
1974#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
1975 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2000#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2001 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2025#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2026 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2035#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2036 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2048 template<
class MANIPULATOR>
2077 bsl::ostream&
print(bsl::ostream& stream,
2079 int spacesPerLevel = 4)
const;
2089 template<
class ACCESSOR>
2142template <
typename HASH_ALGORITHM>
2213#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2214 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2239#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2240 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2257 template<
class MANIPULATOR>
2266 template<
class MANIPULATOR>
2275 template<
class MANIPULATOR>
2302 bsl::ostream&
print(bsl::ostream& stream,
2304 int spacesPerLevel = 4)
const;
2312 template<
class ACCESSOR>
2320 template<
class ACCESSOR>
2329 template<
class ACCESSOR>
2332 int nameLength)
const;
2366template <
typename HASH_ALGORITHM>
2447#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2448 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2473#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2474 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2498#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2499 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2508#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2509 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2518#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2519 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2531 template<
class MANIPULATOR>
2566 bsl::ostream&
print(bsl::ostream& stream,
2568 int spacesPerLevel = 4)
const;
2578 template<
class ACCESSOR>
2641template <
typename HASH_ALGORITHM>
2736#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2737 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2761#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
2762 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
2779 template<
class MANIPULATOR>
2788 template<
class MANIPULATOR>
2797 template<
class MANIPULATOR>
2856 bsl::ostream&
print(bsl::ostream& stream,
2858 int spacesPerLevel = 4)
const;
2866 template<
class ACCESSOR>
2874 template<
class ACCESSOR>
2883 template<
class ACCESSOR>
2886 int nameLength)
const;
2952template <
typename HASH_ALGORITHM>
3032#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3033 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3058#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3059 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3083#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3084 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3093#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3094 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3103#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3104 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3116 template<
class MANIPULATOR>
3151 bsl::ostream&
print(bsl::ostream& stream,
3153 int spacesPerLevel = 4)
const;
3163 template<
class ACCESSOR>
3226template <
typename HASH_ALGORITHM>
3294#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3295 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3320#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3321 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3338 template<
class MANIPULATOR>
3347 template<
class MANIPULATOR>
3356 template<
class MANIPULATOR>
3379 bsl::ostream&
print(bsl::ostream& stream,
3381 int spacesPerLevel = 4)
const;
3389 template<
class ACCESSOR>
3397 template<
class ACCESSOR>
3406 template<
class ACCESSOR>
3409 int nameLength)
const;
3439template <
typename HASH_ALGORITHM>
3516#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3517 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3542#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3543 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3567#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3568 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3577#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3578 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3590 template<
class MANIPULATOR>
3619 bsl::ostream&
print(bsl::ostream& stream,
3621 int spacesPerLevel = 4)
const;
3631 template<
class ACCESSOR>
3684template <
typename HASH_ALGORITHM>
3764#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3765 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3789#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3790 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3814#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3815 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3824#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3825 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3834#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
3835 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
3847 template<
class MANIPULATOR>
3882 bsl::ostream&
print(bsl::ostream& stream,
3884 int spacesPerLevel = 4)
const;
3894 template<
class ACCESSOR>
3957template <
typename HASH_ALGORITHM>
4037#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
4038 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
4062#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
4063 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
4080 template<
class MANIPULATOR>
4089 template<
class MANIPULATOR>
4098 template<
class MANIPULATOR>
4136 bsl::ostream&
print(bsl::ostream& stream,
4138 int spacesPerLevel = 4)
const;
4146 template<
class ACCESSOR>
4154 template<
class ACCESSOR>
4163 template<
class ACCESSOR>
4166 int nameLength)
const;
4212template <
typename HASH_ALGORITHM>
4233template <
class MANIPULATOR>
4246template <
class MANIPULATOR>
4249 enum { NOT_FOUND = -1 };
4260template <
class MANIPULATOR>
4262 MANIPULATOR& manipulator,
4266 enum { NOT_FOUND = -1 };
4270 if (0 == attributeInfo) {
4280 return d_documentation;
4284template <
class ACCESSOR>
4297template <
class ACCESSOR>
4300 enum { NOT_FOUND = -1 };
4311template <
class ACCESSOR>
4315 int nameLength)
const
4317 enum { NOT_FOUND = -1 };
4321 if (0 == attributeInfo) {
4331 return d_documentation;
4334template <
typename HASH_ALGORITHM>
4353: d_selectionId(SELECTION_ID_UNDEFINED)
4354, d_allocator_p(
bslma::Default::allocator(basicAllocator))
4365template <
class MANIPULATOR>
4368 switch (d_selectionId) {
4389 return d_selectionId;
4392template <
class ACCESSOR>
4395 switch (d_selectionId) {
4424template <
typename HASH_ALGORITHM>
4430 switch (
object.selectionId()) {
4431 case Class::SELECTION_ID_ANNOTATION:
4435 BSLS_ASSERT(Class::SELECTION_ID_UNDEFINED ==
object.selectionId());
4446template <
class MANIPULATOR>
4464template <
class MANIPULATOR>
4467 enum { NOT_FOUND = -1 };
4481template <
class MANIPULATOR>
4483 MANIPULATOR& manipulator,
4487 enum { NOT_FOUND = -1 };
4491 if (0 == attributeInfo) {
4511template <
class ACCESSOR>
4529template <
class ACCESSOR>
4532 enum { NOT_FOUND = -1 };
4546template <
class ACCESSOR>
4550 int nameLength)
const
4552 enum { NOT_FOUND = -1 };
4556 if (0 == attributeInfo) {
4575template <
typename HASH_ALGORITHM>
4595: d_selectionId(SELECTION_ID_UNDEFINED)
4596, d_allocator_p(
bslma::Default::allocator(basicAllocator))
4607template <
class MANIPULATOR>
4610 switch (d_selectionId) {
4641 return d_selectionId;
4644template <
class ACCESSOR>
4647 switch (d_selectionId) {
4692template <
typename HASH_ALGORITHM>
4698 switch (
object.selectionId()) {
4699 case Class::SELECTION_ID_ANNOTATION:
4702 case Class::SELECTION_ID_ENUMERATION:
4706 BSLS_ASSERT(Class::SELECTION_ID_UNDEFINED ==
object.selectionId());
4717template <
class MANIPULATOR>
4735template <
class MANIPULATOR>
4738 enum { NOT_FOUND = -1 };
4752template <
class MANIPULATOR>
4754 MANIPULATOR& manipulator,
4758 enum { NOT_FOUND = -1 };
4762 if (0 == attributeInfo) {
4782template <
class ACCESSOR>
4800template <
class ACCESSOR>
4803 enum { NOT_FOUND = -1 };
4817template <
class ACCESSOR>
4821 int nameLength)
const
4823 enum { NOT_FOUND = -1 };
4827 if (0 == attributeInfo) {
4846template <
typename HASH_ALGORITHM>
4866: d_selectionId(SELECTION_ID_UNDEFINED)
4867, d_allocator_p(
bslma::Default::allocator(basicAllocator))
4878template <
class MANIPULATOR>
4881 switch (d_selectionId) {
4912 return d_selectionId;
4915template <
class ACCESSOR>
4918 switch (d_selectionId) {
4963template <
typename HASH_ALGORITHM>
4969 switch (
object.selectionId()) {
4970 case Class::SELECTION_ID_ANNOTATION:
4973 case Class::SELECTION_ID_RESTRICTION:
4977 BSLS_ASSERT(Class::SELECTION_ID_UNDEFINED ==
object.selectionId());
4988template <
class MANIPULATOR>
5011template <
class MANIPULATOR>
5014 enum { NOT_FOUND = -1 };
5031template <
class MANIPULATOR>
5033 MANIPULATOR& manipulator,
5037 enum { NOT_FOUND = -1 };
5041 if (0 == attributeInfo) {
5057 return d_preserveEnumOrder;
5067template <
class ACCESSOR>
5090template <
class ACCESSOR>
5093 enum { NOT_FOUND = -1 };
5110template <
class ACCESSOR>
5114 int nameLength)
const
5116 enum { NOT_FOUND = -1 };
5120 if (0 == attributeInfo) {
5136 return d_preserveEnumOrder;
5145template <
typename HASH_ALGORITHM>
5152 hashAppend(hashAlg,
object.preserveEnumOrder());
5164template <
class MANIPULATOR>
5177template <
class MANIPULATOR>
5180 enum { NOT_FOUND = -1 };
5191template <
class MANIPULATOR>
5193 MANIPULATOR& manipulator,
5197 enum { NOT_FOUND = -1 };
5201 if (0 == attributeInfo) {
5215template <
class ACCESSOR>
5228template <
class ACCESSOR>
5231 enum { NOT_FOUND = -1 };
5242template <
class ACCESSOR>
5246 int nameLength)
const
5248 enum { NOT_FOUND = -1 };
5252 if (0 == attributeInfo) {
5265template <
typename HASH_ALGORITHM>
5284: d_selectionId(SELECTION_ID_UNDEFINED)
5285, d_allocator_p(
bslma::Default::allocator(basicAllocator))
5296template <
class MANIPULATOR>
5299 switch (d_selectionId) {
5330 return d_selectionId;
5333template <
class ACCESSOR>
5336 switch (d_selectionId) {
5381template <
typename HASH_ALGORITHM>
5387 switch (
object.selectionId()) {
5388 case Class::SELECTION_ID_ANNOTATION:
5391 case Class::SELECTION_ID_ELEMENT:
5395 BSLS_ASSERT(Class::SELECTION_ID_UNDEFINED ==
object.selectionId());
5406template <
class MANIPULATOR>
5424template <
class MANIPULATOR>
5427 enum { NOT_FOUND = -1 };
5441template <
class MANIPULATOR>
5443 MANIPULATOR& manipulator,
5447 enum { NOT_FOUND = -1 };
5451 if (0 == attributeInfo) {
5471template <
class ACCESSOR>
5489template <
class ACCESSOR>
5492 enum { NOT_FOUND = -1 };
5506template <
class ACCESSOR>
5510 int nameLength)
const
5512 enum { NOT_FOUND = -1 };
5516 if (0 == attributeInfo) {
5535template <
typename HASH_ALGORITHM>
5555: d_selectionId(SELECTION_ID_UNDEFINED)
5556, d_allocator_p(
bslma::Default::allocator(basicAllocator))
5567template <
class MANIPULATOR>
5570 switch (d_selectionId) {
5611 return d_selectionId;
5614template <
class ACCESSOR>
5617 switch (d_selectionId) {
5678template <
typename HASH_ALGORITHM>
5684 switch (
object.selectionId()) {
5685 case Class::SELECTION_ID_ANNOTATION:
5688 case Class::SELECTION_ID_SEQUENCE:
5691 case Class::SELECTION_ID_CHOICE:
5695 BSLS_ASSERT(Class::SELECTION_ID_UNDEFINED ==
object.selectionId());
5706template <
class MANIPULATOR>
5764template <
class MANIPULATOR>
5767 enum { NOT_FOUND = -1 };
5805template <
class MANIPULATOR>
5807 MANIPULATOR& manipulator,
5811 enum { NOT_FOUND = -1 };
5815 if (0 == attributeInfo) {
5855 return d_cppdefault;
5867 return d_allocatesMemory;
5873 return d_allowsDirectManipulation;
5883template <
class ACCESSOR>
5941template <
class ACCESSOR>
5944 enum { NOT_FOUND = -1 };
5982template <
class ACCESSOR>
5986 int nameLength)
const
5988 enum { NOT_FOUND = -1 };
5992 if (0 == attributeInfo) {
6032 return d_cppdefault;
6044 return d_allocatesMemory;
6050 return d_allowsDirectManipulation;
6059template <
typename HASH_ALGORITHM>
6072 hashAppend(hashAlg,
object.allocatesMemory());
6073 hashAppend(hashAlg,
object.allowsDirectManipulation());
6087: d_selectionId(SELECTION_ID_UNDEFINED)
6088, d_allocator_p(
bslma::Default::allocator(basicAllocator))
6099template <
class MANIPULATOR>
6102 switch (d_selectionId) {
6143 return d_selectionId;
6146template <
class ACCESSOR>
6149 switch (d_selectionId) {
6210template <
typename HASH_ALGORITHM>
6216 switch (
object.selectionId()) {
6217 case Class::SELECTION_ID_ANNOTATION:
6220 case Class::SELECTION_ID_SIMPLE_TYPE:
6223 case Class::SELECTION_ID_COMPLEX_TYPE:
6227 BSLS_ASSERT(Class::SELECTION_ID_UNDEFINED ==
object.selectionId());
6238template <
class MANIPULATOR>
6251template <
class MANIPULATOR>
6254 enum { NOT_FOUND = -1 };
6265template <
class MANIPULATOR>
6267 MANIPULATOR& manipulator,
6271 enum { NOT_FOUND = -1 };
6275 if (0 == attributeInfo) {
6289template <
class ACCESSOR>
6302template <
class ACCESSOR>
6305 enum { NOT_FOUND = -1 };
6316template <
class ACCESSOR>
6320 int nameLength)
const
6322 enum { NOT_FOUND = -1 };
6326 if (0 == attributeInfo) {
6339template <
typename HASH_ALGORITHM>
6358: d_selectionId(SELECTION_ID_UNDEFINED)
6359, d_allocator_p(
bslma::Default::allocator(basicAllocator))
6370template <
class MANIPULATOR>
6373 switch (d_selectionId) {
6404 return d_selectionId;
6407template <
class ACCESSOR>
6410 switch (d_selectionId) {
6455template <
typename HASH_ALGORITHM>
6461 switch (
object.selectionId()) {
6462 case Class::SELECTION_ID_ANNOTATION:
6465 case Class::SELECTION_ID_ELEMENT:
6469 BSLS_ASSERT(Class::SELECTION_ID_UNDEFINED ==
object.selectionId());
6482: d_selectionId(SELECTION_ID_UNDEFINED)
6483, d_allocator_p(
bslma::Default::allocator(basicAllocator))
6494template <
class MANIPULATOR>
6497 switch (d_selectionId) {
6538 return d_selectionId;
6541template <
class ACCESSOR>
6544 switch (d_selectionId) {
6605template <
typename HASH_ALGORITHM>
6611 switch (
object.selectionId()) {
6612 case Class::SELECTION_ID_ANNOTATION:
6615 case Class::SELECTION_ID_SIMPLE_TYPE:
6618 case Class::SELECTION_ID_COMPLEX_TYPE:
6622 BSLS_ASSERT(Class::SELECTION_ID_UNDEFINED ==
object.selectionId());
6633template <
class MANIPULATOR>
6666template <
class MANIPULATOR>
6669 enum { NOT_FOUND = -1 };
6692template <
class MANIPULATOR>
6694 MANIPULATOR& manipulator,
6698 enum { NOT_FOUND = -1 };
6702 if (0 == attributeInfo) {
6730 return d_elementFormDefault;
6740template <
class ACCESSOR>
6773template <
class ACCESSOR>
6776 enum { NOT_FOUND = -1 };
6799template <
class ACCESSOR>
6803 int nameLength)
const
6805 enum { NOT_FOUND = -1 };
6809 if (0 == attributeInfo) {
6837 return d_elementFormDefault;
6846template <
typename HASH_ALGORITHM>
6855 hashAppend(hashAlg,
object.elementFormDefault());
6868 return lhs.documentation() ==
rhs.documentation();
6881 bsl::ostream& stream,
6884 return rhs.print(stream, 0, -1);
6894 if (
lhs.selectionId() ==
rhs.selectionId()) {
6895 switch (
rhs.selectionId()) {
6896 case Class::SELECTION_ID_ANNOTATION:
6897 return lhs.annotation() ==
rhs.annotation();
6918 bsl::ostream& stream,
6921 return rhs.print(stream, 0, -1);
6930 return lhs.value() ==
rhs.value()
6931 &&
lhs.choice() ==
rhs.choice();
6944 bsl::ostream& stream,
6947 return rhs.print(stream, 0, -1);
6957 if (
lhs.selectionId() ==
rhs.selectionId()) {
6958 switch (
rhs.selectionId()) {
6959 case Class::SELECTION_ID_ANNOTATION:
6960 return lhs.annotation() ==
rhs.annotation();
6961 case Class::SELECTION_ID_ENUMERATION:
6962 return lhs.enumeration() ==
rhs.enumeration();
6983 bsl::ostream& stream,
6986 return rhs.print(stream, 0, -1);
6995 return lhs.base() ==
rhs.base()
6996 &&
lhs.choice() ==
rhs.choice();
7009 bsl::ostream& stream,
7012 return rhs.print(stream, 0, -1);
7022 if (
lhs.selectionId() ==
rhs.selectionId()) {
7023 switch (
rhs.selectionId()) {
7024 case Class::SELECTION_ID_ANNOTATION:
7025 return lhs.annotation() ==
rhs.annotation();
7026 case Class::SELECTION_ID_RESTRICTION:
7027 return lhs.restriction() ==
rhs.restriction();
7048 bsl::ostream& stream,
7051 return rhs.print(stream, 0, -1);
7060 return lhs.name() ==
rhs.name()
7061 &&
lhs.preserveEnumOrder() ==
rhs.preserveEnumOrder()
7062 &&
lhs.choice() ==
rhs.choice();
7075 bsl::ostream& stream,
7078 return rhs.print(stream, 0, -1);
7087 return lhs.choice() ==
rhs.choice();
7100 bsl::ostream& stream,
7103 return rhs.print(stream, 0, -1);
7113 if (
lhs.selectionId() ==
rhs.selectionId()) {
7114 switch (
rhs.selectionId()) {
7115 case Class::SELECTION_ID_ANNOTATION:
7116 return lhs.annotation() ==
rhs.annotation();
7117 case Class::SELECTION_ID_ELEMENT:
7118 return lhs.element() ==
rhs.element();
7139 bsl::ostream& stream,
7142 return rhs.print(stream, 0, -1);
7151 return lhs.name() ==
rhs.name()
7152 &&
lhs.choice() ==
rhs.choice();
7165 bsl::ostream& stream,
7168 return rhs.print(stream, 0, -1);
7178 if (
lhs.selectionId() ==
rhs.selectionId()) {
7179 switch (
rhs.selectionId()) {
7180 case Class::SELECTION_ID_ANNOTATION:
7181 return lhs.annotation() ==
rhs.annotation();
7182 case Class::SELECTION_ID_SEQUENCE:
7183 return lhs.sequence() ==
rhs.sequence();
7184 case Class::SELECTION_ID_CHOICE:
7185 return lhs.choice() ==
rhs.choice();
7206 bsl::ostream& stream,
7209 return rhs.print(stream, 0, -1);
7218 return lhs.name() ==
rhs.name()
7219 &&
lhs.type() ==
rhs.type()
7220 &&
lhs.minOccurs() ==
rhs.minOccurs()
7221 &&
lhs.maxOccurs() ==
rhs.maxOccurs()
7222 &&
lhs.defaultValue() ==
rhs.defaultValue()
7223 &&
lhs.cppdefault() ==
rhs.cppdefault()
7224 &&
lhs.cpptype() ==
rhs.cpptype()
7225 &&
lhs.allocatesMemory() ==
rhs.allocatesMemory()
7226 &&
lhs.allowsDirectManipulation() ==
rhs.allowsDirectManipulation()
7227 &&
lhs.choice() ==
rhs.choice();
7240 bsl::ostream& stream,
7243 return rhs.print(stream, 0, -1);
7253 if (
lhs.selectionId() ==
rhs.selectionId()) {
7254 switch (
rhs.selectionId()) {
7255 case Class::SELECTION_ID_ANNOTATION:
7256 return lhs.annotation() ==
rhs.annotation();
7257 case Class::SELECTION_ID_SIMPLE_TYPE:
7258 return lhs.simpleType() ==
rhs.simpleType();
7259 case Class::SELECTION_ID_COMPLEX_TYPE:
7260 return lhs.complexType() ==
rhs.complexType();
7281 bsl::ostream& stream,
7284 return rhs.print(stream, 0, -1);
7293 return lhs.choice() ==
rhs.choice();
7306 bsl::ostream& stream,
7309 return rhs.print(stream, 0, -1);
7319 if (
lhs.selectionId() ==
rhs.selectionId()) {
7320 switch (
rhs.selectionId()) {
7321 case Class::SELECTION_ID_ANNOTATION:
7322 return lhs.annotation() ==
rhs.annotation();
7323 case Class::SELECTION_ID_ELEMENT:
7324 return lhs.element() ==
rhs.element();
7345 bsl::ostream& stream,
7348 return rhs.print(stream, 0, -1);
7358 if (
lhs.selectionId() ==
rhs.selectionId()) {
7359 switch (
rhs.selectionId()) {
7360 case Class::SELECTION_ID_ANNOTATION:
7361 return lhs.annotation() ==
rhs.annotation();
7362 case Class::SELECTION_ID_SIMPLE_TYPE:
7363 return lhs.simpleType() ==
rhs.simpleType();
7364 case Class::SELECTION_ID_COMPLEX_TYPE:
7365 return lhs.complexType() ==
rhs.complexType();
7386 bsl::ostream& stream,
7389 return rhs.print(stream, 0, -1);
7398 return lhs.xs() ==
rhs.xs()
7399 &&
lhs.bdem() ==
rhs.bdem()
7400 &&
lhs.package() ==
rhs.package()
7401 &&
lhs.elementFormDefault() ==
rhs.elementFormDefault()
7402 &&
lhs.choice() ==
rhs.choice();
7415 bsl::ostream& stream,
7418 return rhs.print(stream, 0, -1);
Definition bdlb_nullablevalue.h:262
Definition bslstl_vector.h:1120
Definition bslma_allocator.h:545
Definition s_baltst_basicschema.h:95
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:115
@ ATTRIBUTE_ID_DOCUMENTATION
Definition s_baltst_basicschema.h:103
bdlb::NullableValue< bsl::string > & documentation()
Definition s_baltst_basicschema.h:4278
~BasicSchemaAnnotationElement()
Destroy this object.
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:107
BasicSchemaAnnotationElement(bslma::Allocator *basicAllocator=0)
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:4247
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:4234
BasicSchemaAnnotationElement & operator=(const BasicSchemaAnnotationElement &rhs)
Assign to this object the value of the specified rhs object.
@ ATTRIBUTE_INDEX_DOCUMENTATION
Definition s_baltst_basicschema.h:111
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:4285
BasicSchemaAnnotationElement(const BasicSchemaAnnotationElement &original, bslma::Allocator *basicAllocator=0)
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:4298
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:117
Definition s_baltst_basicschema.h:1912
~BasicSchemaChoiceElementChoice()
Destroy this object.
Definition s_baltst_basicschema.h:5290
bsls::ObjectBuffer< BasicSchemaAnnotationElement > d_annotation
Definition s_baltst_basicschema.h:1916
const char * selectionName() const
Return the symbolic name of the current selection of this object.
int makeSelection(const char *name, int nameLength)
bool isUndefinedValue() const
Definition s_baltst_basicschema.h:5376
bool isElementValue() const
Definition s_baltst_basicschema.h:5370
BasicSchemaElement & makeElement(const BasicSchemaElement &value)
int makeSelection(int selectionId)
@ NUM_SELECTIONS
Definition s_baltst_basicschema.h:1933
BasicSchemaAnnotationElement & makeAnnotation()
BasicSchemaChoiceElementChoice(const BasicSchemaChoiceElementChoice &original, bslma::Allocator *basicAllocator=0)
bool isAnnotationValue() const
Definition s_baltst_basicschema.h:5364
int manipulateSelection(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:5297
@ SELECTION_INDEX_ANNOTATION
Definition s_baltst_basicschema.h:1937
@ SELECTION_INDEX_ELEMENT
Definition s_baltst_basicschema.h:1938
BasicSchemaAnnotationElement & annotation()
Definition s_baltst_basicschema.h:5313
BasicSchemaAnnotationElement & makeAnnotation(const BasicSchemaAnnotationElement &value)
static const bdlat_SelectionInfo SELECTION_INFO_ARRAY[]
Definition s_baltst_basicschema.h:1944
BasicSchemaElement * d_element
Definition s_baltst_basicschema.h:1917
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:1942
BasicSchemaElement & element()
Definition s_baltst_basicschema.h:5320
int accessSelection(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:5334
int selectionId() const
Definition s_baltst_basicschema.h:5328
BasicSchemaElement & makeElement()
@ SELECTION_ID_ELEMENT
Definition s_baltst_basicschema.h:1929
@ SELECTION_ID_UNDEFINED
Definition s_baltst_basicschema.h:1927
@ SELECTION_ID_ANNOTATION
Definition s_baltst_basicschema.h:1928
static const bdlat_SelectionInfo * lookupSelectionInfo(int id)
BasicSchemaChoiceElementChoice & operator=(const BasicSchemaChoiceElementChoice &rhs)
Assign to this object the value of the specified rhs object.
BasicSchemaChoiceElementChoice(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:5283
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
static const bdlat_SelectionInfo * lookupSelectionInfo(const char *name, int nameLength)
Definition s_baltst_basicschema.h:1699
bsl::vector< BasicSchemaChoiceElementChoice > & choice()
Definition s_baltst_basicschema.h:5209
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
@ ATTRIBUTE_ID_CHOICE
Definition s_baltst_basicschema.h:1707
BasicSchemaChoiceElement(const BasicSchemaChoiceElement &original, bslma::Allocator *basicAllocator=0)
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:1711
@ ATTRIBUTE_INDEX_CHOICE
Definition s_baltst_basicschema.h:1715
~BasicSchemaChoiceElement()
Destroy this object.
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:5178
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:5216
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:1719
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:1721
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:5165
BasicSchemaChoiceElement(bslma::Allocator *basicAllocator=0)
BasicSchemaChoiceElement & operator=(const BasicSchemaChoiceElement &rhs)
Assign to this object the value of the specified rhs object.
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:5229
Definition s_baltst_basicschema.h:3699
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:3732
~BasicSchemaChoice()
Destroy this object.
Definition s_baltst_basicschema.h:6488
int accessSelection(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:6542
bool isAnnotationValue() const
Definition s_baltst_basicschema.h:6582
BasicSchemaSimpleTypeElement & makeSimpleType()
static const bdlat_SelectionInfo * lookupSelectionInfo(const char *name, int nameLength)
BasicSchemaSimpleTypeElement & makeSimpleType(const BasicSchemaSimpleTypeElement &value)
BasicSchemaComplexTypeElement * d_complexType
Definition s_baltst_basicschema.h:3705
BasicSchemaChoice & operator=(const BasicSchemaChoice &rhs)
Assign to this object the value of the specified rhs object.
static const bdlat_SelectionInfo * lookupSelectionInfo(int id)
int manipulateSelection(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:6495
BasicSchemaComplexTypeElement & makeComplexType()
BasicSchemaAnnotationElement & annotation()
Definition s_baltst_basicschema.h:6514
static const bdlat_SelectionInfo SELECTION_INFO_ARRAY[]
Definition s_baltst_basicschema.h:3734
BasicSchemaComplexTypeElement & makeComplexType(const BasicSchemaComplexTypeElement &value)
BasicSchemaSimpleTypeElement & simpleType()
Definition s_baltst_basicschema.h:6521
BasicSchemaChoice(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:6481
@ SELECTION_INDEX_ANNOTATION
Definition s_baltst_basicschema.h:3726
@ SELECTION_INDEX_SIMPLE_TYPE
Definition s_baltst_basicschema.h:3727
@ SELECTION_INDEX_COMPLEX_TYPE
Definition s_baltst_basicschema.h:3728
bool isComplexTypeValue() const
Definition s_baltst_basicschema.h:6594
int makeSelection(int selectionId)
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
BasicSchemaAnnotationElement & makeAnnotation()
bool isUndefinedValue() const
Definition s_baltst_basicschema.h:6600
@ NUM_SELECTIONS
Definition s_baltst_basicschema.h:3722
@ SELECTION_ID_ANNOTATION
Definition s_baltst_basicschema.h:3716
@ SELECTION_ID_SIMPLE_TYPE
Definition s_baltst_basicschema.h:3717
@ SELECTION_ID_COMPLEX_TYPE
Definition s_baltst_basicschema.h:3718
@ SELECTION_ID_UNDEFINED
Definition s_baltst_basicschema.h:3715
int makeSelection(const char *name, int nameLength)
BasicSchemaComplexTypeElement & complexType()
Definition s_baltst_basicschema.h:6528
BasicSchemaChoice(const BasicSchemaChoice &original, bslma::Allocator *basicAllocator=0)
bsls::ObjectBuffer< BasicSchemaAnnotationElement > d_annotation
Definition s_baltst_basicschema.h:3703
bsls::ObjectBuffer< BasicSchemaSimpleTypeElement > d_simpleType
Definition s_baltst_basicschema.h:3704
const char * selectionName() const
Return the symbolic name of the current selection of this object.
bool isSimpleTypeValue() const
Definition s_baltst_basicschema.h:6588
int selectionId() const
Definition s_baltst_basicschema.h:6536
BasicSchemaAnnotationElement & makeAnnotation(const BasicSchemaAnnotationElement &value)
Definition s_baltst_basicschema.h:2381
bool isSequenceValue() const
Definition s_baltst_basicschema.h:5661
BasicSchemaAnnotationElement & annotation()
Definition s_baltst_basicschema.h:5587
~BasicSchemaComplexTypeElementChoice()
Destroy this object.
Definition s_baltst_basicschema.h:5561
static const bdlat_SelectionInfo SELECTION_INFO_ARRAY[]
Definition s_baltst_basicschema.h:2416
int selectionId() const
Definition s_baltst_basicschema.h:5609
BasicSchemaAnnotationElement & makeAnnotation(const BasicSchemaAnnotationElement &value)
BasicSchemaAnnotationElement & makeAnnotation()
int makeSelection(int selectionId)
int makeSelection(const char *name, int nameLength)
int manipulateSelection(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:5568
BasicSchemaSequenceElement & makeSequence(const BasicSchemaSequenceElement &value)
int accessSelection(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:5615
bool isUndefinedValue() const
Definition s_baltst_basicschema.h:5673
const char * selectionName() const
Return the symbolic name of the current selection of this object.
bool isChoiceValue() const
Definition s_baltst_basicschema.h:5667
static const bdlat_SelectionInfo * lookupSelectionInfo(const char *name, int nameLength)
BasicSchemaComplexTypeElementChoice(const BasicSchemaComplexTypeElementChoice &original, bslma::Allocator *basicAllocator=0)
BasicSchemaSequenceElement * d_sequence
Definition s_baltst_basicschema.h:2386
BasicSchemaComplexTypeElementChoice & operator=(const BasicSchemaComplexTypeElementChoice &rhs)
Assign to this object the value of the specified rhs object.
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:2414
BasicSchemaSequenceElement & makeSequence()
BasicSchemaComplexTypeElementChoice(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:5554
bsls::ObjectBuffer< BasicSchemaAnnotationElement > d_annotation
Definition s_baltst_basicschema.h:2385
@ NUM_SELECTIONS
Definition s_baltst_basicschema.h:2404
BasicSchemaChoiceElement & choice()
Definition s_baltst_basicschema.h:5601
@ SELECTION_INDEX_ANNOTATION
Definition s_baltst_basicschema.h:2408
@ SELECTION_INDEX_SEQUENCE
Definition s_baltst_basicschema.h:2409
@ SELECTION_INDEX_CHOICE
Definition s_baltst_basicschema.h:2410
BasicSchemaChoiceElement & makeChoice()
static const bdlat_SelectionInfo * lookupSelectionInfo(int id)
BasicSchemaChoiceElement * d_choice
Definition s_baltst_basicschema.h:2387
BasicSchemaChoiceElement & makeChoice(const BasicSchemaChoiceElement &value)
bool isAnnotationValue() const
Definition s_baltst_basicschema.h:5655
@ SELECTION_ID_CHOICE
Definition s_baltst_basicschema.h:2400
@ SELECTION_ID_SEQUENCE
Definition s_baltst_basicschema.h:2399
@ SELECTION_ID_UNDEFINED
Definition s_baltst_basicschema.h:2397
@ SELECTION_ID_ANNOTATION
Definition s_baltst_basicschema.h:2398
BasicSchemaSequenceElement & sequence()
Definition s_baltst_basicschema.h:5594
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
Definition s_baltst_basicschema.h:2157
@ ATTRIBUTE_ID_CHOICE
Definition s_baltst_basicschema.h:2167
@ ATTRIBUTE_ID_NAME
Definition s_baltst_basicschema.h:2166
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:2180
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:5472
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:5425
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:2182
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:5490
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:5407
bdlb::NullableValue< bsl::string > & name()
Definition s_baltst_basicschema.h:5459
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:2171
bsl::vector< BasicSchemaComplexTypeElementChoice > & choice()
Definition s_baltst_basicschema.h:5465
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
BasicSchemaComplexTypeElement(const BasicSchemaComplexTypeElement &original, bslma::Allocator *basicAllocator=0)
BasicSchemaComplexTypeElement(bslma::Allocator *basicAllocator=0)
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
~BasicSchemaComplexTypeElement()
Destroy this object.
BasicSchemaComplexTypeElement & operator=(const BasicSchemaComplexTypeElement &rhs)
Assign to this object the value of the specified rhs object.
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
@ ATTRIBUTE_INDEX_NAME
Definition s_baltst_basicschema.h:2175
@ ATTRIBUTE_INDEX_CHOICE
Definition s_baltst_basicschema.h:2176
Definition s_baltst_basicschema.h:2967
BasicSchemaComplexTypeElement & complexType()
Definition s_baltst_basicschema.h:6133
static const bdlat_SelectionInfo * lookupSelectionInfo(const char *name, int nameLength)
BasicSchemaSimpleTypeElement & simpleType()
Definition s_baltst_basicschema.h:6126
const char * selectionName() const
Return the symbolic name of the current selection of this object.
bool isAnnotationValue() const
Definition s_baltst_basicschema.h:6187
@ NUM_SELECTIONS
Definition s_baltst_basicschema.h:2990
BasicSchemaAnnotationElement & annotation()
Definition s_baltst_basicschema.h:6119
static const bdlat_SelectionInfo * lookupSelectionInfo(int id)
static const bdlat_SelectionInfo SELECTION_INFO_ARRAY[]
Definition s_baltst_basicschema.h:3002
BasicSchemaComplexTypeElement & makeComplexType()
bool isUndefinedValue() const
Definition s_baltst_basicschema.h:6205
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
int selectionId() const
Definition s_baltst_basicschema.h:6141
BasicSchemaAnnotationElement & makeAnnotation(const BasicSchemaAnnotationElement &value)
BasicSchemaElementChoice(const BasicSchemaElementChoice &original, bslma::Allocator *basicAllocator=0)
@ SELECTION_ID_COMPLEX_TYPE
Definition s_baltst_basicschema.h:2986
@ SELECTION_ID_SIMPLE_TYPE
Definition s_baltst_basicschema.h:2985
@ SELECTION_ID_UNDEFINED
Definition s_baltst_basicschema.h:2983
@ SELECTION_ID_ANNOTATION
Definition s_baltst_basicschema.h:2984
BasicSchemaSimpleTypeElement & makeSimpleType(const BasicSchemaSimpleTypeElement &value)
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:3000
int accessSelection(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:6147
BasicSchemaElementChoice & operator=(const BasicSchemaElementChoice &rhs)
Assign to this object the value of the specified rhs object.
BasicSchemaAnnotationElement & makeAnnotation()
int manipulateSelection(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:6100
int makeSelection(const char *name, int nameLength)
BasicSchemaSimpleTypeElement & makeSimpleType()
bsls::ObjectBuffer< BasicSchemaAnnotationElement > d_annotation
Definition s_baltst_basicschema.h:2971
bsls::ObjectBuffer< BasicSchemaSimpleTypeElement > d_simpleType
Definition s_baltst_basicschema.h:2972
BasicSchemaComplexTypeElement * d_complexType
Definition s_baltst_basicschema.h:2973
BasicSchemaElementChoice(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:6086
BasicSchemaComplexTypeElement & makeComplexType(const BasicSchemaComplexTypeElement &value)
bool isSimpleTypeValue() const
Definition s_baltst_basicschema.h:6193
int makeSelection(int selectionId)
@ SELECTION_INDEX_SIMPLE_TYPE
Definition s_baltst_basicschema.h:2995
@ SELECTION_INDEX_ANNOTATION
Definition s_baltst_basicschema.h:2994
@ SELECTION_INDEX_COMPLEX_TYPE
Definition s_baltst_basicschema.h:2996
~BasicSchemaElementChoice()
Destroy this object.
Definition s_baltst_basicschema.h:6093
bool isComplexTypeValue() const
Definition s_baltst_basicschema.h:6199
Definition s_baltst_basicschema.h:2656
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:5707
bdlb::NullableValue< bsl::string > & type()
Definition s_baltst_basicschema.h:5829
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:5884
BasicSchemaElement(bslma::Allocator *basicAllocator=0)
BasicSchemaElement(const BasicSchemaElement &original, bslma::Allocator *basicAllocator=0)
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:5765
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:2703
@ ATTRIBUTE_ID_ALLOWS_DIRECT_MANIPULATION
Definition s_baltst_basicschema.h:2681
@ ATTRIBUTE_ID_ALLOCATES_MEMORY
Definition s_baltst_basicschema.h:2680
@ ATTRIBUTE_ID_MAX_OCCURS
Definition s_baltst_basicschema.h:2676
@ ATTRIBUTE_ID_TYPE
Definition s_baltst_basicschema.h:2674
@ ATTRIBUTE_ID_DEFAULT_VALUE
Definition s_baltst_basicschema.h:2677
@ ATTRIBUTE_ID_CHOICE
Definition s_baltst_basicschema.h:2682
@ ATTRIBUTE_ID_CPPDEFAULT
Definition s_baltst_basicschema.h:2678
@ ATTRIBUTE_ID_MIN_OCCURS
Definition s_baltst_basicschema.h:2675
@ ATTRIBUTE_ID_NAME
Definition s_baltst_basicschema.h:2673
@ ATTRIBUTE_ID_CPPTYPE
Definition s_baltst_basicschema.h:2679
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
bdlb::NullableValue< bsl::string > & maxOccurs()
Definition s_baltst_basicschema.h:5841
bsl::vector< BasicSchemaElementChoice > & choice()
Definition s_baltst_basicschema.h:5877
bdlb::NullableValue< bsl::string > & name()
Definition s_baltst_basicschema.h:5823
bdlb::NullableValue< bsl::string > & allocatesMemory()
Definition s_baltst_basicschema.h:5865
bdlb::NullableValue< bsl::string > & defaultValue()
Definition s_baltst_basicschema.h:5847
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:2705
bdlb::NullableValue< bsl::string > & minOccurs()
Definition s_baltst_basicschema.h:5835
bdlb::NullableValue< bsl::string > & cppdefault()
Definition s_baltst_basicschema.h:5853
bdlb::NullableValue< bsl::string > & allowsDirectManipulation()
Definition s_baltst_basicschema.h:5871
~BasicSchemaElement()
Destroy this object.
BasicSchemaElement & operator=(const BasicSchemaElement &rhs)
Assign to this object the value of the specified rhs object.
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:5942
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:2686
@ ATTRIBUTE_INDEX_MAX_OCCURS
Definition s_baltst_basicschema.h:2693
@ ATTRIBUTE_INDEX_CHOICE
Definition s_baltst_basicschema.h:2699
@ ATTRIBUTE_INDEX_CPPTYPE
Definition s_baltst_basicschema.h:2696
@ ATTRIBUTE_INDEX_ALLOCATES_MEMORY
Definition s_baltst_basicschema.h:2697
@ ATTRIBUTE_INDEX_NAME
Definition s_baltst_basicschema.h:2690
@ ATTRIBUTE_INDEX_TYPE
Definition s_baltst_basicschema.h:2691
@ ATTRIBUTE_INDEX_CPPDEFAULT
Definition s_baltst_basicschema.h:2695
@ ATTRIBUTE_INDEX_MIN_OCCURS
Definition s_baltst_basicschema.h:2692
@ ATTRIBUTE_INDEX_ALLOWS_DIRECT_MANIPULATION
Definition s_baltst_basicschema.h:2698
@ ATTRIBUTE_INDEX_DEFAULT_VALUE
Definition s_baltst_basicschema.h:2694
bdlb::NullableValue< bsl::string > & cpptype()
Definition s_baltst_basicschema.h:5859
Definition s_baltst_basicschema.h:308
const char * selectionName() const
Return the symbolic name of the current selection of this object.
bsls::ObjectBuffer< BasicSchemaAnnotationElement > d_annotation
Definition s_baltst_basicschema.h:312
static const bdlat_SelectionInfo * lookupSelectionInfo(int id)
BasicSchemaAnnotationElement & annotation()
Definition s_baltst_basicschema.h:4379
@ SELECTION_INDEX_ANNOTATION
Definition s_baltst_basicschema.h:331
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
BasicSchemaEnumerationElementChoice(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:4352
BasicSchemaAnnotationElement & makeAnnotation()
bool isUndefinedValue() const
Definition s_baltst_basicschema.h:4419
~BasicSchemaEnumerationElementChoice()
Destroy this object.
Definition s_baltst_basicschema.h:4359
int makeSelection(const char *name, int nameLength)
int selectionId() const
Definition s_baltst_basicschema.h:4387
static const bdlat_SelectionInfo SELECTION_INFO_ARRAY[]
Definition s_baltst_basicschema.h:337
BasicSchemaEnumerationElementChoice(const BasicSchemaEnumerationElementChoice &original, bslma::Allocator *basicAllocator=0)
int manipulateSelection(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:4366
@ NUM_SELECTIONS
Definition s_baltst_basicschema.h:327
BasicSchemaAnnotationElement & makeAnnotation(const BasicSchemaAnnotationElement &value)
bool isAnnotationValue() const
Definition s_baltst_basicschema.h:4413
static const bdlat_SelectionInfo * lookupSelectionInfo(const char *name, int nameLength)
@ SELECTION_ID_ANNOTATION
Definition s_baltst_basicschema.h:323
@ SELECTION_ID_UNDEFINED
Definition s_baltst_basicschema.h:322
BasicSchemaEnumerationElementChoice & operator=(const BasicSchemaEnumerationElementChoice &rhs)
Assign to this object the value of the specified rhs object.
int accessSelection(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:4393
int makeSelection(int selectionId)
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:335
Definition s_baltst_basicschema.h:525
@ ATTRIBUTE_ID_CHOICE
Definition s_baltst_basicschema.h:535
@ ATTRIBUTE_ID_VALUE
Definition s_baltst_basicschema.h:534
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
BasicSchemaEnumerationElement(bslma::Allocator *basicAllocator=0)
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:4447
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:548
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:550
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
BasicSchemaEnumerationElement(const BasicSchemaEnumerationElement &original, bslma::Allocator *basicAllocator=0)
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:539
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:4512
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:4530
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:4465
~BasicSchemaEnumerationElement()
Destroy this object.
@ ATTRIBUTE_INDEX_CHOICE
Definition s_baltst_basicschema.h:544
@ ATTRIBUTE_INDEX_VALUE
Definition s_baltst_basicschema.h:543
bdlb::NullableValue< bsl::string > & value()
Definition s_baltst_basicschema.h:4499
bsl::vector< BasicSchemaEnumerationElementChoice > & choice()
Definition s_baltst_basicschema.h:4505
BasicSchemaEnumerationElement & operator=(const BasicSchemaEnumerationElement &rhs)
Assign to this object the value of the specified rhs object.
Definition s_baltst_basicschema.h:749
~BasicSchemaRestrictionElementChoice()
Destroy this object.
Definition s_baltst_basicschema.h:4601
@ SELECTION_INDEX_ANNOTATION
Definition s_baltst_basicschema.h:774
@ SELECTION_INDEX_ENUMERATION
Definition s_baltst_basicschema.h:775
int selectionId() const
Definition s_baltst_basicschema.h:4639
const char * selectionName() const
Return the symbolic name of the current selection of this object.
BasicSchemaRestrictionElementChoice(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:4594
BasicSchemaRestrictionElementChoice & operator=(const BasicSchemaRestrictionElementChoice &rhs)
Assign to this object the value of the specified rhs object.
static const bdlat_SelectionInfo * lookupSelectionInfo(const char *name, int nameLength)
int makeSelection(const char *name, int nameLength)
BasicSchemaAnnotationElement & makeAnnotation(const BasicSchemaAnnotationElement &value)
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
bool isEnumerationValue() const
Definition s_baltst_basicschema.h:4681
bool isAnnotationValue() const
Definition s_baltst_basicschema.h:4675
static const bdlat_SelectionInfo * lookupSelectionInfo(int id)
bsls::ObjectBuffer< BasicSchemaEnumerationElement > d_enumeration
Definition s_baltst_basicschema.h:754
static const bdlat_SelectionInfo SELECTION_INFO_ARRAY[]
Definition s_baltst_basicschema.h:781
BasicSchemaEnumerationElement & makeEnumeration()
int makeSelection(int selectionId)
BasicSchemaEnumerationElement & makeEnumeration(const BasicSchemaEnumerationElement &value)
@ NUM_SELECTIONS
Definition s_baltst_basicschema.h:770
bool isUndefinedValue() const
Definition s_baltst_basicschema.h:4687
int manipulateSelection(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:4608
@ SELECTION_ID_ANNOTATION
Definition s_baltst_basicschema.h:765
@ SELECTION_ID_ENUMERATION
Definition s_baltst_basicschema.h:766
@ SELECTION_ID_UNDEFINED
Definition s_baltst_basicschema.h:764
BasicSchemaEnumerationElement & enumeration()
Definition s_baltst_basicschema.h:4631
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:779
BasicSchemaAnnotationElement & makeAnnotation()
bsls::ObjectBuffer< BasicSchemaAnnotationElement > d_annotation
Definition s_baltst_basicschema.h:753
BasicSchemaAnnotationElement & annotation()
Definition s_baltst_basicschema.h:4624
int accessSelection(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:4645
BasicSchemaRestrictionElementChoice(const BasicSchemaRestrictionElementChoice &original, bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:995
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:4718
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:4736
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:4801
BasicSchemaRestrictionElement & operator=(const BasicSchemaRestrictionElement &rhs)
Assign to this object the value of the specified rhs object.
@ ATTRIBUTE_ID_BASE
Definition s_baltst_basicschema.h:1004
@ ATTRIBUTE_ID_CHOICE
Definition s_baltst_basicschema.h:1005
bdlb::NullableValue< bsl::string > & base()
Definition s_baltst_basicschema.h:4770
bsl::vector< BasicSchemaRestrictionElementChoice > & choice()
Definition s_baltst_basicschema.h:4776
BasicSchemaRestrictionElement(bslma::Allocator *basicAllocator=0)
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:1018
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
~BasicSchemaRestrictionElement()
Destroy this object.
BasicSchemaRestrictionElement(const BasicSchemaRestrictionElement &original, bslma::Allocator *basicAllocator=0)
@ ATTRIBUTE_INDEX_BASE
Definition s_baltst_basicschema.h:1013
@ ATTRIBUTE_INDEX_CHOICE
Definition s_baltst_basicschema.h:1014
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:1020
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:1009
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:4783
Definition s_baltst_basicschema.h:3454
BasicSchemaElement & makeElement(const BasicSchemaElement &value)
@ SELECTION_ID_ELEMENT
Definition s_baltst_basicschema.h:3471
@ SELECTION_ID_ANNOTATION
Definition s_baltst_basicschema.h:3470
@ SELECTION_ID_UNDEFINED
Definition s_baltst_basicschema.h:3469
BasicSchemaAnnotationElement & makeAnnotation()
int manipulateSelection(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:6371
BasicSchemaElement * d_element
Definition s_baltst_basicschema.h:3459
bool isUndefinedValue() const
Definition s_baltst_basicschema.h:6450
BasicSchemaSequenceElementChoice(const BasicSchemaSequenceElementChoice &original, bslma::Allocator *basicAllocator=0)
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:3484
BasicSchemaElement & makeElement()
static const bdlat_SelectionInfo * lookupSelectionInfo(int id)
~BasicSchemaSequenceElementChoice()
Destroy this object.
Definition s_baltst_basicschema.h:6364
@ SELECTION_INDEX_ANNOTATION
Definition s_baltst_basicschema.h:3479
@ SELECTION_INDEX_ELEMENT
Definition s_baltst_basicschema.h:3480
static const bdlat_SelectionInfo SELECTION_INFO_ARRAY[]
Definition s_baltst_basicschema.h:3486
int accessSelection(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:6408
BasicSchemaElement & element()
Definition s_baltst_basicschema.h:6394
bsls::ObjectBuffer< BasicSchemaAnnotationElement > d_annotation
Definition s_baltst_basicschema.h:3458
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
BasicSchemaSequenceElementChoice(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:6357
BasicSchemaAnnotationElement & annotation()
Definition s_baltst_basicschema.h:6387
int makeSelection(const char *name, int nameLength)
BasicSchemaSequenceElementChoice & operator=(const BasicSchemaSequenceElementChoice &rhs)
Assign to this object the value of the specified rhs object.
const char * selectionName() const
Return the symbolic name of the current selection of this object.
int makeSelection(int selectionId)
BasicSchemaAnnotationElement & makeAnnotation(const BasicSchemaAnnotationElement &value)
int selectionId() const
Definition s_baltst_basicschema.h:6402
bool isElementValue() const
Definition s_baltst_basicschema.h:6444
bool isAnnotationValue() const
Definition s_baltst_basicschema.h:6438
@ NUM_SELECTIONS
Definition s_baltst_basicschema.h:3475
static const bdlat_SelectionInfo * lookupSelectionInfo(const char *name, int nameLength)
Definition s_baltst_basicschema.h:3241
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:6252
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
bsl::vector< BasicSchemaSequenceElementChoice > & choice()
Definition s_baltst_basicschema.h:6283
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:3263
@ ATTRIBUTE_ID_CHOICE
Definition s_baltst_basicschema.h:3249
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:3261
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:6303
~BasicSchemaSequenceElement()
Destroy this object.
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:3253
BasicSchemaSequenceElement(const BasicSchemaSequenceElement &original, bslma::Allocator *basicAllocator=0)
@ ATTRIBUTE_INDEX_CHOICE
Definition s_baltst_basicschema.h:3257
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:6239
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:6290
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
BasicSchemaSequenceElement & operator=(const BasicSchemaSequenceElement &rhs)
Assign to this object the value of the specified rhs object.
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
BasicSchemaSequenceElement(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:1219
BasicSchemaAnnotationElement & makeAnnotation()
@ SELECTION_INDEX_ANNOTATION
Definition s_baltst_basicschema.h:1244
@ SELECTION_INDEX_RESTRICTION
Definition s_baltst_basicschema.h:1245
static const bdlat_SelectionInfo * lookupSelectionInfo(int id)
BasicSchemaSimpleTypeElementChoice(const BasicSchemaSimpleTypeElementChoice &original, bslma::Allocator *basicAllocator=0)
static const bdlat_SelectionInfo * lookupSelectionInfo(const char *name, int nameLength)
BasicSchemaSimpleTypeElementChoice & operator=(const BasicSchemaSimpleTypeElementChoice &rhs)
Assign to this object the value of the specified rhs object.
BasicSchemaRestrictionElement & makeRestriction(const BasicSchemaRestrictionElement &value)
BasicSchemaSimpleTypeElementChoice(bslma::Allocator *basicAllocator=0)
Definition s_baltst_basicschema.h:4865
bool isRestrictionValue() const
Definition s_baltst_basicschema.h:4952
@ SELECTION_ID_RESTRICTION
Definition s_baltst_basicschema.h:1236
@ SELECTION_ID_ANNOTATION
Definition s_baltst_basicschema.h:1235
@ SELECTION_ID_UNDEFINED
Definition s_baltst_basicschema.h:1234
bsls::ObjectBuffer< BasicSchemaRestrictionElement > d_restriction
Definition s_baltst_basicschema.h:1224
int accessSelection(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:4916
int manipulateSelection(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:4879
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
int makeSelection(int selectionId)
int selectionId() const
Definition s_baltst_basicschema.h:4910
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:1249
bool isUndefinedValue() const
Definition s_baltst_basicschema.h:4958
bool isAnnotationValue() const
Definition s_baltst_basicschema.h:4946
BasicSchemaAnnotationElement & annotation()
Definition s_baltst_basicschema.h:4895
bsls::ObjectBuffer< BasicSchemaAnnotationElement > d_annotation
Definition s_baltst_basicschema.h:1223
BasicSchemaRestrictionElement & makeRestriction()
@ NUM_SELECTIONS
Definition s_baltst_basicschema.h:1240
BasicSchemaAnnotationElement & makeAnnotation(const BasicSchemaAnnotationElement &value)
const char * selectionName() const
Return the symbolic name of the current selection of this object.
static const bdlat_SelectionInfo SELECTION_INFO_ARRAY[]
Definition s_baltst_basicschema.h:1251
~BasicSchemaSimpleTypeElementChoice()
Destroy this object.
Definition s_baltst_basicschema.h:4872
BasicSchemaRestrictionElement & restriction()
Definition s_baltst_basicschema.h:4902
int makeSelection(const char *name, int nameLength)
Definition s_baltst_basicschema.h:1464
BasicSchemaSimpleTypeElement(bslma::Allocator *basicAllocator=0)
BasicSchemaSimpleTypeElement & operator=(const BasicSchemaSimpleTypeElement &rhs)
Assign to this object the value of the specified rhs object.
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:5068
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:4989
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:1490
@ ATTRIBUTE_ID_CHOICE
Definition s_baltst_basicschema.h:1476
@ ATTRIBUTE_ID_PRESERVE_ENUM_ORDER
Definition s_baltst_basicschema.h:1475
@ ATTRIBUTE_ID_NAME
Definition s_baltst_basicschema.h:1474
@ ATTRIBUTE_INDEX_CHOICE
Definition s_baltst_basicschema.h:1486
@ ATTRIBUTE_INDEX_PRESERVE_ENUM_ORDER
Definition s_baltst_basicschema.h:1485
@ ATTRIBUTE_INDEX_NAME
Definition s_baltst_basicschema.h:1484
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:5012
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:1480
BasicSchemaSimpleTypeElement(const BasicSchemaSimpleTypeElement &original, bslma::Allocator *basicAllocator=0)
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:1492
bdlb::NullableValue< bsl::string > & name()
Definition s_baltst_basicschema.h:5049
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
bdlb::NullableValue< bsl::string > & preserveEnumOrder()
Definition s_baltst_basicschema.h:5055
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:5091
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
~BasicSchemaSimpleTypeElement()
Destroy this object.
bsl::vector< BasicSchemaSimpleTypeElementChoice > & choice()
Definition s_baltst_basicschema.h:5061
Definition s_baltst_basicschema.h:3972
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_basicschema.h:4006
bdlb::NullableValue< bsl::string > & bdem()
Definition s_baltst_basicschema.h:6716
BasicSchema & operator=(const BasicSchema &rhs)
Assign to this object the value of the specified rhs object.
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_basicschema.h:6634
@ ATTRIBUTE_INDEX_CHOICE
Definition s_baltst_basicschema.h:4000
@ ATTRIBUTE_INDEX_BDEM
Definition s_baltst_basicschema.h:3997
@ ATTRIBUTE_INDEX_ELEMENT_FORM_DEFAULT
Definition s_baltst_basicschema.h:3999
@ ATTRIBUTE_INDEX_XS
Definition s_baltst_basicschema.h:3996
@ ATTRIBUTE_INDEX_PACKAGE
Definition s_baltst_basicschema.h:3998
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
bdlb::NullableValue< bsl::string > & elementFormDefault()
Definition s_baltst_basicschema.h:6728
BasicSchema(bslma::Allocator *basicAllocator=0)
bdlb::NullableValue< bsl::string > & xs()
Return a reference to the modifiable "Xs" attribute of this object.
Definition s_baltst_basicschema.h:6710
bdlb::NullableValue< bsl::string > & package()
Definition s_baltst_basicschema.h:6722
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
@ ATTRIBUTE_ID_CHOICE
Definition s_baltst_basicschema.h:3988
@ ATTRIBUTE_ID_XS
Definition s_baltst_basicschema.h:3984
@ ATTRIBUTE_ID_ELEMENT_FORM_DEFAULT
Definition s_baltst_basicschema.h:3987
@ ATTRIBUTE_ID_PACKAGE
Definition s_baltst_basicschema.h:3986
@ ATTRIBUTE_ID_BDEM
Definition s_baltst_basicschema.h:3985
bsl::vector< BasicSchemaChoice > & choice()
Definition s_baltst_basicschema.h:6734
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_basicschema.h:6774
BasicSchema(const BasicSchema &original, bslma::Allocator *basicAllocator=0)
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
@ NUM_ATTRIBUTES
Definition s_baltst_basicschema.h:3992
~BasicSchema()
Destroy this object.
static const char CLASS_NAME[]
Definition s_baltst_basicschema.h:4004
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_basicschema.h:6667
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_basicschema.h:6741
#define BDLAT_DECL_CHOICE_WITH_ALLOCATOR_BITWISEMOVEABLE_TRAITS(ClassName)
Definition bdlat_typetraits.h:268
#define BDLAT_DECL_SEQUENCE_WITH_ALLOCATOR_BITWISEMOVEABLE_TRAITS(ClassName)
Definition bdlat_typetraits.h:301
#define BSLS_ASSERT(X)
Definition bsls_assert.h:1976
#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
ALLOCATOR const STRING_VIEW_LIKE_TYPE & rhs
Definition bslstl_string.h:3918
ALLOCATOR & lhs
Definition bslstl_string.h:3917
bsl::enable_if<(bsl::is_integral< TYPE >::value||bsl::is_pointer< TYPE >::value||bsl::is_enum< TYPE >::value)&&!bsl::is_same< TYPE, bool >::value >::type hashAppend(HASH_ALGORITHM &hashAlg, TYPE input)
Definition bslh_hash.h:643
Definition baljsn_encoder_testtypes.h:76
Definition s_baltst_address.h:66
bsl::ostream & operator<<(bsl::ostream &stream, const BasicSchemaAnnotationElement &rhs)
bool operator==(const BasicSchemaAnnotationElement &lhs, const BasicSchemaAnnotationElement &rhs)
bool operator!=(const BasicSchemaAnnotationElement &lhs, const BasicSchemaAnnotationElement &rhs)
void hashAppend(HASH_ALGORITHM &hashAlg, const s_baltst::BasicSchemaAnnotationElement &object)
Definition s_baltst_basicschema.h:4335
Definition bdlat_attributeinfo.h:139
int d_id
Definition bdlat_attributeinfo.h:142
Definition bdlat_selectioninfo.h:138
Definition bsls_objectbuffer.h:277