[#BloombergLP-ball-AttributeContainer] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::AttributeContainer :relfileprefix: ../../ :mrdocs: This class defines a protocol for a container of attribute values. == Synopsis Declared in `<ball_attributecontainer.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class AttributeContainer; ---- == Description The attribute container provides a `hasValue()` method to determine whether an attribute value is in the container. == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/ball/AttributeContainer/2destructor.adoc[`~AttributeContainer`] [.small]#[destructor]# [.small]#[virtual]# | Destroy this object. | xref:BloombergLP/ball/AttributeContainer/hasValue.adoc[`hasValue`] [.small]#[virtual]# | Return `true` if a attribute having the specified `value` exists in this object, and `false` otherwise. | xref:BloombergLP/ball/AttributeContainer/print.adoc[`print`] [.small]#[virtual]# | Format this object to the specified output `stream`. | xref:BloombergLP/ball/AttributeContainer/visitAttributes.adoc[`visitAttributes`] [.small]#[virtual]# | Invoke the specified `visitor` function for all attributes in this container. |=== == Derived Classes [cols="1,4"] |=== | Name| Description | xref:BloombergLP/ball/DefaultAttributeContainer.adoc[`DefaultAttributeContainer`] | A `DefaultAttributeContainer` object contains a collection of (unique) attributes values. | xref:BloombergLP/ball/ScopedAttribute_Container.adoc[`ScopedAttribute_Container`] | This component‐private class is a concrete implementation of the `AttributeContainer` protocol for a single attribute. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#