// -*- C++ -*- ACE_BEGIN_VERSIONED_NAMESPACE_DECL // Clean up the array (e.g., delete dynamically allocated memory). template ACE_INLINE ACE_Array_Base::~ACE_Array_Base () { ACE_DES_ARRAY_FREE (this->array_, this->max_size_, this->allocator_->free, T); } template ACE_INLINE typename ACE_Array_Base::iterator ACE_Array_Base::begin () { return this->array_; } template ACE_INLINE typename ACE_Array_Base::iterator ACE_Array_Base::end () { return this->array_ + this->cur_size_; } template ACE_INLINE typename ACE_Array_Base::const_iterator ACE_Array_Base::begin () const { return this->array_; } template ACE_INLINE typename ACE_Array_Base::const_iterator ACE_Array_Base::end () const { return this->array_ + this->cur_size_; } template ACE_INLINE typename ACE_Array_Base::reverse_iterator ACE_Array_Base::rbegin () { return reverse_iterator (this->end ()); } template ACE_INLINE typename ACE_Array_Base::reverse_iterator ACE_Array_Base::rend () { return reverse_iterator (this->begin ()); } template ACE_INLINE typename ACE_Array_Base::const_reverse_iterator ACE_Array_Base::rbegin () const { return const_reverse_iterator (this->end ()); } template ACE_INLINE typename ACE_Array_Base::const_reverse_iterator ACE_Array_Base::rend () const { return const_reverse_iterator (this->begin ()); } template ACE_INLINE typename ACE_Array_Base::size_type ACE_Array_Base::size () const { return this->cur_size_; } template ACE_INLINE typename ACE_Array_Base::size_type ACE_Array_Base::max_size () const { return this->max_size_; } template ACE_INLINE bool ACE_Array_Base::in_range (typename ACE_Array_Base::size_type index) const { return index < this->cur_size_; } template ACE_INLINE T & ACE_Array_Base::operator[] (typename ACE_Array_Base::size_type index) { return this->array_[index]; } template ACE_INLINE const T & ACE_Array_Base::operator[] (typename ACE_Array_Base::size_type index) const { return this->array_[index]; } // **************************************************************** template ACE_INLINE void ACE_Array_Iterator::dump () const { #if defined (ACE_HAS_DUMP) // ACE_TRACE ("ACE_Array_Iterator::dump"); #endif /* ACE_HAS_DUMP */ } template ACE_INLINE ACE_Array_Iterator::ACE_Array_Iterator (ACE_Array_Base &a) : current_ (0), array_ (a) { // ACE_TRACE ("ACE_Array_Iterator::ACE_Array_Iterator"); } template ACE_INLINE int ACE_Array_Iterator::advance () { // ACE_TRACE ("ACE_Array_Iterator::advance"); if (this->current_ < array_.size ()) { ++this->current_; return 1; } else { // Already finished iterating. return 0; } } template ACE_INLINE int ACE_Array_Iterator::done () const { ACE_TRACE ("ACE_Array_Iterator::done"); return this->current_ >= array_.size (); } ACE_END_VERSIONED_NAMESPACE_DECL