Lines Matching defs:rhs
43 member_ptr(const member_ptr<T>& rhs); // copy not allowed
44 void operator=(const member_ptr<T>& rhs); // assignment not allowed
59 value_ptr(const value_ptr<T>& rhs)
60 : member_ptr<T>(rhs.m_p ? new T(*rhs.m_p) : NULL) {}
62 value_ptr<T>& operator=(const value_ptr<T>& rhs);
63 bool operator==(const value_ptr<T>& rhs)
65 return (!this->m_p && !rhs.m_p) || (this->m_p && rhs.m_p && *this->m_p == *rhs.m_p);
69 template <class T> value_ptr<T>& value_ptr<T>::operator=(const value_ptr<T>& rhs)
72 this->m_p = rhs.m_p ? new T(*rhs.m_p) : NULL;
84 clonable_ptr(const clonable_ptr<T>& rhs)
85 : member_ptr<T>(rhs.m_p ? rhs.m_p->Clone() : NULL) {}
87 clonable_ptr<T>& operator=(const clonable_ptr<T>& rhs);
90 template <class T> clonable_ptr<T>& clonable_ptr<T>::operator=(const clonable_ptr<T>& rhs)
93 this->m_p = rhs.m_p ? rhs.m_p->Clone() : NULL;
105 counted_ptr(const counted_ptr<T>& rhs);
120 counted_ptr<T> & operator=(const counted_ptr<T>& rhs);
133 template <class T> counted_ptr<T>::counted_ptr(const counted_ptr<T>& rhs)
134 : m_p(rhs.m_p)
174 template <class T> counted_ptr<T> & counted_ptr<T>::operator=(const counted_ptr<T>& rhs)
176 if (m_p != rhs.m_p)
180 m_p = rhs.m_p;