BloombergLP::bdlat_SequenceFunctions::manipulateAttribute

Invoke a manipulator on a sequence attribute identified by id.

Synopsis

Declared in <bdlat_sequencefunctions.h>

template<
    class TYPE,
    class MANIPULATOR>
int
manipulateAttribute(
    TYPE* object,
    MANIPULATOR& manipulator,
    int attributeId);

Description

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.

Return Value

non-zero if the attribute is not found, and the value from manipulator otherwise

Parameters

NameDescription
objectsequence whose attribute is manipulated
manipulatorcallable invoked with the attribute and its info
attributeIdid of the attribute to manipulate