8#ifndef INCLUDED_BALL_ATTRIBUTECONTAINERLIST
9#define INCLUDED_BALL_ATTRIBUTECONTAINERLIST
139#include <balscm_version.h>
147#include <bsl_iosfwd.h>
153class AttributeContainer;
154struct AttributeContainerList_Node;
368 bsl::ostream&
print(bsl::ostream& stream,
370 int spacesPerLevel = 4)
const;
447: d_node_p(original.d_node_p)
457 d_node_p = rhs.d_node_p;
465 Node *current = d_node_p;
489 return 0 != d_node_p;
511, d_allocator(allocator)
553 const AttributeContainerListIterator& rhs)
555 return lhs.d_node_p == rhs.d_node_p;
560 const AttributeContainerListIterator& rhs)
562 return !(lhs == rhs);
567 const AttributeContainerList& rhs)
569 return !(lhs == rhs);
574 const AttributeContainerList& rhs)
576 return rhs.print(output, 0, -1);
Definition ball_attributecontainerlist.h:168
AttributeContainerListIterator()
Create an uninitialized iterator.
Definition ball_attributecontainerlist.h:432
const AttributeContainer * operator*() const
Definition ball_attributecontainerlist.h:481
friend bool operator==(const AttributeContainerListIterator &, const AttributeContainerListIterator &)
~AttributeContainerListIterator()=default
Destroy this object.
bool valid() const
Definition ball_attributecontainerlist.h:487
AttributeContainerListIterator & operator=(const AttributeContainerListIterator &rhs)
Definition ball_attributecontainerlist.h:454
AttributeContainerListIterator operator++()
Definition ball_attributecontainerlist.h:472
Definition ball_attributecontainerlist.h:267
bsl::allocator< char > allocator_type
Definition ball_attributecontainerlist.h:270
BSLMF_NESTED_TRAIT_DECLARATION(AttributeContainerList, bslma::UsesBslmaAllocator)
iterator end() const
Definition ball_attributecontainerlist.h:530
void removeAllAndRelease()
iterator pushFront(const AttributeContainer *container)
AttributeContainerList()
Definition ball_attributecontainerlist.h:498
int numContainers() const
Definition ball_attributecontainerlist.h:536
iterator begin() const
Definition ball_attributecontainerlist.h:524
AttributeContainerListIterator iterator
An iterator over this list.
Definition ball_attributecontainerlist.h:290
allocator_type get_allocator() const
Definition ball_attributecontainerlist.h:543
bool hasValue(const Attribute &value) const
AttributeContainerList & operator=(const AttributeContainerList &rhs)
AttributeContainerList(const AttributeContainerList &original, const allocator_type &allocator=allocator_type())
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
void remove(const iterator &element)
~AttributeContainerList()
Destroy this object.
Definition ball_attributecontainerlist.h:516
Definition ball_attributecontainer.h:426
Definition ball_attribute.h:198
Definition bslma_bslallocator.h:580
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition ball_administration.h:214
bsl::ostream & operator<<(bsl::ostream &output, const Attribute &attribute)
bool operator!=(const Attribute &lhs, const Attribute &rhs)
bool operator==(const Attribute &lhs, const Attribute &rhs)
Definition ball_attributecontainerlist.h:410
AttributeContainerList_Node ** d_prevNextAddr_p
Definition ball_attributecontainerlist.h:417
const AttributeContainer * d_value_p
Definition ball_attributecontainerlist.h:412
AttributeContainerList_Node * d_next_p
Definition ball_attributecontainerlist.h:415
Definition bslma_usesbslmaallocator.h:343