8#ifndef INCLUDED_S_BALTST_MYSEQUENCEWITHATTRIBUTES
9#define INCLUDED_S_BALTST_MYSEQUENCEWITHATTRIBUTES
43#include <bslalg_typetraits.h>
59#include <bsl_string.h>
61#include <bsl_iosfwd.h>
62#include <bsl_limits.h>
66namespace bslma {
class Allocator; }
68namespace s_baltst {
class MySequenceWithAttributes; }
137#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
138 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
163#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
164 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
181 template<
class MANIPULATOR>
190 template<
class MANIPULATOR>
199 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;
319template <
class MANIPULATOR>
347template <
class MANIPULATOR>
350 enum { NOT_FOUND = -1 };
370template <
class MANIPULATOR>
372 MANIPULATOR& manipulator,
376 enum { NOT_FOUND = -1 };
380 if (0 == attributeInfo) {
412template <
class ACCESSOR>
440template <
class ACCESSOR>
443 enum { NOT_FOUND = -1 };
463template <
class ACCESSOR>
467 int nameLength)
const
469 enum { NOT_FOUND = -1 };
473 if (0 == attributeInfo) {
524 return !(lhs == rhs);
529 bsl::ostream& stream,
532 return rhs.
print(stream, 0, -1);
Definition bdlb_nullablevalue.h:257
Definition bslma_allocator.h:457
Definition s_baltst_mysequencewithattributes.h:75
@ ATTRIBUTE_INDEX_ELEMENT1
Definition s_baltst_mysequencewithattributes.h:99
@ ATTRIBUTE_INDEX_ELEMENT2
Definition s_baltst_mysequencewithattributes.h:100
@ ATTRIBUTE_INDEX_ATTRIBUTE1
Definition s_baltst_mysequencewithattributes.h:97
@ ATTRIBUTE_INDEX_ATTRIBUTE2
Definition s_baltst_mysequencewithattributes.h:98
bdlb::NullableValue< bsl::string > & element2()
Definition s_baltst_mysequencewithattributes.h:406
int accessAttribute(ACCESSOR &accessor, int id) const
Definition s_baltst_mysequencewithattributes.h:441
bdlb::NullableValue< int > & element1()
Definition s_baltst_mysequencewithattributes.h:400
MySequenceWithAttributes(bslma::Allocator *basicAllocator=0)
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_mysequencewithattributes.h:106
int manipulateAttributes(MANIPULATOR &manipulator)
Definition s_baltst_mysequencewithattributes.h:320
~MySequenceWithAttributes()
Destroy this object.
@ ATTRIBUTE_ID_ATTRIBUTE2
Definition s_baltst_mysequencewithattributes.h:87
@ ATTRIBUTE_ID_ATTRIBUTE1
Definition s_baltst_mysequencewithattributes.h:86
@ ATTRIBUTE_ID_ELEMENT1
Definition s_baltst_mysequencewithattributes.h:88
@ ATTRIBUTE_ID_ELEMENT2
Definition s_baltst_mysequencewithattributes.h:89
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
@ NUM_ATTRIBUTES
Definition s_baltst_mysequencewithattributes.h:93
bdlb::NullableValue< bsl::string > & attribute2()
Definition s_baltst_mysequencewithattributes.h:394
MySequenceWithAttributes(const MySequenceWithAttributes &original, bslma::Allocator *basicAllocator=0)
MySequenceWithAttributes & operator=(const MySequenceWithAttributes &rhs)
Assign to this object the value of the specified rhs object.
static const char CLASS_NAME[]
Definition s_baltst_mysequencewithattributes.h:104
int accessAttributes(ACCESSOR &accessor) const
Definition s_baltst_mysequencewithattributes.h:413
int & attribute1()
Definition s_baltst_mysequencewithattributes.h:388
int manipulateAttribute(MANIPULATOR &manipulator, int id)
Definition s_baltst_mysequencewithattributes.h:348
#define BDLAT_DECL_SEQUENCE_WITH_ALLOCATOR_BITWISEMOVEABLE_TRAITS(ClassName)
Definition bdlat_typetraits.h:282
#define BSLS_IDENT_RCSID(tag, str)
Definition bsls_ident.h:260
#define BSLS_IDENT_PRAGMA_ONCE
Definition bsls_ident.h:310
Definition balxml_encoderoptions.h:68
Definition s_baltst_address.h:66
bool operator!=(const Address &lhs, const Address &rhs)
bool operator==(const Address &lhs, const Address &rhs)
bsl::ostream & operator<<(bsl::ostream &stream, const Address &rhs)
Definition bdlat_attributeinfo.h:137
int d_id
Definition bdlat_attributeinfo.h:140