/** \brief swap content of this and other pointers. * \param other element to swap content with. */ void swap(this_type &other) { pointer tmp=other.release(); assert( other.get()==NULL ); other.t_=get(); t_=tmp; }
//! @brief Deep comparison bool operator== (this_type const &rhs) const { return (!*this && !rhs) || (*this && rhs && ( (this->get() == rhs.get()) || (**this == *rhs) ) ); }
/** \brief comapre pointers. * \param other element to compare with. * \return true if this pointer is less then other, false otherwise. */ bool operator<(const this_type &other) const { return get()<other.get(); }