plugify 1.2.8
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | List of all members
plg::vector< T, Allocator > Class Template Reference

Public Types

using value_type = T
 
using allocator_type = Allocator
 
using alloc_traits = std::allocator_traits< allocator_type >
 
using reference = value_type &
 
using const_reference = const value_type &
 
using size_type = typename alloc_traits::size_type
 
using difference_type = typename alloc_traits::difference_type
 
using pointer = typename alloc_traits::pointer
 
using const_pointer = typename alloc_traits::const_pointer
 
using iterator = pointer
 
using const_iterator = const_pointer
 
using reverse_iterator = std::reverse_iterator< iterator >
 
using const_reverse_iterator = std::reverse_iterator< const_iterator >
 

Public Member Functions

constexpr vector (const allocator_type &a) noexcept
 
constexpr vector (size_type n)
 
constexpr vector (size_type n, const allocator_type &a)
 
constexpr vector (size_type n, const value_type &x)
 
constexpr vector (size_type n, const value_type &x, const allocator_type &a)
 
template<std::input_iterator InputIterator>
constexpr vector (InputIterator first, InputIterator last)
 
template<std::input_iterator InputIterator>
constexpr vector (InputIterator first, InputIterator last, const allocator_type &a)
 
template<std::forward_iterator ForwardIterator>
constexpr vector (ForwardIterator first, ForwardIterator last)
 
template<std::forward_iterator ForwardIterator>
constexpr vector (ForwardIterator first, ForwardIterator last, const allocator_type &a)
 
constexpr vector (const vector &x)
 
constexpr vector (const vector &x, const std::type_identity_t< allocator_type > &a)
 
constexpr vectoroperator= (const vector &x)
 
constexpr vector (std::initializer_list< value_type > il)
 
constexpr vector (std::initializer_list< value_type > il, const allocator_type &a)
 
constexpr vectoroperator= (std::initializer_list< value_type > il)
 
constexpr vector (vector &&x) noexcept
 
constexpr vector (vector &&x, const std::type_identity_t< allocator_type > &a)
 
constexpr vectoroperator= (vector &&x) noexcept(std::allocator_traits< Allocator >::propagate_on_container_move_assignment::value||std::allocator_traits< Allocator >::is_always_equal::value)
 
template<std::input_iterator InputIterator>
constexpr void assign (InputIterator first, InputIterator last)
 
template<std::forward_iterator ForwardIterator>
constexpr void assign (ForwardIterator first, ForwardIterator last)
 
constexpr void assign (size_type n, const_reference u)
 
constexpr void assign (std::initializer_list< value_type > il)
 
constexpr allocator_type get_allocator () const noexcept
 
constexpr iterator begin () noexcept
 
constexpr const_iterator begin () const noexcept
 
constexpr iterator end () noexcept
 
constexpr const_iterator end () const noexcept
 
constexpr reverse_iterator rbegin () noexcept
 
constexpr const_reverse_iterator rbegin () const noexcept
 
constexpr reverse_iterator rend () noexcept
 
constexpr const_reverse_iterator rend () const noexcept
 
constexpr const_iterator cbegin () const noexcept
 
constexpr const_iterator cend () const noexcept
 
constexpr const_reverse_iterator crbegin () const noexcept
 
constexpr const_reverse_iterator crend () const noexcept
 
constexpr size_type size () const noexcept
 
constexpr size_type capacity () const noexcept
 
constexpr bool empty () const noexcept
 
constexpr size_type max_size () const noexcept
 
constexpr void reserve (size_type n)
 
constexpr void shrink_to_fit () noexcept
 
constexpr reference operator[] (size_type n) noexcept
 
constexpr const_reference operator[] (size_type n) const noexcept
 
constexpr reference at (size_type n)
 
constexpr const_reference at (size_type n) const
 
constexpr reference front () noexcept
 
constexpr const_reference front () const noexcept
 
constexpr reference back () noexcept
 
constexpr const_reference back () const noexcept
 
constexpr value_type * data () noexcept
 
constexpr const value_type * data () const noexcept
 
constexpr void push_back (const_reference x)
 
constexpr void push_back (value_type &&x)
 
template<class... Args>
constexpr reference emplace_back (Args &&... args)
 
template<class... Args>
constexpr void emplace_back_assume_capacity (Args &&... args)
 
constexpr void pop_back ()
 
constexpr iterator insert (const_iterator position, const_reference x)
 
constexpr iterator insert (const_iterator position, value_type &&x)
 
template<class... Args>
constexpr iterator emplace (const_iterator position, Args &&... args)
 
constexpr iterator insert (const_iterator position, size_type n, const_reference x)
 
template<std::input_iterator InputIterator>
constexpr iterator insert (const_iterator position, InputIterator first, InputIterator last)
 
template<std::forward_iterator ForwardIterator>
constexpr iterator insert (const_iterator position, ForwardIterator first, ForwardIterator last)
 
constexpr iterator insert (const_iterator position, std::initializer_list< value_type > il)
 
constexpr iterator erase (const_iterator position)
 
constexpr iterator erase (const_iterator first, const_iterator last)
 
constexpr void clear () noexcept
 
constexpr void resize (size_type sz)
 
constexpr void resize (size_type sz, const_reference x)
 
constexpr void swap (vector &) noexcept
 
constexpr bool invariants () const
 

Detailed Description

template<class T, class Allocator = allocator<T>>
class plg::vector< T, Allocator >

Definition at line 64 of file vector.hpp.

Member Typedef Documentation

◆ alloc_traits

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::alloc_traits = std::allocator_traits<allocator_type>

Definition at line 73 of file vector.hpp.

◆ allocator_type

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::allocator_type = Allocator

Definition at line 72 of file vector.hpp.

◆ const_iterator

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::const_iterator = const_pointer

Definition at line 81 of file vector.hpp.

◆ const_pointer

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::const_pointer = typename alloc_traits::const_pointer

Definition at line 79 of file vector.hpp.

◆ const_reference

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::const_reference = const value_type&

Definition at line 75 of file vector.hpp.

◆ const_reverse_iterator

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::const_reverse_iterator = std::reverse_iterator<const_iterator>

Definition at line 83 of file vector.hpp.

◆ difference_type

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::difference_type = typename alloc_traits::difference_type

Definition at line 77 of file vector.hpp.

◆ iterator

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::iterator = pointer

Definition at line 80 of file vector.hpp.

◆ pointer

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::pointer = typename alloc_traits::pointer

Definition at line 78 of file vector.hpp.

◆ reference

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::reference = value_type&

Definition at line 74 of file vector.hpp.

◆ reverse_iterator

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::reverse_iterator = std::reverse_iterator<iterator>

Definition at line 82 of file vector.hpp.

◆ size_type

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::size_type = typename alloc_traits::size_type

Definition at line 76 of file vector.hpp.

◆ value_type

template<class T , class Allocator = allocator<T>>
using plg::vector< T, Allocator >::value_type = T

Definition at line 71 of file vector.hpp.

Constructor & Destructor Documentation

◆ vector() [1/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( const allocator_type &  a)
inlineexplicitconstexprnoexcept

Definition at line 96 of file vector.hpp.

◆ vector() [2/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( size_type  n)
inlineexplicitconstexpr

Definition at line 100 of file vector.hpp.

◆ vector() [3/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( size_type  n,
const allocator_type &  a 
)
inlineexplicitconstexpr

Definition at line 110 of file vector.hpp.

◆ vector() [4/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( size_type  n,
const value_type &  x 
)
inlineconstexpr

Definition at line 120 of file vector.hpp.

◆ vector() [5/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( size_type  n,
const value_type &  x,
const allocator_type &  a 
)
inlineconstexpr

Definition at line 130 of file vector.hpp.

◆ vector() [6/15]

template<class T , class Allocator = allocator<T>>
template<std::input_iterator InputIterator>
constexpr plg::vector< T, Allocator >::vector ( InputIterator  first,
InputIterator  last 
)
inlineconstexpr

Definition at line 142 of file vector.hpp.

◆ vector() [7/15]

template<class T , class Allocator = allocator<T>>
template<std::input_iterator InputIterator>
constexpr plg::vector< T, Allocator >::vector ( InputIterator  first,
InputIterator  last,
const allocator_type &  a 
)
inlineconstexpr

Definition at line 148 of file vector.hpp.

◆ vector() [8/15]

template<class T , class Allocator = allocator<T>>
template<std::forward_iterator ForwardIterator>
constexpr plg::vector< T, Allocator >::vector ( ForwardIterator  first,
ForwardIterator  last 
)
inlineconstexpr

Definition at line 155 of file vector.hpp.

◆ vector() [9/15]

template<class T , class Allocator = allocator<T>>
template<std::forward_iterator ForwardIterator>
constexpr plg::vector< T, Allocator >::vector ( ForwardIterator  first,
ForwardIterator  last,
const allocator_type &  a 
)
inlineconstexpr

Definition at line 162 of file vector.hpp.

◆ ~vector()

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::~vector ( )
inlineconstexpr

Definition at line 205 of file vector.hpp.

◆ vector() [10/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( const vector< T, Allocator > &  x)
inlineconstexpr

Definition at line 209 of file vector.hpp.

◆ vector() [11/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( const vector< T, Allocator > &  x,
const std::type_identity_t< allocator_type > &  a 
)
inlineconstexpr

Definition at line 215 of file vector.hpp.

◆ vector() [12/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( std::initializer_list< value_type >  il)
inlineconstexpr

Definition at line 222 of file vector.hpp.

◆ vector() [13/15]

template<class T , class Allocator = allocator<T>>
constexpr plg::vector< T, Allocator >::vector ( std::initializer_list< value_type >  il,
const allocator_type &  a 
)
inlineconstexpr

Definition at line 227 of file vector.hpp.

◆ vector() [14/15]

template<class T , class Allocator >
constexpr plg::vector< T, Allocator >::vector ( vector< T, Allocator > &&  x)
inlineconstexprnoexcept

Definition at line 1020 of file vector.hpp.

◆ vector() [15/15]

template<class T , class Allocator >
constexpr plg::vector< T, Allocator >::vector ( vector< T, Allocator > &&  x,
const std::type_identity_t< allocator_type > &  a 
)
inlineconstexpr

Definition at line 1030 of file vector.hpp.

Member Function Documentation

◆ assign() [1/4]

template<class T , class Allocator = allocator<T>>
template<std::forward_iterator ForwardIterator>
constexpr void plg::vector< T, Allocator >::assign ( ForwardIterator  first,
ForwardIterator  last 
)
inlineconstexpr

Definition at line 262 of file vector.hpp.

◆ assign() [2/4]

template<class T , class Allocator = allocator<T>>
template<std::input_iterator InputIterator>
constexpr void plg::vector< T, Allocator >::assign ( InputIterator  first,
InputIterator  last 
)
inlineconstexpr

Definition at line 256 of file vector.hpp.

◆ assign() [3/4]

template<class T , class Allocator >
constexpr void plg::vector< T, Allocator >::assign ( size_type  n,
const_reference  u 
)
constexpr

Definition at line 1124 of file vector.hpp.

◆ assign() [4/4]

template<class T , class Allocator = allocator<T>>
constexpr void plg::vector< T, Allocator >::assign ( std::initializer_list< value_type >  il)
inlineconstexpr

Definition at line 283 of file vector.hpp.

◆ at() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr reference plg::vector< T, Allocator >::at ( size_type  n)
inlineconstexpr

Definition at line 396 of file vector.hpp.

◆ at() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr const_reference plg::vector< T, Allocator >::at ( size_type  n) const
inlineconstexpr

Definition at line 404 of file vector.hpp.

◆ back() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr const_reference plg::vector< T, Allocator >::back ( ) const
inlineconstexprnoexcept

Definition at line 428 of file vector.hpp.

◆ back() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr reference plg::vector< T, Allocator >::back ( )
inlineconstexprnoexcept

Definition at line 422 of file vector.hpp.

◆ begin() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr const_iterator plg::vector< T, Allocator >::begin ( ) const
inlineconstexprnoexcept

Definition at line 300 of file vector.hpp.

◆ begin() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr iterator plg::vector< T, Allocator >::begin ( )
inlineconstexprnoexcept

Definition at line 295 of file vector.hpp.

◆ capacity()

template<class T , class Allocator = allocator<T>>
constexpr size_type plg::vector< T, Allocator >::capacity ( ) const
inlineconstexprnoexcept

Definition at line 361 of file vector.hpp.

◆ cbegin()

template<class T , class Allocator = allocator<T>>
constexpr const_iterator plg::vector< T, Allocator >::cbegin ( ) const
inlineconstexprnoexcept

Definition at line 334 of file vector.hpp.

◆ cend()

template<class T , class Allocator = allocator<T>>
constexpr const_iterator plg::vector< T, Allocator >::cend ( ) const
inlineconstexprnoexcept

Definition at line 339 of file vector.hpp.

◆ clear()

template<class T , class Allocator = allocator<T>>
constexpr void plg::vector< T, Allocator >::clear ( )
inlineconstexprnoexcept

Definition at line 533 of file vector.hpp.

◆ crbegin()

template<class T , class Allocator = allocator<T>>
constexpr const_reverse_iterator plg::vector< T, Allocator >::crbegin ( ) const
inlineconstexprnoexcept

Definition at line 344 of file vector.hpp.

◆ crend()

template<class T , class Allocator = allocator<T>>
constexpr const_reverse_iterator plg::vector< T, Allocator >::crend ( ) const
inlineconstexprnoexcept

Definition at line 349 of file vector.hpp.

◆ data() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr const value_type * plg::vector< T, Allocator >::data ( ) const
inlineconstexprnoexcept

Definition at line 442 of file vector.hpp.

◆ data() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr value_type * plg::vector< T, Allocator >::data ( )
inlineconstexprnoexcept

Definition at line 437 of file vector.hpp.

◆ emplace()

template<class T , class Allocator >
template<class... Args>
constexpr vector< T, Allocator >::iterator plg::vector< T, Allocator >::emplace ( const_iterator  position,
Args &&...  args 
)
constexpr

Definition at line 1324 of file vector.hpp.

◆ emplace_back()

template<class T , class Allocator >
template<class... Args>
constexpr vector< T, Allocator >::reference plg::vector< T, Allocator >::emplace_back ( Args &&...  args)
inlineconstexpr

Definition at line 1209 of file vector.hpp.

◆ emplace_back_assume_capacity()

template<class T , class Allocator = allocator<T>>
template<class... Args>
constexpr void plg::vector< T, Allocator >::emplace_back_assume_capacity ( Args &&...  args)
inlineconstexpr

Definition at line 464 of file vector.hpp.

◆ empty()

template<class T , class Allocator = allocator<T>>
constexpr bool plg::vector< T, Allocator >::empty ( ) const
inlineconstexprnoexcept

Definition at line 366 of file vector.hpp.

◆ end() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr const_iterator plg::vector< T, Allocator >::end ( ) const
inlineconstexprnoexcept

Definition at line 309 of file vector.hpp.

◆ end() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr iterator plg::vector< T, Allocator >::end ( )
inlineconstexprnoexcept

Definition at line 304 of file vector.hpp.

◆ erase() [1/2]

template<class T , class Allocator >
constexpr vector< T, Allocator >::iterator plg::vector< T, Allocator >::erase ( const_iterator  first,
const_iterator  last 
)
constexpr

Definition at line 1240 of file vector.hpp.

◆ erase() [2/2]

template<class T , class Allocator >
constexpr vector< T, Allocator >::iterator plg::vector< T, Allocator >::erase ( const_iterator  position)
inlineconstexpr

Definition at line 1227 of file vector.hpp.

◆ front() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr const_reference plg::vector< T, Allocator >::front ( ) const
inlineconstexprnoexcept

Definition at line 417 of file vector.hpp.

◆ front() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr reference plg::vector< T, Allocator >::front ( )
inlineconstexprnoexcept

Definition at line 411 of file vector.hpp.

◆ get_allocator()

template<class T , class Allocator = allocator<T>>
constexpr allocator_type plg::vector< T, Allocator >::get_allocator ( ) const
inlineconstexprnoexcept

Definition at line 288 of file vector.hpp.

◆ insert() [1/6]

template<class T , class Allocator >
constexpr vector< T, Allocator >::iterator plg::vector< T, Allocator >::insert ( const_iterator  position,
const_reference  x 
)
constexpr

Definition at line 1269 of file vector.hpp.

◆ insert() [2/6]

template<class T , class Allocator = allocator<T>>
template<std::forward_iterator ForwardIterator>
constexpr iterator plg::vector< T, Allocator >::insert ( const_iterator  position,
ForwardIterator  first,
ForwardIterator  last 
)
inlineconstexpr

Definition at line 506 of file vector.hpp.

◆ insert() [3/6]

template<class T , class Allocator = allocator<T>>
template<std::input_iterator InputIterator>
constexpr iterator plg::vector< T, Allocator >::insert ( const_iterator  position,
InputIterator  first,
InputIterator  last 
)
inlineconstexpr

Definition at line 500 of file vector.hpp.

◆ insert() [4/6]

template<class T , class Allocator >
constexpr vector< T, Allocator >::iterator plg::vector< T, Allocator >::insert ( const_iterator  position,
size_type  n,
const_reference  x 
)
constexpr

Definition at line 1348 of file vector.hpp.

◆ insert() [5/6]

template<class T , class Allocator = allocator<T>>
constexpr iterator plg::vector< T, Allocator >::insert ( const_iterator  position,
std::initializer_list< value_type >  il 
)
inlineconstexpr

Definition at line 525 of file vector.hpp.

◆ insert() [6/6]

template<class T , class Allocator >
constexpr vector< T, Allocator >::iterator plg::vector< T, Allocator >::insert ( const_iterator  position,
value_type &&  x 
)
constexpr

Definition at line 1300 of file vector.hpp.

◆ invariants()

template<class T , class Allocator >
constexpr bool plg::vector< T, Allocator >::invariants ( ) const
constexpr

Definition at line 1518 of file vector.hpp.

◆ max_size()

template<class T , class Allocator = allocator<T>>
constexpr size_type plg::vector< T, Allocator >::max_size ( ) const
inlineconstexprnoexcept

Definition at line 371 of file vector.hpp.

◆ operator=() [1/3]

template<class T , class Allocator >
constexpr vector< T, Allocator > & plg::vector< T, Allocator >::operator= ( const vector< T, Allocator > &  x)
inlineconstexpr

Definition at line 1071 of file vector.hpp.

◆ operator=() [2/3]

template<class T , class Allocator = allocator<T>>
constexpr vector & plg::vector< T, Allocator >::operator= ( std::initializer_list< value_type >  il)
inlineconstexpr

Definition at line 233 of file vector.hpp.

◆ operator=() [3/3]

template<class T , class Allocator = allocator<T>>
constexpr vector & plg::vector< T, Allocator >::operator= ( vector< T, Allocator > &&  x)
inlineconstexprnoexcept

Definition at line 243 of file vector.hpp.

◆ operator[]() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr const_reference plg::vector< T, Allocator >::operator[] ( size_type  n) const
inlineconstexprnoexcept

Definition at line 391 of file vector.hpp.

◆ operator[]() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr reference plg::vector< T, Allocator >::operator[] ( size_type  n)
inlineconstexprnoexcept

Definition at line 385 of file vector.hpp.

◆ pop_back()

template<class T , class Allocator = allocator<T>>
constexpr void plg::vector< T, Allocator >::pop_back ( )
inlineconstexpr

Definition at line 481 of file vector.hpp.

◆ push_back() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr void plg::vector< T, Allocator >::push_back ( const_reference  x)
inlineconstexpr

Definition at line 449 of file vector.hpp.

◆ push_back() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr void plg::vector< T, Allocator >::push_back ( value_type &&  x)
inlineconstexpr

Definition at line 453 of file vector.hpp.

◆ rbegin() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr const_reverse_iterator plg::vector< T, Allocator >::rbegin ( ) const
inlineconstexprnoexcept

Definition at line 319 of file vector.hpp.

◆ rbegin() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr reverse_iterator plg::vector< T, Allocator >::rbegin ( )
inlineconstexprnoexcept

Definition at line 314 of file vector.hpp.

◆ rend() [1/2]

template<class T , class Allocator = allocator<T>>
constexpr const_reverse_iterator plg::vector< T, Allocator >::rend ( ) const
inlineconstexprnoexcept

Definition at line 329 of file vector.hpp.

◆ rend() [2/2]

template<class T , class Allocator = allocator<T>>
constexpr reverse_iterator plg::vector< T, Allocator >::rend ( )
inlineconstexprnoexcept

Definition at line 324 of file vector.hpp.

◆ reserve()

template<class T , class Allocator >
constexpr void plg::vector< T, Allocator >::reserve ( size_type  n)
constexpr

Definition at line 1141 of file vector.hpp.

◆ resize() [1/2]

template<class T , class Allocator >
constexpr void plg::vector< T, Allocator >::resize ( size_type  sz)
constexpr

Definition at line 1482 of file vector.hpp.

◆ resize() [2/2]

template<class T , class Allocator >
constexpr void plg::vector< T, Allocator >::resize ( size_type  sz,
const_reference  x 
)
constexpr

Definition at line 1493 of file vector.hpp.

◆ shrink_to_fit()

template<class T , class Allocator >
constexpr void plg::vector< T, Allocator >::shrink_to_fit ( )
constexprnoexcept

Definition at line 1152 of file vector.hpp.

◆ size()

template<class T , class Allocator = allocator<T>>
constexpr size_type plg::vector< T, Allocator >::size ( ) const
inlineconstexprnoexcept

Definition at line 356 of file vector.hpp.

◆ swap()

template<class T , class Allocator >
constexpr void plg::vector< T, Allocator >::swap ( vector< T, Allocator > &  x)
constexprnoexcept

Definition at line 1503 of file vector.hpp.


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