|
| template<class TYPE , class MANIPULATOR > |
| int | manipulateAttribute (TYPE *object, MANIPULATOR &manipulator, const char *attributeName, int attributeNameLength) |
| |
| template<class TYPE , class MANIPULATOR > |
| int | manipulateAttribute (TYPE *object, MANIPULATOR &manipulator, int attributeId) |
| |
| template<class TYPE , class MANIPULATOR > |
| int | manipulateAttributes (TYPE *object, MANIPULATOR &manipulator) |
| |
| template<class TYPE , class ACCESSOR > |
| int | accessAttribute (const TYPE &object, ACCESSOR &accessor, const char *attributeName, int attributeNameLength) |
| |
| template<class TYPE , class ACCESSOR > |
| int | accessAttribute (const TYPE &object, ACCESSOR &accessor, int attributeId) |
| |
| template<class TYPE , class ACCESSOR > |
| int | accessAttributes (const TYPE &object, ACCESSOR &accessor) |
| |
| template<class TYPE > |
| bool | hasAttribute (const TYPE &object, const char *attributeName, int attributeNameLength) |
| |
| template<class TYPE > |
| bool | hasAttribute (const TYPE &object, int attributeId) |
| |
| template<class TYPE , class MANIPULATOR > |
| int | bdlat_sequenceManipulateAttribute (TYPE *object, MANIPULATOR &manipulator, const char *attributeName, int attributeNameLength) |
| |
| template<class TYPE , class MANIPULATOR > |
| int | bdlat_sequenceManipulateAttribute (TYPE *object, MANIPULATOR &manipulator, int attributeId) |
| |
| template<class TYPE , class MANIPULATOR > |
| int | bdlat_sequenceManipulateAttributes (TYPE *object, MANIPULATOR &manipulator) |
| |
| template<class TYPE , class ACCESSOR > |
| int | bdlat_sequenceAccessAttribute (const TYPE &object, ACCESSOR &accessor, const char *attributeName, int attributeNameLength) |
| |
| template<class TYPE , class ACCESSOR > |
| int | bdlat_sequenceAccessAttribute (const TYPE &object, ACCESSOR &accessor, int attributeId) |
| |
| template<class TYPE , class ACCESSOR > |
| int | bdlat_sequenceAccessAttributes (const TYPE &object, ACCESSOR &accessor) |
| |
| template<class TYPE > |
| bool | bdlat_sequenceHasAttribute (const TYPE &object, const char *attributeName, int attributeNameLength) |
| |
| template<class TYPE > |
| bool | bdlat_sequenceHasAttribute (const TYPE &object, int attributeId) |
| |
This namespace provides methods that expose "sequence" behavior for "sequence" types. See the component-level documentation for more information.
This namespace declaration adds the default implementations of the "sequence" customization-point functions to bdlat_SequenceFunctions. These default implementations assume the type of the acted-upon object is a basic-sequence type. For more information about basic-sequence types, see bdlat_typetraits .
template<class TYPE , class ACCESSOR >
| int bdlat_SequenceFunctions::accessAttribute |
( |
const TYPE & |
object, |
|
|
ACCESSOR & |
accessor, |
|
|
const char * |
attributeName, |
|
|
int |
attributeNameLength |
|
) |
| |
Invoke the specified accessor on the (non-modifiable) attribute of the specified object indicated by the specified attributeName and attributeNameLength, supplying accessor with the corresponding attribute information structure. The supplied accessor must be a callable type that can be called as if it had the following signature:
template <class t_INFO>
int accessor(const ATTRIBUTE_TYPE& attribute, const t_INFO& info);
Return non-zero value if the attribute is not found, and the value returned from the invocation of accessor otherwise.
template<class TYPE , class ACCESSOR >
| int bdlat_SequenceFunctions::accessAttribute |
( |
const TYPE & |
object, |
|
|
ACCESSOR & |
accessor, |
|
|
int |
attributeId |
|
) |
| |
Invoke the specified accessor on the attribute of the specified object with the given attributeId, supplying accessor with the corresponding attribute information structure. The supplied accessor must be a callable type that can be called as if it had the following signature:
template <class t_INFO>
int accessor(const ATTRIBUTE_TYPE& attribute, const t_INFO& info);
Return non-zero if the attribute is not found, and the value returned from the invocation of accessor otherwise.
template<class TYPE , class ACCESSOR >
| int bdlat_SequenceFunctions::accessAttributes |
( |
const TYPE & |
object, |
|
|
ACCESSOR & |
accessor |
|
) |
| |
Invoke the specified accessor sequentially on each attribute of the specified object, supplying accessor with the corresponding attribute information structure until such invocation returns a non-zero value. The supplied accessor must be a callable type that can be called as if it had the following signature:
template <class t_INFO>
int accessor(const ATTRIBUTE_TYPE& attribute, const t_INFO& info);
Return the value from the last invocation of accessor (i.e., the invocation that terminated the sequence).
template<class TYPE , class MANIPULATOR >
| int bdlat_SequenceFunctions::manipulateAttribute |
( |
TYPE * |
object, |
|
|
MANIPULATOR & |
manipulator, |
|
|
const char * |
attributeName, |
|
|
int |
attributeNameLength |
|
) |
| |
Invoke the specified manipulator on the address of the (modifiable) attribute indicated by the specified attributeName and attributeNameLength of the specified object, supplying manipulator with the corresponding attribute information structure. The supplied manipulator must be a callable type that can be called as if it had the following signature:
template <class t_INFO>
int manipulator(ATTRIBUTE_TYPE *attribute, const t_INFO& info);
Return non-zero value if the attribute is not found, and the value returned from the invocation of manipulator otherwise.
template<class TYPE , class MANIPULATOR >
| int bdlat_SequenceFunctions::manipulateAttribute |
( |
TYPE * |
object, |
|
|
MANIPULATOR & |
manipulator, |
|
|
int |
attributeId |
|
) |
| |
Invoke the specified manipulator on the address of the (modifiable) attribute indicated by the specified attributeId of the specified object, supplying manipulator with the corresponding attribute information structure. The supplied manipulator must be a callable type that can be called as if it had the following signature:
template <class t_INFO>
int manipulator(ATTRIBUTE_TYPE *attribute, const t_INFO& info);
Return non-zero value if the attribute is not found, and the value returned from the invocation of manipulator otherwise.
template<class TYPE , class MANIPULATOR >
| int bdlat_SequenceFunctions::manipulateAttributes |
( |
TYPE * |
object, |
|
|
MANIPULATOR & |
manipulator |
|
) |
| |
Invoke the specified manipulator sequentially on the address of each (modifiable) attribute of the specified object, supplying manipulator with the corresponding attribute information structure until such invocation returns non-zero value. The supplied manipulator must be a callable type that can be called as if it had the following signature:
template <class t_INFO>
int manipulator(ATTRIBUTE_TYPE *attribute, const t_INFO& info);
Return the value from the last invocation of manipulator (i.e., the invocation that terminated the sequence).