Tatooine
|
#include <property.h>
Public Types | |
using | this_type = typed_vector_property< Handle, ValueType > |
using | parent_type = vector_property< Handle > |
using | container_type = std::vector< ValueType > |
using | value_type = typename container_type::value_type |
using | allocator_type = typename container_type::allocator_type |
using | size_type = typename container_type::size_type |
using | difference_type = typename container_type::difference_type |
using | reference = typename container_type::reference |
using | const_reference = typename container_type::const_reference |
using | pointer = typename container_type::pointer |
using | const_pointer = typename container_type::const_pointer |
using | iterator = typename container_type::iterator |
using | const_iterator = typename container_type::const_iterator |
using | reverse_iterator = typename container_type::reverse_iterator |
using | const_reverse_iterator = typename container_type::const_reverse_iterator |
![]() | |
using | this_type = vector_property< Handle > |
Public Member Functions | |
typed_vector_property (const ValueType &value=ValueType{}) | |
typed_vector_property (const typed_vector_property &other) | |
typed_vector_property (typed_vector_property &&other) noexcept | |
auto | operator= (const typed_vector_property &other) -> auto & |
auto | operator= (typed_vector_property &&other) noexcept -> auto & |
auto | size () |
void | reserve (std::size_t n) override |
Reserve memory for n elements. More... | |
void | resize (std::size_t n) override |
Resize storage to hold n elements. More... | |
void | push_back () override |
pushes element at back More... | |
void | push_back (const ValueType &value) |
auto | front () -> auto & |
auto | front () const -> const auto & |
auto | back () -> auto & |
auto | back () const -> const auto & |
auto | erase (iterator pos) |
auto | erase (const_iterator pos) |
auto | erase (iterator first, iterator last) |
auto | erase (const_iterator first, const_iterator last) |
auto | erase (std::size_t i) -> void override |
Resize storage to hold n elements. More... | |
auto | begin () |
auto | begin () const |
auto | end () |
auto | end () const |
template<typename... Ts> | |
void | emplace_back (Ts &&... ts) |
void | clear () override |
Free unused memory. More... | |
auto | data () const |
auto | internal_container () const -> auto const & |
auto | size () const |
auto | at (std::size_t const i) -> auto & |
Access the i'th element. More... | |
auto | at (std::size_t const i) const -> const auto & |
Const access to the i'th element. More... | |
auto | at (Handle handle) -> auto & |
Access the i'th element. More... | |
auto | at (Handle handle) const -> const auto & |
Const access to the i'th element. More... | |
auto | operator[] (Handle handle) -> auto & |
Access the i'th element. More... | |
auto | operator[] (Handle handle) const -> const auto & |
Const access to the i'th element. More... | |
auto | operator[] (std::size_t const i) -> auto & |
Access the i'th element. More... | |
auto | operator[] (std::size_t const i) const -> const auto & |
Const access to the i'th element. More... | |
auto | type () const -> const std::type_info &override |
for identifying type. More... | |
auto | clone () const -> std::unique_ptr< parent_type > override |
auto | clean (std::set< Handle > const &invalid_handles) -> void override |
![]() | |
vector_property ()=default | |
vector_property (const vector_property &other)=default | |
vector_property (vector_property &&other) noexcept=default | |
auto | operator= (const vector_property &) -> vector_property &=default |
auto | operator= (vector_property &&) noexcept -> vector_property &=default |
virtual | ~vector_property ()=default |
Destructor. More... | |
virtual void | reserve (std::size_t n)=0 |
Reserve memory for n elements. More... | |
virtual void | resize (std::size_t n)=0 |
Resize storage to hold n elements. More... | |
virtual void | push_back ()=0 |
pushes element at back More... | |
virtual void | erase (std::size_t)=0 |
Resize storage to hold n elements. More... | |
virtual void | clear ()=0 |
Free unused memory. More... | |
virtual auto | type () const -> const std::type_info &=0 |
for identifying type. More... | |
template<typename ValueType > | |
auto | holds_type () const |
virtual auto | clone () const -> std::unique_ptr< this_type >=0 |
template<typename ValueType > | |
auto | cast_to_typed () -> decltype(auto) |
template<typename ValueType > | |
auto | cast_to_typed () const -> decltype(auto) |
virtual auto | clean (std::set< Handle > const &) -> void=0 |
Private Attributes | |
container_type | m_data |
ValueType | m_value |
using tatooine::typed_vector_property< Handle, ValueType >::allocator_type = typename container_type::allocator_type |
using tatooine::typed_vector_property< Handle, ValueType >::const_iterator = typename container_type::const_iterator |
using tatooine::typed_vector_property< Handle, ValueType >::const_pointer = typename container_type::const_pointer |
using tatooine::typed_vector_property< Handle, ValueType >::const_reference = typename container_type::const_reference |
using tatooine::typed_vector_property< Handle, ValueType >::const_reverse_iterator = typename container_type::const_reverse_iterator |
using tatooine::typed_vector_property< Handle, ValueType >::container_type = std::vector<ValueType> |
using tatooine::typed_vector_property< Handle, ValueType >::difference_type = typename container_type::difference_type |
using tatooine::typed_vector_property< Handle, ValueType >::iterator = typename container_type::iterator |
using tatooine::typed_vector_property< Handle, ValueType >::parent_type = vector_property<Handle> |
using tatooine::typed_vector_property< Handle, ValueType >::pointer = typename container_type::pointer |
using tatooine::typed_vector_property< Handle, ValueType >::reference = typename container_type::reference |
using tatooine::typed_vector_property< Handle, ValueType >::reverse_iterator = typename container_type::reverse_iterator |
using tatooine::typed_vector_property< Handle, ValueType >::size_type = typename container_type::size_type |
using tatooine::typed_vector_property< Handle, ValueType >::this_type = typed_vector_property<Handle, ValueType> |
using tatooine::typed_vector_property< Handle, ValueType >::value_type = typename container_type::value_type |
|
inlineexplicit |
|
inline |
|
inlinenoexcept |
|
inline |
Access the i'th element.
|
inline |
Const access to the i'th element.
|
inline |
Access the i'th element.
|
inline |
Const access to the i'th element.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineoverridevirtual |
Implements tatooine::vector_property< Handle >.
|
inlineoverridevirtual |
Free unused memory.
Implements tatooine::vector_property< Handle >.
|
inlineoverridevirtual |
Implements tatooine::vector_property< Handle >.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineoverridevirtual |
Resize storage to hold n elements.
Implements tatooine::vector_property< Handle >.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inline |
Access the i'th element.
|
inline |
Const access to the i'th element.
|
inline |
Access the i'th element.
|
inline |
Const access to the i'th element.
|
inlineoverridevirtual |
pushes element at back
Implements tatooine::vector_property< Handle >.
|
inline |
|
inlineoverridevirtual |
Reserve memory for n elements.
Implements tatooine::vector_property< Handle >.
|
inlineoverridevirtual |
Resize storage to hold n elements.
Implements tatooine::vector_property< Handle >.
|
inline |
|
inline |
|
inlineoverridevirtual |
for identifying type.
Implements tatooine::vector_property< Handle >.
|
private |
|
private |