7 #ifndef Fw_RedBlackTreeSet_HPP 8 #define Fw_RedBlackTreeSet_HPP 14 template <
typename T, FwSizeType C>
20 static_assert(C > 0,
"capacity must be greater than zero");
26 template <
typename TT, FwSizeType CC>
70 this->m_extSet.copyDataFrom(
set);
79 void clear()
override { this->m_extSet.clear(); }
89 return this->m_extSet.find(element);
104 return this->m_extSet.insert(element);
111 return this->m_extSet.remove(element);
126 ExternalRedBlackTreeSet<T> m_extSet = {};
friend class RedBlackTreeSetTester
~RedBlackTreeSet() override=default
Destructor.
PlatformSizeType FwSizeType
Index[C] FreeNodes
The type of the free node array.
RedBlackTreeSet< T, C > & operator=(const RedBlackTreeSet< T, C > &set)
operator=
ConstIterator begin() const override
typename RedBlackTreeSetOrMapImpl< T, Nil >::Index Index
The type of a tree node index.
void clear() override
Clear the set.
FwSizeType getSize() const override
FwSizeType getCapacity() const override
Success find(const T &element) const override
RedBlackTreeSet()
Zero-argument constructor.
Success insert(const T &element) override
ConstIterator end() const override
typename RedBlackTreeSetOrMapImpl< T, Nil >::Node Node
The type of a tree node.
Node[C] Nodes
The type of the tree node array.
RedBlackTreeSet(const RedBlackTreeSet< T, C > &set)
Copy constructor.