Lines Matching refs:weak_ptr
399 typedef weak_ptr<T> weak_type; // C++17
413 template<class Y> explicit shared_ptr(const weak_ptr<Y>& r);
444 template<class U> bool owner_before(weak_ptr<U> const& b) const noexcept;
510 class weak_ptr
516 constexpr weak_ptr() noexcept;
517 template<class Y> weak_ptr(shared_ptr<Y> const& r) noexcept;
518 weak_ptr(weak_ptr const& r) noexcept;
519 template<class Y> weak_ptr(weak_ptr<Y> const& r) noexcept;
520 weak_ptr(weak_ptr&& r) noexcept; // C++14
521 template<class Y> weak_ptr(weak_ptr<Y>&& r) noexcept; // C++14
524 ~weak_ptr();
527 weak_ptr& operator=(weak_ptr const& r) noexcept;
528 template<class Y> weak_ptr& operator=(weak_ptr<Y> const& r) noexcept;
529 template<class Y> weak_ptr& operator=(shared_ptr<Y> const& r) noexcept;
530 weak_ptr& operator=(weak_ptr&& r) noexcept; // C++14
531 template<class Y> weak_ptr& operator=(weak_ptr<Y>&& r) noexcept; // C++14
534 void swap(weak_ptr& r) noexcept;
542 template<class U> bool owner_before(weak_ptr<U> const& b) const noexcept;
545 // weak_ptr specialized algorithms:
546 template<class T> void swap(weak_ptr<T>& a, weak_ptr<T>& b) noexcept;
557 bool operator()(shared_ptr<T> const&, weak_ptr<T> const&) const noexcept;
558 bool operator()(weak_ptr<T> const&, shared_ptr<T> const&) const noexcept;
562 struct owner_less<weak_ptr<T>>
563 : binary_function<weak_ptr<T>, weak_ptr<T>, bool>
566 bool operator()(weak_ptr<T> const&, weak_ptr<T> const&) const noexcept;
567 bool operator()(shared_ptr<T> const&, weak_ptr<T> const&) const noexcept;
568 bool operator()(weak_ptr<T> const&, shared_ptr<T> const&) const noexcept;
577 bool operator()( shared_ptr<_Tp> const& __x, weak_ptr<_Up> const& __y) const noexcept;
579 bool operator()( weak_ptr<_Tp> const& __x, shared_ptr<_Up> const& __y) const noexcept;
581 bool operator()( weak_ptr<_Tp> const& __x, weak_ptr<_Up> const& __y) const noexcept;
3514 template<class _Tp> class _LIBCPP_TEMPLATE_VIS weak_ptr;
3746 typedef weak_ptr<_Tp> weak_type;
3784 template<class _Yp> explicit shared_ptr(const weak_ptr<_Yp>& __r,
3947 bool owner_before(weak_ptr<_Up> const& __p) const _NOEXCEPT
4039 template <class _Up> friend class _LIBCPP_TEMPLATE_VIS weak_ptr;
5001 class _LIBCPP_TEMPLATE_VIS weak_ptr
5011 _LIBCPP_CONSTEXPR weak_ptr() _NOEXCEPT;
5012 template<class _Yp> _LIBCPP_INLINE_VISIBILITY weak_ptr(shared_ptr<_Yp> const& __r,
5016 weak_ptr(weak_ptr const& __r) _NOEXCEPT;
5017 template<class _Yp> _LIBCPP_INLINE_VISIBILITY weak_ptr(weak_ptr<_Yp> const& __r,
5023 weak_ptr(weak_ptr&& __r) _NOEXCEPT;
5024 template<class _Yp> _LIBCPP_INLINE_VISIBILITY weak_ptr(weak_ptr<_Yp>&& __r,
5028 ~weak_ptr();
5031 weak_ptr& operator=(weak_ptr const& __r) _NOEXCEPT;
5036 weak_ptr&
5039 operator=(weak_ptr<_Yp> const& __r) _NOEXCEPT;
5044 weak_ptr& operator=(weak_ptr&& __r) _NOEXCEPT;
5049 weak_ptr&
5052 operator=(weak_ptr<_Yp>&& __r) _NOEXCEPT;
5060 weak_ptr&
5066 void swap(weak_ptr& __r) _NOEXCEPT;
5083 bool owner_before(const weak_ptr<_Up>& __r) const _NOEXCEPT
5086 template <class _Up> friend class _LIBCPP_TEMPLATE_VIS weak_ptr;
5093 weak_ptr<_Tp>::weak_ptr() _NOEXCEPT
5101 weak_ptr<_Tp>::weak_ptr(weak_ptr const& __r) _NOEXCEPT
5112 weak_ptr<_Tp>::weak_ptr(shared_ptr<_Yp> const& __r,
5125 weak_ptr<_Tp>::weak_ptr(weak_ptr<_Yp> const& __r,
5139 weak_ptr<_Tp>::weak_ptr(weak_ptr&& __r) _NOEXCEPT
5150 weak_ptr<_Tp>::weak_ptr(weak_ptr<_Yp>&& __r,
5163 weak_ptr<_Tp>::~weak_ptr()
5171 weak_ptr<_Tp>&
5172 weak_ptr<_Tp>::operator=(weak_ptr const& __r) _NOEXCEPT
5174 weak_ptr(__r).swap(*this);
5184 weak_ptr<_Tp>&
5186 weak_ptr<_Tp>::operator=(weak_ptr<_Yp> const& __r) _NOEXCEPT
5188 weak_ptr(__r).swap(*this);
5196 weak_ptr<_Tp>&
5197 weak_ptr<_Tp>::operator=(weak_ptr&& __r) _NOEXCEPT
5199 weak_ptr(_VSTD::move(__r)).swap(*this);
5209 weak_ptr<_Tp>&
5211 weak_ptr<_Tp>::operator=(weak_ptr<_Yp>&& __r) _NOEXCEPT
5213 weak_ptr(_VSTD::move(__r)).swap(*this);
5225 weak_ptr<_Tp>&
5227 weak_ptr<_Tp>::operator=(shared_ptr<_Yp> const& __r) _NOEXCEPT
5229 weak_ptr(__r).swap(*this);
5236 weak_ptr<_Tp>::swap(weak_ptr& __r) _NOEXCEPT
5245 swap(weak_ptr<_Tp>& __x, weak_ptr<_Tp>& __y) _NOEXCEPT
5253 weak_ptr<_Tp>::reset() _NOEXCEPT
5255 weak_ptr().swap(*this);
5260 shared_ptr<_Tp>::shared_ptr(const weak_ptr<_Yp>& __r,
5271 weak_ptr<_Tp>::lock() const _NOEXCEPT
5295 bool operator()(shared_ptr<_Tp> const& __x, weak_ptr<_Tp> const& __y) const _NOEXCEPT
5298 bool operator()( weak_ptr<_Tp> const& __x, shared_ptr<_Tp> const& __y) const _NOEXCEPT
5303 struct _LIBCPP_TEMPLATE_VIS owner_less<weak_ptr<_Tp> >
5304 : binary_function<weak_ptr<_Tp>, weak_ptr<_Tp>, bool>
5308 bool operator()( weak_ptr<_Tp> const& __x, weak_ptr<_Tp> const& __y) const _NOEXCEPT
5311 bool operator()(shared_ptr<_Tp> const& __x, weak_ptr<_Tp> const& __y) const _NOEXCEPT
5314 bool operator()( weak_ptr<_Tp> const& __x, shared_ptr<_Tp> const& __y) const _NOEXCEPT
5328 bool operator()( shared_ptr<_Tp> const& __x, weak_ptr<_Up> const& __y) const _NOEXCEPT
5332 bool operator()( weak_ptr<_Tp> const& __x, shared_ptr<_Up> const& __y) const _NOEXCEPT
5336 bool operator()( weak_ptr<_Tp> const& __x, weak_ptr<_Up> const& __y) const _NOEXCEPT
5345 mutable weak_ptr<_Tp> __weak_this_;
5366 weak_ptr<_Tp> weak_from_this() _NOEXCEPT
5370 weak_ptr<const _Tp> weak_from_this() const _NOEXCEPT