|
|
using | value_type = typename Container::value_type |
| |
|
using | size_type = typename Container::size_type |
| |
|
using | difference_type = typename Container::difference_type |
| |
|
using | reference = typename Container::reference |
| |
|
using | const_reference = typename Container::const_reference |
| |
|
using | pointer = typename Container::pointer |
| |
|
using | const_pointer = typename Container::const_pointer |
| |
|
using | iterator = Iterator |
| |
|
using | const_iterator = ConstIterator |
| |
|
using | reverse_iterator = std::reverse_iterator< iterator > |
| |
|
using | const_reverse_iterator = std::reverse_iterator< const_iterator > |
| |
|
|
| Iterable ()=default |
| | Default constructor.
|
| |
| | Iterable (const Container &data) |
| | Constructor from existing container.
|
| |
| | Iterable (Container &&data) |
| | Move constructor from existing container.
|
| |
|
| Iterable (const Iterable &)=default |
| | Copy constructor.
|
| |
|
| Iterable (Iterable &&)=default |
| | Move constructor.
|
| |
|
virtual | ~Iterable ()=default |
| | Virtual destructor.
|
| |
| Iterable & | operator= (const Iterable &)=default |
| | Copy assignment operator.
|
| |
| Iterable & | operator= (Iterable &&)=default |
| | Move assignment operator.
|
| |
| iterator | begin () noexcept |
| | Gets begin iterator.
|
| |
| iterator | end () noexcept |
| | Gets end iterator.
|
| |
| const_iterator | begin () const noexcept |
| | Gets const begin iterator.
|
| |
| const_iterator | end () const noexcept |
| | Gets const end iterator.
|
| |
| const_iterator | cbegin () const noexcept |
| | Gets const begin iterator.
|
| |
| const_iterator | cend () const noexcept |
| | Gets const end iterator.
|
| |
| reverse_iterator | rbegin () noexcept |
| | Gets reverse begin iterator.
|
| |
| reverse_iterator | rend () noexcept |
| | Gets reverse end iterator.
|
| |
| const_reverse_iterator | rbegin () const noexcept |
| | Gets const reverse begin iterator.
|
| |
| const_reverse_iterator | rend () const noexcept |
| | Gets const reverse end iterator.
|
| |
| const_reverse_iterator | crbegin () const noexcept |
| | Gets const reverse begin iterator.
|
| |
| const_reverse_iterator | crend () const noexcept |
| | Gets const reverse end iterator.
|
| |
| size_type | size () const noexcept |
| | Gets the size of the container.
|
| |
| bool | empty () const noexcept |
| | Checks if the container is empty.
|
| |
| reference | operator[] (size_type i) |
| | Access element at given index.
|
| |
| const_reference | operator[] (size_type i) const |
| | Access element at given index (const version)
|
| |
| void | add (const value_type &value) |
| | Adds an element to the container.
|
| |
| void | add (value_type &&value) |
| | Adds an element to the container (move version)
|
| |
template<typename Container>
class StormByte::Iterable< Container >
A generic iterable container wrapper.
- Template Parameters
-
| Container | The underlying container type |
The Iterable class template provides a generic wrapper around standard container types, enabling iteration capabilities with custom iterator and const iterator classes.