Quick Links:

bal | bbl | bdl | bsl

Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes

balb::Sequence2 Class Reference

#include <balb_testmessages.h>

List of all members.

Public Types

enum  {
  ATTRIBUTE_ID_ELEMENT1 = 0, ATTRIBUTE_ID_ELEMENT2 = 1, ATTRIBUTE_ID_ELEMENT3 = 2, ATTRIBUTE_ID_ELEMENT4 = 3,
  ATTRIBUTE_ID_ELEMENT5 = 4
}
enum  { NUM_ATTRIBUTES = 5 }
enum  {
  ATTRIBUTE_INDEX_ELEMENT1 = 0, ATTRIBUTE_INDEX_ELEMENT2 = 1, ATTRIBUTE_INDEX_ELEMENT3 = 2, ATTRIBUTE_INDEX_ELEMENT4 = 3,
  ATTRIBUTE_INDEX_ELEMENT5 = 4
}

Public Member Functions

 Sequence2 (bslma::Allocator *basicAllocator=0)
 Sequence2 (const Sequence2 &original, bslma::Allocator *basicAllocator=0)
 ~Sequence2 ()
Sequence2operator= (const Sequence2 &rhs)
template<class STREAM >
STREAM & bdexStreamIn (STREAM &stream, int version)
void reset ()
template<class MANIPULATOR >
int manipulateAttributes (MANIPULATOR &manipulator)
template<class MANIPULATOR >
int manipulateAttribute (MANIPULATOR &manipulator, int id)
template<class MANIPULATOR >
int manipulateAttribute (MANIPULATOR &manipulator, const char *name, int nameLength)
CustomStringelement1 ()
unsigned char & element2 ()
bdlt::DatetimeTzelement3 ()
bdlb::NullableValue< Choice1 > & element4 ()
bdlb::NullableValue< double > & element5 ()
bsl::ostream & print (bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
template<class STREAM >
STREAM & bdexStreamOut (STREAM &stream, int version) const
template<class ACCESSOR >
int accessAttributes (ACCESSOR &accessor) const
template<class ACCESSOR >
int accessAttribute (ACCESSOR &accessor, int id) const
template<class ACCESSOR >
int accessAttribute (ACCESSOR &accessor, const char *name, int nameLength) const
const CustomStringelement1 () const
unsigned char element2 () const
const bdlt::DatetimeTzelement3 () const
const bdlb::NullableValue
< Choice1 > & 
element4 () const
const bdlb::NullableValue
< double > & 
element5 () const

Static Public Member Functions

static int maxSupportedBdexVersion ()
static const bdlat_AttributeInfolookupAttributeInfo (int id)
static const bdlat_AttributeInfolookupAttributeInfo (const char *name, int nameLength)

Static Public Attributes

static const char CLASS_NAME []
static const bdlat_AttributeInfo ATTRIBUTE_INFO_ARRAY []

Member Enumeration Documentation

anonymous enum
Enumerator:
ATTRIBUTE_ID_ELEMENT1 
ATTRIBUTE_ID_ELEMENT2 
ATTRIBUTE_ID_ELEMENT3 
ATTRIBUTE_ID_ELEMENT4 
ATTRIBUTE_ID_ELEMENT5 
anonymous enum
Enumerator:
NUM_ATTRIBUTES 
anonymous enum
Enumerator:
ATTRIBUTE_INDEX_ELEMENT1 
ATTRIBUTE_INDEX_ELEMENT2 
ATTRIBUTE_INDEX_ELEMENT3 
ATTRIBUTE_INDEX_ELEMENT4 
ATTRIBUTE_INDEX_ELEMENT5 

Constructor & Destructor Documentation

balb::Sequence2::Sequence2 ( bslma::Allocator basicAllocator = 0  )  [explicit]

Create an object of type Sequence2 having the default value. Use the optionally specified basicAllocator to supply memory. If basicAllocator is 0, the currently installed default allocator is used.

balb::Sequence2::Sequence2 ( const Sequence2 original,
bslma::Allocator basicAllocator = 0 
)

Create an object of type Sequence2 having the value of the specified original object. Use the optionally specified basicAllocator to supply memory. If basicAllocator is 0, the currently installed default allocator is used.

balb::Sequence2::~Sequence2 (  ) 

Destroy this object.


Member Function Documentation

static int balb::Sequence2::maxSupportedBdexVersion (  )  [static]

Return the most current bdex streaming version number supported by this class. See the bslx package-level documentation for more information on bdex streaming of value-semantic types and containers.

static const bdlat_AttributeInfo* balb::Sequence2::lookupAttributeInfo ( int  id  )  [static]

Return attribute information for the attribute indicated by the specified id if the attribute exists, and 0 otherwise.

static const bdlat_AttributeInfo* balb::Sequence2::lookupAttributeInfo ( const char *  name,
int  nameLength 
) [static]

Return attribute information for the attribute indicated by the specified name of the specified nameLength if the attribute exists, and 0 otherwise.

Sequence2& balb::Sequence2::operator= ( const Sequence2 rhs  ) 

Assign to this object the value of the specified rhs object.

template<class STREAM >
STREAM& balb::Sequence2::bdexStreamIn ( STREAM &  stream,
int  version 
)

Assign to this object the value read from the specified input stream using the specified version format and return a reference to the modifiable stream. If stream is initially invalid, this operation has no effect. If stream becomes invalid during this operation, this object is valid, but its value is undefined. If version is not supported, stream is marked invalid and this object is unaltered. Note that no version is read from stream. See the bslx package-level documentation for more information on bdex streaming of value-semantic types and containers.

void balb::Sequence2::reset (  ) 

Reset this object to the default value (i.e., its value upon default construction).

template<class MANIPULATOR >
int balb::Sequence2::manipulateAttributes ( MANIPULATOR &  manipulator  ) 

Invoke the specified manipulator sequentially on the address of each (modifiable) attribute of this object, supplying manipulator with the corresponding attribute information structure until such invocation returns a non-zero value. Return the value from the last invocation of manipulator (i.e., the invocation that terminated the sequence).

template<class MANIPULATOR >
int balb::Sequence2::manipulateAttribute ( MANIPULATOR &  manipulator,
int  id 
)

Invoke the specified manipulator on the address of the (modifiable) attribute indicated by the specified id, supplying manipulator with the corresponding attribute information structure. Return the value returned from the invocation of manipulator if id identifies an attribute of this class, and -1 otherwise.

template<class MANIPULATOR >
int balb::Sequence2::manipulateAttribute ( MANIPULATOR &  manipulator,
const char *  name,
int  nameLength 
)

Invoke the specified manipulator on the address of the (modifiable) attribute indicated by the specified name of the specified nameLength, supplying manipulator with the corresponding attribute information structure. Return the value returned from the invocation of manipulator if name identifies an attribute of this class, and -1 otherwise.

CustomString& balb::Sequence2::element1 (  ) 

Return a reference to the modifiable "Element1" attribute of this object.

unsigned char& balb::Sequence2::element2 (  ) 

Return a reference to the modifiable "Element2" attribute of this object.

bdlt::DatetimeTz& balb::Sequence2::element3 (  ) 

Return a reference to the modifiable "Element3" attribute of this object.

bdlb::NullableValue<Choice1>& balb::Sequence2::element4 (  ) 

Return a reference to the modifiable "Element4" attribute of this object.

bdlb::NullableValue<double>& balb::Sequence2::element5 (  ) 

Return a reference to the modifiable "Element5" attribute of this object.

bsl::ostream& balb::Sequence2::print ( bsl::ostream &  stream,
int  level = 0,
int  spacesPerLevel = 4 
) const

Format this object to the specified output stream at the optionally specified indentation level and return a reference to the modifiable stream. If level is specified, optionally specify spacesPerLevel, the number of spaces per indentation level for this and all of its nested objects. Each line is indented by the absolute value of level * spacesPerLevel. If level is negative, suppress indentation of the first line. If spacesPerLevel is negative, suppress line breaks and format the entire output on one line. If stream is initially invalid, this operation has no effect. Note that a trailing newline is provided in multiline mode only.

template<class STREAM >
STREAM& balb::Sequence2::bdexStreamOut ( STREAM &  stream,
int  version 
) const

Write the value of this object to the specified output stream using the specified version format and return a reference to the modifiable stream. If version is not supported, stream is unmodified. Note that version is not written to stream. See the bslx package-level documentation for more information on bdex streaming of value-semantic types and containers.

template<class ACCESSOR >
int balb::Sequence2::accessAttributes ( ACCESSOR &  accessor  )  const

Invoke the specified accessor sequentially on each (non-modifiable) attribute of this object, supplying accessor with the corresponding attribute information structure until such invocation returns a non-zero value. Return the value from the last invocation of accessor (i.e., the invocation that terminated the sequence).

template<class ACCESSOR >
int balb::Sequence2::accessAttribute ( ACCESSOR &  accessor,
int  id 
) const

Invoke the specified accessor on the (non-modifiable) attribute of this object indicated by the specified id, supplying accessor with the corresponding attribute information structure. Return the value returned from the invocation of accessor if id identifies an attribute of this class, and -1 otherwise.

template<class ACCESSOR >
int balb::Sequence2::accessAttribute ( ACCESSOR &  accessor,
const char *  name,
int  nameLength 
) const

Invoke the specified accessor on the (non-modifiable) attribute of this object indicated by the specified name of the specified nameLength, supplying accessor with the corresponding attribute information structure. Return the value returned from the invocation of accessor if name identifies an attribute of this class, and -1 otherwise.

const CustomString& balb::Sequence2::element1 (  )  const

Return a reference to the non-modifiable "Element1" attribute of this object.

unsigned char balb::Sequence2::element2 (  )  const

Return a reference to the non-modifiable "Element2" attribute of this object.

const bdlt::DatetimeTz& balb::Sequence2::element3 (  )  const

Return a reference to the non-modifiable "Element3" attribute of this object.

const bdlb::NullableValue<Choice1>& balb::Sequence2::element4 (  )  const

Return a reference to the non-modifiable "Element4" attribute of this object.

const bdlb::NullableValue<double>& balb::Sequence2::element5 (  )  const

Return a reference to the non-modifiable "Element5" attribute of this object.


Member Data Documentation

const char balb::Sequence2::CLASS_NAME[] [static]

The documentation for this class was generated from the following file: