2 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
4 template <class T> ACE_INLINE int
5 ACE_Bounded_Stack<T>::is_empty (void) const
7 ACE_TRACE ("ACE_Bounded_Stack<T>::is_empty");
8 return this->top_ == 0;
11 template <class T> ACE_INLINE int
12 ACE_Bounded_Stack<T>::is_full (void) const
14 ACE_TRACE ("ACE_Bounded_Stack<T>::is_full");
15 return this->top_ >= this->size_;
18 template <class T> ACE_INLINE int
19 ACE_Bounded_Stack<T>::push (const T &new_item)
21 ACE_TRACE ("ACE_Bounded_Stack<T>::push");
22 if (this->is_full () == 0)
24 this->stack_[this->top_++] = new_item;
31 template <class T> ACE_INLINE int
32 ACE_Bounded_Stack<T>::pop (T &item)
34 ACE_TRACE ("ACE_Bounded_Stack<T>::pop");
35 if (this->is_empty () == 0)
37 item = this->stack_[--this->top_];
44 template <class T> ACE_INLINE int
45 ACE_Bounded_Stack<T>::top (T &item) const
47 ACE_TRACE ("ACE_Bounded_Stack<T>::top");
48 if (this->is_empty () == 0)
50 item = this->stack_[this->top_ - 1];
57 template <class T> ACE_INLINE size_t
58 ACE_Bounded_Stack<T>::size (void) const
63 //----------------------------------------
65 template <class T, size_t ACE_SIZE> ACE_INLINE int
66 ACE_Fixed_Stack<T, ACE_SIZE>::is_empty (void) const
68 ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::is_empty");
69 return this->top_ == 0;
72 template <class T, size_t ACE_SIZE> ACE_INLINE int
73 ACE_Fixed_Stack<T, ACE_SIZE>::is_full (void) const
75 ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::is_full");
76 return this->top_ >= this->size_;
79 template <class T, size_t ACE_SIZE> ACE_INLINE int
80 ACE_Fixed_Stack<T, ACE_SIZE>::push (const T &new_item)
82 ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::push");
83 if (this->is_full () == 0)
85 this->stack_[this->top_++] = new_item;
92 template <class T, size_t ACE_SIZE> ACE_INLINE int
93 ACE_Fixed_Stack<T, ACE_SIZE>::pop (T &item)
95 ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::pop");
96 if (this->is_empty () == 0)
98 item = this->stack_[--this->top_];
105 template <class T, size_t ACE_SIZE> ACE_INLINE int
106 ACE_Fixed_Stack<T, ACE_SIZE>::top (T &item) const
108 ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::top");
109 if (this->is_empty () == 0)
111 item = this->stack_[this->top_ - 1];
118 template <class T, size_t ACE_SIZE> ACE_INLINE size_t
119 ACE_Fixed_Stack<T, ACE_SIZE>::size (void) const
124 template <class T> ACE_INLINE int
125 ACE_Unbounded_Stack<T>::is_empty (void) const
127 // ACE_TRACE ("ACE_Unbounded_Stack<T>::is_empty");
128 return this->head_ == this->head_->next_;
131 template <class T> ACE_INLINE int
132 ACE_Unbounded_Stack<T>::top (T &item) const
134 ACE_TRACE ("ACE_Unbounded_Stack<T>::top");
135 if (this->is_empty () == 0)
137 item = this->head_->next_->item_;
144 template <class T> ACE_INLINE int
145 ACE_Unbounded_Stack<T>::is_full (void) const
147 ACE_TRACE ("ACE_Unbounded_Stack<T>::is_full");
151 template <class T> ACE_INLINE size_t
152 ACE_Unbounded_Stack<T>::size (void) const
154 return this->cur_size_;
162 template <class T, size_t ACE_SIZE> ACE_INLINE int
163 ACE_Fixed_Set<T, ACE_SIZE>::is_empty (void) const
165 ACE_TRACE ("ACE_Fixed_Set<T>::is_empty");
166 return this->cur_size_ == 0;
169 template <class T, size_t ACE_SIZE> ACE_INLINE int
170 ACE_Fixed_Set<T, ACE_SIZE>::is_full (void) const
172 ACE_TRACE ("ACE_Fixed_Set<T, ACE_SIZE>::is_full");
173 return this->cur_size_ == this->max_size_;
178 template <class T> ACE_INLINE int
179 ACE_Bounded_Set<T>::is_empty (void) const
181 ACE_TRACE ("ACE_Bounded_Set<T>::is_empty");
182 return this->cur_size_ == 0;
185 template <class T> ACE_INLINE int
186 ACE_Bounded_Set<T>::is_full (void) const
188 ACE_TRACE ("ACE_Bounded_Set<T>::is_full");
189 return this->cur_size_ == this->max_size_;
194 template <class T> ACE_INLINE int
195 ACE_Ordered_MultiSet_Iterator<T>::first (void)
197 ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::first");
198 current_ = set_.head_;
200 return (current_ ? 1 : 0);
203 template <class T> ACE_INLINE int
204 ACE_Ordered_MultiSet_Iterator<T>::last (void)
206 ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::last");
207 current_ = set_.tail_;
209 return (current_ ? 1 : 0);
212 template <class T> ACE_INLINE int
213 ACE_Ordered_MultiSet_Iterator<T>::advance (void)
215 ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::advance");
217 current_ = current_ ? current_->next_ : 0;
219 return (current_ ? 1 : 0);
222 template <class T> ACE_INLINE int
223 ACE_Ordered_MultiSet_Iterator<T>::retreat (void)
225 ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::retreat");
227 current_ = current_ ? current_->prev_ : 0;
229 return (current_ ? 1 : 0);
232 template <class T> ACE_INLINE int
233 ACE_Ordered_MultiSet_Iterator<T>::done (void) const
235 ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::done");
237 return (current_ ? 0 : 1);
240 template <class T> ACE_INLINE void
241 ACE_Ordered_MultiSet_Iterator<T>::dump (void) const
243 #if defined (ACE_HAS_DUMP)
244 // ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::dump");
245 #endif /* ACE_HAS_DUMP */
252 template <class T> ACE_INLINE int
253 ACE_Ordered_MultiSet<T>::is_empty (void) const
255 ACE_TRACE ("ACE_Ordered_MultiSet<T>::is_empty");
256 return this->cur_size_ > 0 ? 0 : 1;
259 template <class T> ACE_INLINE size_t
260 ACE_Ordered_MultiSet<T>::size (void) const
262 // ACE_TRACE ("ACE_Ordered_MultiSet<T>::size");
263 return this->cur_size_;
266 // ****************************************************************
268 template <class T> ACE_INLINE
269 ACE_Array<T>::ACE_Array (size_t size,
270 ACE_Allocator *alloc)
271 : ACE_Array_Base<T> (size, alloc)
275 template <class T> ACE_INLINE
276 ACE_Array<T>::ACE_Array (size_t size,
277 const T &default_value,
278 ACE_Allocator *alloc)
279 : ACE_Array_Base<T> (size, default_value, alloc)
283 // The copy constructor (performs initialization).
285 template <class T> ACE_INLINE
286 ACE_Array<T>::ACE_Array (const ACE_Array<T> &s)
287 : ACE_Array_Base<T> (s)
291 // Assignment operator (performs assignment).
293 template <class T> ACE_INLINE void
294 ACE_Array<T>::operator= (const ACE_Array<T> &s)
296 // Check for "self-assignment".
299 this->ACE_Array_Base<T>::operator= (s);
302 // Compare this array with <s> for inequality.
304 template <class T> ACE_INLINE bool
305 ACE_Array<T>::operator!= (const ACE_Array<T> &s) const
307 return !(*this == s);
310 // ****************************************************************
313 // ****************************************************************
315 template <class T> ACE_INLINE void
316 ACE_DLList<T>::operator= (const ACE_DLList<T> &l)
318 *(ACE_DLList_Base *) this = l;
321 template <class T> ACE_INLINE int
322 ACE_DLList<T>::get (T *&item, size_t index)
324 ACE_DLList_Node *node;
325 int result = ACE_DLList_Base::get (node, index);
327 item = (T *) node->item_;
331 template <class T> ACE_INLINE void
332 ACE_DLList<T>::dump (void) const
334 #if defined (ACE_HAS_DUMP)
335 ACE_DLList_Base::dump ();
336 #endif /* ACE_HAS_DUMP */
339 template <class T> ACE_INLINE int
340 ACE_DLList<T>::remove (ACE_DLList_Node *n)
342 int result = ACE_DLList_Base::remove (n);
344 this->allocator_->free,
349 template <class T> ACE_INLINE
350 ACE_DLList<T>::ACE_DLList (ACE_Allocator *alloc)
351 : ACE_DLList_Base (alloc)
355 template <class T> ACE_INLINE
356 ACE_DLList<T>::ACE_DLList (const ACE_DLList<T> &l)
357 : ACE_DLList_Base ((ACE_DLList<T> &) l)
361 template <class T> ACE_INLINE
362 ACE_DLList<T>::~ACE_DLList (void)
364 while (this->delete_head ()) ;
367 template <class T> ACE_INLINE int
368 ACE_DLList_Iterator<T>::remove (void)
370 ACE_DLList_Node *temp = this->ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::next ();
371 this->ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::advance ();
372 return list_->remove (temp);
375 template <class T> ACE_INLINE
376 ACE_DLList_Iterator<T>::ACE_DLList_Iterator (ACE_DLList<T> &l)
377 : ACE_Double_Linked_List_Iterator <ACE_DLList_Node> ((ACE_DLList_Base &)l),
382 template <class T> ACE_INLINE void
383 ACE_DLList_Iterator<T>::reset (ACE_DLList<T> &l)
386 this->ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::reset ((ACE_DLList_Base &)l);
389 template <class T> ACE_INLINE int
390 ACE_DLList_Iterator<T>::next (T *&ptr)
392 ACE_DLList_Node *temp =
393 ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::next ();
395 ptr = (T *) temp->item_;
399 template <class T> ACE_INLINE T *
400 ACE_DLList_Iterator<T>::next (void) const
402 ACE_DLList_Node *temp = ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::next ();
403 return (T *) (temp ? temp->item_ : 0);
406 template <class T> ACE_INLINE int
407 ACE_DLList_Iterator<T>::advance (void)
409 return this->ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::advance ();
412 template <class T> ACE_INLINE void
413 ACE_DLList_Iterator<T>::dump (void) const
415 #if defined (ACE_HAS_DUMP)
416 ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::dump ();
417 #endif /* ACE_HAS_DUMP */
421 template <class T> ACE_INLINE int
422 ACE_DLList_Reverse_Iterator<T>::remove (void)
424 ACE_DLList_Node *temp = ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::next ();
425 this->ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::advance ();
426 return list_->remove (temp);
429 template <class T> ACE_INLINE
430 ACE_DLList_Reverse_Iterator<T>::ACE_DLList_Reverse_Iterator (ACE_DLList<T> &l)
431 : ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node> ((ACE_DLList_Base &)l),
436 template <class T> ACE_INLINE void
437 ACE_DLList_Reverse_Iterator<T>::reset (ACE_DLList<T> &l)
440 this->ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::reset ((ACE_DLList_Base &)l);
443 template <class T> ACE_INLINE int
444 ACE_DLList_Reverse_Iterator<T>::advance (void)
446 return ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::advance ();
449 template <class T> ACE_INLINE int
450 ACE_DLList_Reverse_Iterator<T>::next (T *&ptr)
452 ACE_DLList_Node *temp =
453 ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::next ();
456 ptr = (T *) temp->item_;
460 template <class T> ACE_INLINE T *
461 ACE_DLList_Reverse_Iterator<T>::next (void) const
463 ACE_DLList_Node *temp = ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::next ();
464 return (T *) (temp ? temp->item_ : 0);
468 template <class T> ACE_INLINE void
469 ACE_DLList_Reverse_Iterator<T>::dump (void) const
471 #if defined (ACE_HAS_DUMP)
472 ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::dump ();
473 #endif /* ACE_HAS_DUMP */
476 ACE_END_VERSIONED_NAMESPACE_DECL