8#ifndef INCLUDED_S_BALTST_MYINTENUMERATION
9#define INCLUDED_S_BALTST_MYINTENUMERATION
43#include <bslalg_typetraits.h>
57#include <bsl_iosfwd.h>
58#include <bsl_limits.h>
62namespace s_baltst {
class MyIntEnumeration; }
63namespace s_baltst {
class MyIntEnumerationRecord; }
100#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
101 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
120#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
121 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
149 bsl::ostream&
print(bsl::ostream& stream,
151 int spacesPerLevel = 4)
const;
154 const int&
toInt()
const;
244#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
245 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
261#if defined(BSLS_COMPILERFEATURES_SUPPORT_RVALUE_REFERENCES) \
262 && defined(BSLS_COMPILERFEATURES_SUPPORT_NOEXCEPT)
279 template <
typename t_MANIPULATOR>
288 template <
typename t_MANIPULATOR>
297 template <
typename t_MANIPULATOR>
319 bsl::ostream&
print(bsl::ostream& stream,
321 int spacesPerLevel = 4)
const;
329 template <
typename t_ACCESSOR>
337 template <
typename t_ACCESSOR>
346 template <
typename t_ACCESSOR>
349 int nameLength)
const;
401: d_value(original.d_value)
421 d_value = rhs.d_value;
446 int spacesPerLevel)
const
465template <
typename t_MANIPULATOR>
478template <
typename t_MANIPULATOR>
481 enum { NOT_FOUND = -1 };
492template <
typename t_MANIPULATOR>
494 t_MANIPULATOR& manipulator,
498 enum { NOT_FOUND = -1 };
502 if (0 == attributeInfo) {
516template <
typename t_ACCESSOR>
529template <
typename t_ACCESSOR>
532 enum { NOT_FOUND = -1 };
543template <
typename t_ACCESSOR>
545 t_ACCESSOR& accessor,
547 int nameLength)
const
549 enum { NOT_FOUND = -1 };
553 if (0 == attributeInfo) {
575 return lhs.d_value == rhs.d_value;
583 return lhs.d_value != rhs.d_value;
588 bsl::ostream& stream,
591 return rhs.
print(stream, 0, -1);
607 return !(lhs == rhs);
612 bsl::ostream& stream,
615 return rhs.
print(stream, 0, -1);
Definition s_baltst_myintenumeration.h:196
@ ATTRIBUTE_ID_VALUE
Definition s_baltst_myintenumeration.h:204
static const bdlat_AttributeInfo * lookupAttributeInfo(int id)
static const char CLASS_NAME[]
Definition s_baltst_myintenumeration.h:216
@ ATTRIBUTE_INDEX_VALUE
Definition s_baltst_myintenumeration.h:212
int manipulateAttributes(t_MANIPULATOR &manipulator)
Definition s_baltst_myintenumeration.h:466
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY[]
Definition s_baltst_myintenumeration.h:218
MyIntEnumeration & value()
Definition s_baltst_myintenumeration.h:510
int manipulateAttribute(t_MANIPULATOR &manipulator, int id)
Definition s_baltst_myintenumeration.h:479
MyIntEnumerationRecord & operator=(const MyIntEnumerationRecord &rhs)
Assign to this object the value of the specified rhs object.
~MyIntEnumerationRecord()
Destroy this object.
@ NUM_ATTRIBUTES
Definition s_baltst_myintenumeration.h:208
int accessAttributes(t_ACCESSOR &accessor) const
Definition s_baltst_myintenumeration.h:517
MyIntEnumerationRecord(const MyIntEnumerationRecord &original)
int accessAttribute(t_ACCESSOR &accessor, int id) const
Definition s_baltst_myintenumeration.h:530
static const bdlat_AttributeInfo * lookupAttributeInfo(const char *name, int nameLength)
Definition s_baltst_myintenumeration.h:70
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
Definition s_baltst_myintenumeration.h:444
friend bool operator==(const MyIntEnumeration &lhs, const MyIntEnumeration &rhs)
static const char CLASS_NAME[]
Definition s_baltst_myintenumeration.h:84
const int & toInt() const
Convert this value to int.
Definition s_baltst_myintenumeration.h:452
static int checkRestrictions(const int &value)
friend bool operator!=(const MyIntEnumeration &lhs, const MyIntEnumeration &rhs)
~MyIntEnumeration()
Destroy this object.
Definition s_baltst_myintenumeration.h:413
int fromInt(const int &value)
Definition s_baltst_myintenumeration.h:432
MyIntEnumeration & operator=(const MyIntEnumeration &rhs)
Assign to this object the value of the specified rhs object.
Definition s_baltst_myintenumeration.h:419
void reset()
Definition s_baltst_myintenumeration.h:426
int BaseType
Definition s_baltst_myintenumeration.h:81
MyIntEnumeration()
Definition s_baltst_myintenumeration.h:394
static const int VALUE1
Definition s_baltst_myintenumeration.h:86
static const int VALUE2
Definition s_baltst_myintenumeration.h:88
#define BDLAT_DECL_CUSTOMIZEDTYPE_WITH_BITWISEMOVEABLE_TRAITS(ClassName)
Definition bdlat_typetraits.h:325
#define BDLAT_DECL_SEQUENCE_WITH_BITWISEMOVEABLE_TRAITS(ClassName)
Definition bdlat_typetraits.h:275
#define BSLS_ASSERT(X)
Definition bsls_assert.h:1804
#define BSLS_IDENT_RCSID(tag, str)
Definition bsls_ident.h:260
#define BSLS_IDENT_PRAGMA_ONCE
Definition bsls_ident.h:310
void reset(TYPE *object)
Reset the value of the specified object to its default value.
bsl::ostream & print(bsl::ostream &stream, const TYPE &object, int level=0, int spacesPerLevel=4)
Definition bdlb_printmethods.h:719
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