[#BloombergLP-bdlar-SequenceRef-manipulateAttribute-02] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlar.adoc[bdlar]::xref:BloombergLP/bdlar/SequenceRef.adoc[SequenceRef]::manipulateAttribute :relfileprefix: ../../../ :mrdocs: Invoke the specified `manipulator` on the named attribute. == Synopsis Declared in `<bdlar_sequenceref.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_MANIPULATOR> int manipulateAttribute( t_MANIPULATOR& manipulator, char const* attributeName, int attributeNameLength) const; ---- == Description Invoke the specified `manipulator` on the (modifiable) attribute indicated by the specified `attributeName` and `attributeNameLength`, 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 *refOrValue, 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 not found, otherwise value from `manipulator` == Parameters [cols="1,4"] |=== | Name| Description | *manipulator* | callable invoked on the attribute | *attributeName* | name of the attribute | *attributeNameLength* | length of `attributeName` |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#