/* -*- C++ -*- */ // $Id$ // Auto_Ptr.i template ACE_INLINE void auto_ptr::operator= (auto_ptr &rhs) { ACE_TRACE ("auto_ptr::operator="); if (this != &rhs) { auto_ptr::remove (p_); p_ = rhs.release (); } } template ACE_INLINE auto_ptr::auto_ptr (X *p) : p_ (p) { ACE_TRACE ("auto_ptr::auto_ptr"); } template ACE_INLINE auto_ptr::auto_ptr (auto_ptr &ap) : p_ (ap.release ()) { ACE_TRACE ("auto_ptr::auto_ptr"); } template ACE_INLINE auto_ptr::~auto_ptr (void) { ACE_TRACE ("auto_ptr::~auto_ptr"); delete p_; } template ACE_INLINE X & auto_ptr::operator *() const { return *p_; } template ACE_INLINE X * auto_ptr::operator-> () const { ACE_TRACE ("auto_ptr::operator->"); return p_; } template ACE_INLINE X * auto_ptr::get (void) const { ACE_TRACE ("auto_ptr::get"); return p_; } template ACE_INLINE X * auto_ptr::release (void) { ACE_TRACE ("auto_ptr::release"); return this->reset (0); } template ACE_INLINE X * auto_ptr::reset (X *p) { ACE_TRACE ("auto_ptr::reset"); X *tp = p_; p_ = p; return tp; } template ACE_INLINE auto_array_ptr::auto_array_ptr (X *p) : p_ (p) { ACE_TRACE ("auto_array_ptr::auto_array_ptr"); } template ACE_INLINE auto_array_ptr::auto_array_ptr (auto_array_ptr &ap) : p_ (ap.release ()) { ACE_TRACE ("auto_array_ptr::auto_array_ptr"); } template ACE_INLINE auto_array_ptr::~auto_array_ptr (void) { ACE_TRACE ("auto_array_ptr::~auto_array_ptr"); delete [] p_; } template ACE_INLINE X & auto_array_ptr::operator*() { return *p_; } template ACE_INLINE X * auto_array_ptr::operator->() { return p_; } template ACE_INLINE X & auto_array_ptr::operator[](int i) { return p_[i]; } template ACE_INLINE X auto_array_ptr::operator[](int i) const { return p_[i]; } template ACE_INLINE X * auto_array_ptr::get (void) const { ACE_TRACE ("auto_array_ptr::get"); return p_; } template ACE_INLINE X * auto_array_ptr::release (void) { ACE_TRACE ("auto_array_ptr::release"); return this->reset (0); } template ACE_INLINE X * auto_array_ptr::reset (X *p) { ACE_TRACE ("auto_array_ptr::reset"); X *tp = p_; p_ = p; return tp; } template ACE_INLINE void auto_array_ptr::operator= (auto_array_ptr &rhs) { ACE_TRACE ("auto_array_ptr::operator="); if (this != &rhs) { auto_array_ptr::remove (p_); p_ = rhs.release (); } }