Lines Matching refs:this
367 _VSTD::__debug_db_insert_c(this);
377 _VSTD::__debug_db_insert_c(this);
390 _VSTD::__debug_db_insert_c(this);
449 _LIBCPP_CONSTEXPR_AFTER_CXX17 _LIBCPP_HIDE_FROM_ABI ~vector() { __destroy_vector(*this)(); }
465 {assign(__il.begin(), __il.end()); return *this;}
512 {return this->__alloc();}
547 {return static_cast<size_type>(this->__end_ - this->__begin_);}
550 {return static_cast<size_type>(__end_cap() - this->__begin_);}
553 {return this->__begin_ == this->__end_;}
566 return *this->__begin_;
571 return *this->__begin_;
576 return *(this->__end_ - 1);
581 return *(this->__end_ - 1);
586 {return _VSTD::__to_address(this->__begin_);}
590 {return _VSTD::__to_address(this->__begin_);}
649 std::__debug_db_invalidate_all(this);
817 _ConstructTransaction __tx(*this, 1);
818 __alloc_traits::construct(this->__alloc(), _VSTD::__to_address(__tx.__pos_),
825 {return this->__end_cap_.second();}
828 {return this->__end_cap_.second();}
831 {return this->__end_cap_.first();}
834 {return this->__end_cap_.first();}
837 void __clear() _NOEXCEPT {__base_destruct_at_end(this->__begin_);}
841 pointer __soon_to_be_end = this->__end_;
844 this->__end_ = __new_last;
876 __alloc_traits::deallocate(__alloc(), this->__begin_, capacity());
877 this->__begin_ = this->__end_ = __end_cap() = nullptr;
927 _VSTD::swap(this->__begin_, __v.__begin_);
928 _VSTD::swap(this->__end_, __v.__end_);
929 _VSTD::swap(this->__end_cap(), __v.__end_cap());
932 std::__debug_db_invalidate_all(this);
947 _VSTD::swap(this->__begin_, __v.__begin_);
948 _VSTD::swap(this->__end_, __v.__end_);
949 _VSTD::swap(this->__end_cap(), __v.__end_cap());
952 std::__debug_db_invalidate_all(this);
961 if (this->__begin_ != nullptr)
964 __alloc_traits::deallocate(this->__alloc(), this->__begin_, capacity());
965 this->__begin_ = this->__end_ = this->__end_cap() = nullptr;
974 return _VSTD::min<size_type>(__alloc_traits::max_size(this->__alloc()),
987 this->__throw_length_error();
1004 _ConstructTransaction __tx(*this, __n);
1007 __alloc_traits::construct(this->__alloc(), _VSTD::__to_address(__pos));
1023 _ConstructTransaction __tx(*this, __n);
1026 __alloc_traits::construct(this->__alloc(), _VSTD::__to_address(__pos), __x);
1040 _ConstructTransaction __tx(*this, __n);
1053 if (static_cast<size_type>(this->__end_cap() - this->__end_) >= __n)
1054 this->__construct_at_end(__n);
1057 allocator_type& __a = this->__alloc();
1073 if (static_cast<size_type>(this->__end_cap() - this->__end_) >= __n)
1074 this->__construct_at_end(__n, __x);
1077 allocator_type& __a = this->__alloc();
1088 auto __guard = std::__make_transaction(__destroy_vector(*this));
1089 std::__debug_db_insert_c(this);
1104 auto __guard = std::__make_transaction(__destroy_vector(*this));
1105 std::__debug_db_insert_c(this);
1119 auto __guard = std::__make_transaction(__destroy_vector(*this));
1120 std::__debug_db_insert_c(this);
1139 auto __guard = std::__make_transaction(__destroy_vector(*this));
1140 std::__debug_db_insert_c(this);
1156 auto __guard = std::__make_transaction(__destroy_vector(*this));
1157 std::__debug_db_insert_c(this);
1173 auto __guard = std::__make_transaction(__destroy_vector(*this));
1174 std::__debug_db_insert_c(this);
1194 auto __guard = std::__make_transaction(__destroy_vector(*this));
1195 std::__debug_db_insert_c(this);
1210 auto __guard = std::__make_transaction(__destroy_vector(*this));
1211 std::__debug_db_insert_c(this);
1226 auto __guard = std::__make_transaction(__destroy_vector(*this));
1227 std::__debug_db_insert_c(this);
1248 _VSTD::__debug_db_insert_c(this);
1249 std::__debug_db_swap(this, std::addressof(__x));
1250 this->__begin_ = __x.__begin_;
1251 this->__end_ = __x.__end_;
1252 this->__end_cap() = __x.__end_cap();
1262 _VSTD::__debug_db_insert_c(this);
1265 this->__begin_ = __x.__begin_;
1266 this->__end_ = __x.__end_;
1267 this->__end_cap() = __x.__end_cap();
1269 std::__debug_db_swap(this, std::addressof(__x));
1274 auto __guard = std::__make_transaction(__destroy_vector(*this));
1287 auto __guard = std::__make_transaction(__destroy_vector(*this));
1288 std::__debug_db_insert_c(this);
1303 auto __guard = std::__make_transaction(__destroy_vector(*this));
1304 std::__debug_db_insert_c(this);
1324 return *this;
1349 __move_assign_alloc(__c); // this can throw
1350 this->__begin_ = __c.__begin_;
1351 this->__end_ = __c.__end_;
1352 this->__end_cap() = __c.__end_cap();
1354 std::__debug_db_swap(this, std::addressof(__c));
1363 if (this != _VSTD::addressof(__x))
1368 return *this;
1410 pointer __m = _VSTD::copy(__first, __mid, this->__begin_);
1414 this->__destruct_at_end(__m);
1422 std::__debug_db_invalidate_all(this);
1433 _VSTD::fill_n(this->__begin_, _VSTD::min(__n, __s), __u);
1437 this->__destruct_at_end(this->__begin_ + __n);
1445 std::__debug_db_invalidate_all(this);
1454 return iterator(this, this->__begin_);
1463 return const_iterator(this, this->__begin_);
1472 return iterator(this, this->__end_);
1481 return const_iterator(this, this->__end_);
1491 return this->__begin_[__n];
1501 return this->__begin_[__n];
1510 this->__throw_out_of_range();
1511 return this->__begin_[__n];
1520 this->__throw_out_of_range();
1521 return this->__begin_[__n];
1532 this->__throw_length_error();
1533 allocator_type& __a = this->__alloc();
1550 allocator_type& __a = this->__alloc();
1568 allocator_type& __a = this->__alloc();
1582 if (this->__end_ != this->__end_cap())
1596 if (this->__end_ < this->__end_cap())
1610 allocator_type& __a = this->__alloc();
1629 if (this->__end_ < this->__end_cap())
1636 return this->back();
1647 this->__destruct_at_end(this->__end_ - 1);
1656 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__position)) == this,
1657 … "vector::erase(iterator) called with an iterator not referring to this vector");
1661 pointer __p = this->__begin_ + __ps;
1662 this->__destruct_at_end(_VSTD::move(__p + 1, this->__end_, __p));
1664 this->__invalidate_iterators_past(__p - 1);
1665 iterator __r = iterator(this, __p);
1674 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__first)) == this,
1675 … "vector::erase(iterator, iterator) called with an iterator not referring to this vector");
1676 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__last)) == this,
1677 … "vector::erase(iterator, iterator) called with an iterator not referring to this vector");
1680 pointer __p = this->__begin_ + (__first - begin());
1682 this->__destruct_at_end(_VSTD::move(__p + (__last - __first), this->__end_, __p));
1684 this->__invalidate_iterators_past(__p - 1);
1686 iterator __r = iterator(this, __p);
1695 pointer __old_last = this->__end_;
1699 _ConstructTransaction __tx(*this, __from_e - __i);
1702 __alloc_traits::construct(this->__alloc(),
1715 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__position)) == this,
1716 … "vector::insert(iterator, x) called with an iterator not referring to this vector");
1717 pointer __p = this->__begin_ + (__position - begin());
1719 if (!__libcpp_is_constant_evaluated() && this->__end_ < this->__end_cap())
1721 if (__p == this->__end_)
1727 __move_range(__p, this->__end_, __p + 1);
1729 if (__p <= __xr && __xr < this->__end_)
1736 allocator_type& __a = this->__alloc();
1737 …__split_buffer<value_type, allocator_type&> __v(__recommend(size() + 1), __p - this->__begin_, __a…
1741 return iterator(this, __p);
1749 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__position)) == this,
1750 … "vector::insert(iterator, x) called with an iterator not referring to this vector");
1751 pointer __p = this->__begin_ + (__position - begin());
1752 if (this->__end_ < this->__end_cap())
1754 if (__p == this->__end_)
1760 __move_range(__p, this->__end_, __p + 1);
1766 allocator_type& __a = this->__alloc();
1767 …__split_buffer<value_type, allocator_type&> __v(__recommend(size() + 1), __p - this->__begin_, __a…
1771 return iterator(this, __p);
1780 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__position)) == this,
1781 … "vector::emplace(iterator, x) called with an iterator not referring to this vector");
1782 pointer __p = this->__begin_ + (__position - begin());
1783 if (this->__end_ < this->__end_cap())
1785 if (__p == this->__end_)
1791 … __temp_value<value_type, _Allocator> __tmp(this->__alloc(), _VSTD::forward<_Args>(__args)...);
1792 __move_range(__p, this->__end_, __p + 1);
1798 allocator_type& __a = this->__alloc();
1799 …__split_buffer<value_type, allocator_type&> __v(__recommend(size() + 1), __p - this->__begin_, __a…
1803 return iterator(this, __p);
1811 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__position)) == this,
1812 … "vector::insert(iterator, n, x) called with an iterator not referring to this vector");
1813 pointer __p = this->__begin_ + (__position - begin());
1817 …_libcpp_is_constant_evaluated() && __n <= static_cast<size_type>(this->__end_cap() - this->__end_))
1820 pointer __old_last = this->__end_;
1821 if (__n > static_cast<size_type>(this->__end_ - __p))
1823 size_type __cx = __n - (this->__end_ - __p);
1831 if (__p <= __xr && __xr < this->__end_)
1838 allocator_type& __a = this->__alloc();
1839 …__split_buffer<value_type, allocator_type&> __v(__recommend(size() + __n), __p - this->__begin_, _…
1844 return iterator(this, __p);
1857 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__position)) == this,
1858 … "vector::insert(iterator, range) called with an iterator not referring to this vector");
1860 pointer __p = this->__begin_ + __off;
1861 allocator_type& __a = this->__alloc();
1862 pointer __old_last = this->__end_;
1863 for (; this->__end_ != this->__end_cap() && __first != __last; ++__first)
1875 difference_type __old_size = __old_last - this->__begin_;
1876 difference_type __old_p = __p - this->__begin_;
1878 __p = this->__begin_ + __old_p;
1879 __old_last = this->__begin_ + __old_size;
1884 erase(iterator(this, __old_last), end());
1889 __p = _VSTD::rotate(__p, __old_last, this->__end_);
1890 insert(iterator(this, __p), _VSTD::make_move_iterator(__v.begin()),
1908 _LIBCPP_DEBUG_ASSERT(__get_const_db()->__find_c_from_i(_VSTD::addressof(__position)) == this,
1909 … "vector::insert(iterator, range) called with an iterator not referring to this vector");
1910 pointer __p = this->__begin_ + (__position - begin());
1914 if (__n <= this->__end_cap() - this->__end_)
1917 pointer __old_last = this->__end_;
1919 difference_type __dx = this->__end_ - __p;
1923 difference_type __diff = this->__end_ - __p;
1936 allocator_type& __a = this->__alloc();
1937 …__split_buffer<value_type, allocator_type&> __v(__recommend(size() + __n), __p - this->__begin_, _…
1942 return iterator(this, __p);
1952 this->__append(__sz - __cs);
1954 this->__destruct_at_end(this->__begin_ + __sz);
1964 this->__append(__sz - __cs, __x);
1966 this->__destruct_at_end(this->__begin_ + __sz);
1981 this->__alloc() == __x.__alloc(),
1984 _VSTD::swap(this->__begin_, __x.__begin_);
1985 _VSTD::swap(this->__end_, __x.__end_);
1986 _VSTD::swap(this->__end_cap(), __x.__end_cap());
1987 _VSTD::__swap_allocator(this->__alloc(), __x.__alloc(),
1989 std::__debug_db_swap(this, std::addressof(__x));
1997 if (this->__begin_ == nullptr)
1999 if (this->__end_ != nullptr || this->__end_cap() != nullptr)
2004 if (this->__begin_ > this->__end_)
2006 if (this->__begin_ == this->__end_cap())
2008 if (this->__end_ > this->__end_cap())
2020 return this->__begin_ <= __i->base() && __i->base() < this->__end_;
2027 return this->__begin_ < __i->base() && __i->base() <= this->__end_;
2035 return this->__begin_ <= __p && __p <= this->__end_;
2043 return this->__begin_ <= __p && __p < this->__end_;
2053 __c_node* __c = __get_db()->__find_c_and_lock(this);
2157 std::__debug_db_invalidate_all(this);
2165 _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_AFTER_CXX17 ~vector() { __destroy_vector(*this)(); }
2196 {assign(__il.begin(), __il.end()); return *this;}
2234 {return allocator_type(this->__alloc());}
2309 return this->back();
2478 if (this->__begin_ != nullptr)
2480 __storage_traits::deallocate(this->__alloc(), this->__begin_, __cap());
2481 std::__debug_db_invalidate_all(this);
2482 this->__begin_ = nullptr;
2483 this->__size_ = this->__cap() = 0;
2507 this->__throw_length_error();
2523 size_type __old_size = this->__size_;
2524 this->__size_ += __n;
2525 …if (__old_size == 0 || ((__old_size - 1) / __bits_per_word) != ((this->__size_ - 1) / __bits_per_w…
2527 if (this->__size_ <= __bits_per_word)
2528 this->__begin_[0] = __storage_type(0);
2530 this->__begin_[(this->__size_ - 1) / __bits_per_word] = __storage_type(0);
2545 size_type __old_size = this->__size_;
2546 this->__size_ += _VSTD::distance(__first, __last);
2547 …if (__old_size == 0 || ((__old_size - 1) / __bits_per_word) != ((this->__size_ - 1) / __bits_per_w…
2549 if (this->__size_ <= __bits_per_word)
2550 this->__begin_[0] = __storage_type(0);
2552 this->__begin_[(this->__size_ - 1) / __bits_per_word] = __storage_type(0);
2660 std::__debug_db_invalidate_all(this);
2687 std::__debug_db_invalidate_all(this);
2702 auto __guard = std::__make_transaction(__destroy_vector(*this));
2721 auto __guard = std::__make_transaction(__destroy_vector(*this));
2798 if (this != _VSTD::addressof(__v))
2812 return *this;
2839 this->__begin_ = __v.__begin_;
2840 this->__size_ = __v.__size_;
2841 this->__cap() = __v.__cap();
2860 return *this;
2880 this->__begin_ = __c.__begin_;
2881 this->__size_ = __c.__size_;
2882 this->__cap() = __c.__cap();
2906 std::__debug_db_invalidate_all(this);
2953 this->__throw_length_error();
2954 vector __v(this->get_allocator());
2956 __v.__construct_at_end(this->begin(), this->end());
2958 std::__debug_db_invalidate_all(this);
2972 vector(*this, allocator_type(__alloc())).swap(*this);
2987 this->__throw_out_of_range();
2988 return (*this)[__n];
2996 this->__throw_out_of_range();
2997 return (*this)[__n];
3004 if (this->__size_ == this->capacity())
3005 reserve(__recommend(this->__size_ + 1));
3006 ++this->__size_;
3073 ++this->__size_;
3144 _VSTD::copy(__position + 1, this->cend(), __r);
3156 _VSTD::copy(__last, this->cend(), __r);
3171 _VSTD::swap(this->__begin_, __x.__begin_);
3172 _VSTD::swap(this->__size_, __x.__size_);
3173 _VSTD::swap(this->__cap(), __x.__cap());
3174 _VSTD::__swap_allocator(this->__alloc(), __x.__alloc(),
3230 if (this->__begin_ == nullptr)
3232 if (this->__size_ != 0 || this->__cap() != 0)
3237 if (this->__cap() == 0)
3239 if (this->__size_ > this->capacity())