RavEngine
Loading...
Searching...
No Matches
plf::colony< element_type, element_allocator_type, element_skipfield_type > Class Template Reference
Inheritance diagram for plf::colony< element_type, element_allocator_type, element_skipfield_type >:
[legend]
Collaboration diagram for plf::colony< element_type, element_allocator_type, element_skipfield_type >:
[legend]

Classes

class  colony_iterator
 
class  colony_reverse_iterator
 
struct  raw_memory_block_pointers
 

Public Types

typedef element_type value_type
 
typedef element_allocator_type allocator_type
 
typedef element_skipfield_type skipfield_type
 
typedef element_type aligned_element_type
 
typedef element_allocator_type::size_type size_type
 
typedef element_allocator_type::difference_type difference_type
 
typedef element_allocator_type::reference reference
 
typedef element_allocator_type::const_reference const_reference
 
typedef element_allocator_type::pointer pointer
 
typedef element_allocator_type::const_pointer const_pointer
 
typedef colony_iterator< false > iterator
 
typedef colony_iterator< true > const_iterator
 
typedef colony_reverse_iterator< false > reverse_iterator
 
typedef colony_reverse_iterator< true > const_reverse_iterator
 

Public Member Functions

 colony (const plf::limits capacities) PLF_COLONY_NOEXCEPT
 
 colony (const element_allocator_type &alloc)
 
 colony (const plf::limits capacities, const element_allocator_type &alloc)
 
 colony (const colony &source)
 
 colony (const colony &source, const allocator_type &alloc)
 
 colony (const size_type fill_number, const element_type &element, const plf::limits capacities=plf::limits(PLF_COLONY_MIN_BLOCK_CAPACITY, std::numeric_limits< skipfield_type >::max()), const element_allocator_type &alloc=element_allocator_type())
 
template<typename iterator_type >
 colony (const typename plf_enable_if_c<!std::numeric_limits< iterator_type >::is_integer, iterator_type >::type &first, const iterator_type &last, const plf::limits capacities=plf::limits(PLF_COLONY_MIN_BLOCK_CAPACITY, std::numeric_limits< skipfield_type >::max()), const element_allocator_type &alloc=element_allocator_type())
 
PLF_COLONY_FORCE_INLINE iterator begin () PLF_COLONY_NOEXCEPT
 
PLF_COLONY_FORCE_INLINE const_iterator begin () const PLF_COLONY_NOEXCEPT
 
PLF_COLONY_FORCE_INLINE iterator end () PLF_COLONY_NOEXCEPT
 
PLF_COLONY_FORCE_INLINE const_iterator end () const PLF_COLONY_NOEXCEPT
 
PLF_COLONY_FORCE_INLINE const_iterator cbegin () const PLF_COLONY_NOEXCEPT
 
PLF_COLONY_FORCE_INLINE const_iterator cend () const PLF_COLONY_NOEXCEPT
 
reverse_iterator rbegin () const PLF_COLONY_NOEXCEPT
 
reverse_iterator rend () const PLF_COLONY_NOEXCEPT
 
const_reverse_iterator crbegin () const PLF_COLONY_NOEXCEPT
 
const_reverse_iterator crend () const PLF_COLONY_NOEXCEPT
 
iterator insert (const element_type &element)
 
void insert (size_type number_of_elements, const element_type &element)
 
template<class iterator_type >
void insert (typename plf_enable_if_c<!std::numeric_limits< iterator_type >::is_integer, iterator_type >::type first, const iterator_type last)
 
iterator erase (const const_iterator &it)
 
void erase (const const_iterator &iterator1, const const_iterator &iterator2)
 
PLF_COLONY_FORCE_INLINE bool empty () const PLF_COLONY_NOEXCEPT
 
size_type size () const PLF_COLONY_NOEXCEPT
 
size_type max_size () const PLF_COLONY_NOEXCEPT
 
size_type capacity () const PLF_COLONY_NOEXCEPT
 
size_type approximate_memory_use () const PLF_COLONY_NOEXCEPT
 
void set_block_capacity_limits (const plf::limits capacities)
 
void set_minimum_block_capacity (const size_t min_allocation_amount)
 
void set_maximum_block_capacity (const size_t max_allocation_amount)
 
plf::limits get_block_capacity_limits () const PLF_COLONY_NOEXCEPT
 
PLF_COLONY_FORCE_INLINE void clear () PLF_COLONY_NOEXCEPT
 
colony & operator= (const colony &source)
 
bool operator== (const colony &rh) const PLF_COLONY_NOEXCEPT
 
bool operator!= (const colony &rh) const PLF_COLONY_NOEXCEPT
 
void shrink_to_fit ()
 
void reserve (const size_type original_reserve_amount)
 
template<bool is_const>
void advance (colony_iterator< is_const > &it, difference_type distance) const
 
template<bool is_const>
void advance (colony_reverse_iterator< is_const > &reverse_it, difference_type distance) const
 
template<bool is_const>
colony_iterator< is_const > next (const colony_iterator< is_const > &it, const typename colony_iterator< is_const >::difference_type distance=1) const
 
template<bool is_const>
colony_reverse_iterator< is_const > next (const colony_reverse_iterator< is_const > &it, const typename colony_reverse_iterator< is_const >::difference_type distance=1) const
 
template<bool is_const>
colony_iterator< is_const > prev (const colony_iterator< is_const > &it, const typename colony_iterator< is_const >::difference_type distance=1) const
 
template<bool is_const>
colony_reverse_iterator< is_const > prev (const colony_reverse_iterator< is_const > &it, const typename colony_reverse_iterator< is_const >::difference_type distance=1) const
 
template<bool is_const>
colony_iterator< is_const >::difference_type distance (const colony_iterator< is_const > &first, const colony_iterator< is_const > &last) const
 
template<bool is_const>
colony_reverse_iterator< is_const >::difference_type distance (const colony_reverse_iterator< is_const > &iterator1, const colony_reverse_iterator< is_const > &iterator2) const
 
iterator get_iterator_from_pointer (const pointer element_pointer) const PLF_COLONY_NOEXCEPT
 
allocator_type get_allocator () const PLF_COLONY_NOEXCEPT
 
void splice (colony &source) PLF_COLONY_NOEXCEPT_SWAP(allocator_type)
 
raw_memory_block_pointers * data ()
 
template<class comparison_function >
void sort (comparison_function compare)
 
void sort ()
 
void swap (colony &source) PLF_COLONY_NOEXCEPT_SWAP(allocator_type)
 

Friends

class colony_iterator< false >
 
class colony_iterator< true >
 
class colony_reverse_iterator< false >
 
class colony_reverse_iterator< true >
 

The documentation for this class was generated from the following file: