Loading...
Searching...
No Matches
proxyVector.hpp
46#define __PXV_STORAGE_CONST_POINTER__ typename ProxyVector<value_t, thread_safe>::storage_const_pointer
106 template<typename other_value_t, typename std::enable_if<std::is_const<value_t>::value && !std::is_const<other_value_t>::value && std::is_same<other_value_t, typename std::remove_cv<value_t>::type>::value, int>::type = 0>
121 std::size_t operator-(const ProxyVectorIterator &other);
123 __PXI_REFERENCE__ operator*() const;
124 __PXI_POINTER__ operator->() const;
126 template<typename other_value_t, typename std::enable_if<std::is_const<value_t>::value && !std::is_const<other_value_t>::value && std::is_same<other_value_t, typename std::remove_cv<value_t>::type>::value, int>::type = 0>
132 bool operator==(const ProxyVectorIterator &other) const
188template<typename value_t, typename pointer_t = value_t *, typename const_pointer_t = const value_t *>
224class ProxyVectorStorage : public ProxyVectorStorageInterface<typename container_t::pointer, typename container_t::const_pointer>
316 typedef ProxyVectorIterator<typename std::add_const<value_no_cv_t>::type, container_type> const_iterator;
370 template<typename U = value_t, typename std::enable_if<!std::is_const<U>::value, int>::type = 0>
390 template<typename U = value_t, typename std::enable_if<!std::is_const<U>::value, int>::type = 0>
401 template<typename U = value_t, typename std::enable_if<!std::is_const<U>::value, int>::type = 0>
405 template<typename U = value_t, typename std::enable_if<!std::is_const<U>::value, int>::type = 0>
409 template<typename U = value_t, typename std::enable_if<!std::is_const<U>::value, int>::type = 0>
413 template<typename U = value_t, typename std::enable_if<!std::is_const<U>::value, int>::type = 0>
417 template<typename U = value_t, typename std::enable_if<!std::is_const<U>::value, int>::type = 0>
421 template<typename U = value_t, typename std::enable_if<!std::is_const<U>::value, int>::type = 0>
Metafunction for generating ProxyVector dummy storages.
Definition proxyVector.hpp:190
std::size_t size() const override
Definition proxyVector.tpp:247
void resize(std::size_t size) override
Definition proxyVector.tpp:258
void swap(ProxyVectorDummyStorage &other) noexcept
Definition proxyVector.tpp:203
ProxyVectorDummyStorage(std::size_t size=0)
Definition proxyVector.tpp:192
__PXI_REFERENCE_TYPE__ reference
Definition proxyVector.hpp:101
bool operator!=(const ProxyVectorIterator &other) const
Definition proxyVector.hpp:140
std::ptrdiff_t difference_type
Definition proxyVector.hpp:91
std::bidirectional_iterator_tag iterator_category
Definition proxyVector.hpp:81
void swap(ProxyVectorIterator &other) noexcept
Interface for ProxyVector storages.
Definition proxyVector.hpp:165
Metafunction for generating ProxyVector storages.
Definition proxyVector.hpp:225
ProxyVectorStorage(std::size_t size=0)
Definition proxyVector.tpp:362
ProxyVectorStorage & operator=(const ProxyVectorStorage &other)
Definition proxyVector.tpp:386
void swap(ProxyVectorStorage &other) noexcept
Definition proxyVector.tpp:443
~ProxyVectorStorage() override
Definition proxyVector.tpp:398
container_t * container(bool forceCreation)
Definition proxyVector.tpp:411
void resize(std::size_t size) override
Definition proxyVector.tpp:514
Metafunction for generating a list of elements that can be either stored in an external vectror or,...
Definition proxyVector.hpp:292
static constexpr __PXV_POINTER__ INTERNAL_STORAGE
Definition proxyVector.hpp:359
ProxyVector & operator=(const ProxyVector &other)
Definition proxyVector.tpp:680
ProxyVector & operator=(ProxyVector &&other)
Definition proxyVector.tpp:705
__PXV_CONST_ITERATOR__ cend()
__PXV_ITERATOR__ begin()
container_type::const_reference const_reference
Definition proxyVector.hpp:354
container_type::pointer storage_pointer
Definition proxyVector.hpp:335
std::size_t size() const
ProxyVector(__PXV_POINTER__ data, std::size_t size, std::size_t capacity)
Definition proxyVector.tpp:619
std::vector< value_no_cv_t > container_type
Definition proxyVector.hpp:301
__PXV_REFERENCE__ back()
__PXV_POINTER__ data() noexcept
std::conditional< std::is_const< value_t >::value, typenamecontainer_type::const_reference, typenamecontainer_type::reference >::type reference
Definition proxyVector.hpp:349
container_type::const_pointer const_pointer
Definition proxyVector.hpp:330
std::conditional< std::is_const< value_t >::value, typenamecontainer_type::const_pointer, typenamecontainer_type::pointer >::type pointer
Definition proxyVector.hpp:325
__PXV_CONST_ITERATOR__ cbegin()
ProxyVector(std::size_t size, std::size_t capacity)
Definition proxyVector.tpp:575
bool operator==(const ProxyVector &other) const
Definition proxyVector.tpp:907
void set(__PXV_POINTER__ data, std::size_t size, std::size_t capacity)
Definition proxyVector.tpp:764
__PXV_ITERATOR__ end()
__PXV_STORAGE_POINTER__ storedData() noexcept
Definition proxyVector.tpp:814
__PXV_REFERENCE__ at(std::size_t n)
__PXV_REFERENCE__ front()
ProxyVectorIterator< value_t, container_type > iterator
Definition proxyVector.hpp:311
container_type * storedDataContainer(bool forceCreation=false)
ProxyVector(__PXV_POINTER__ data, std::size_t size)
Definition proxyVector.tpp:595
void set(__PXV_POINTER__ data, std::size_t size)
Definition proxyVector.tpp:732
ProxyVectorIterator< typename std::add_const< value_no_cv_t >::type, container_type > const_iterator
Definition proxyVector.hpp:316
container_type::const_pointer storage_const_pointer
Definition proxyVector.hpp:340
