[util.smartptr.owner.equal] (original) (raw)

The class owner_equal provides ownership-based mixed equality comparisons of shared and weak pointers.

namespace std { struct owner_equal { template<class T, class U> bool operator()(const shared_ptr<T>&, const shared_ptr<U>&) const noexcept;template<class T, class U> bool operator()(const shared_ptr<T>&, const weak_ptr<U>&) const noexcept;template<class T, class U> bool operator()(const weak_ptr<T>&, const shared_ptr<U>&) const noexcept;template<class T, class U> bool operator()(const weak_ptr<T>&, const weak_ptr<U>&) const noexcept;using is_transparent = unspecified;};}