summaryrefslogtreecommitdiff
path: root/ace/Containers.i
diff options
context:
space:
mode:
authorcdgill <cdgill@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-01-30 21:34:52 +0000
committercdgill <cdgill@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-01-30 21:34:52 +0000
commitfa8da42b61457ceecd8a79b893c47be892245b92 (patch)
tree1dc6f69813624225decd532067b7dc3e3e969ab9 /ace/Containers.i
parent02c9ab535a11315799effe8c4470f6011cb92a32 (diff)
downloadATCD-fa8da42b61457ceecd8a79b893c47be892245b92.tar.gz
added ACE_Ordered_MultiSet and ACE_Ordered_MultiSet_Iterator class templates
Diffstat (limited to 'ace/Containers.i')
-rw-r--r--ace/Containers.i73
1 files changed, 73 insertions, 0 deletions
diff --git a/ace/Containers.i b/ace/Containers.i
index abc7a7da958..b7639bc3cc6 100644
--- a/ace/Containers.i
+++ b/ace/Containers.i
@@ -225,3 +225,76 @@ ACE_Bounded_Set<T>::is_full (void) const
ACE_TRACE ("ACE_Bounded_Set<T>::is_full");
return this->cur_size_ == this->max_size_;
}
+
+// --
+
+template <class T> ACE_INLINE int
+ACE_Ordered_MultiSet_Iterator<T>::first (void)
+{
+ ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::first");
+ current_ = set_.head_;
+
+ return (current_ ? 1 : 0);
+}
+
+template <class T> ACE_INLINE int
+ACE_Ordered_MultiSet_Iterator<T>::last (void)
+{
+ ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::last");
+ current_ = set_.tail_;
+
+ return (current_ ? 1 : 0);
+}
+
+template <class T> ACE_INLINE int
+ACE_Ordered_MultiSet_Iterator<T>::advance (void)
+{
+ ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::advance");
+
+ current_ = current_ ? current_->next_ : 0;
+
+ return (current_ ? 1 : 0);
+}
+
+template <class T> ACE_INLINE int
+ACE_Ordered_MultiSet_Iterator<T>::retreat (void)
+{
+ ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::retreat");
+
+ current_ = current_ ? current_->prev_ : 0;
+
+ return (current_ ? 1 : 0);
+}
+
+template <class T> ACE_INLINE int
+ACE_Ordered_MultiSet_Iterator<T>::done (void) const
+{
+ ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::done");
+
+ return (current_ ? 0 : 1);
+}
+
+template <class T> ACE_INLINE void
+ACE_Ordered_MultiSet_Iterator<T>::dump (void) const
+{
+// ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::dump");
+}
+
+
+
+// --
+
+template <class T> ACE_INLINE int
+ACE_Ordered_MultiSet<T>::is_empty (void) const
+{
+ ACE_TRACE ("ACE_Ordered_MultiSet<T>::is_empty");
+ return this->head_ == this->head_->next_;
+}
+
+template <class T> ACE_INLINE size_t
+ACE_Ordered_MultiSet<T>::size (void) const
+{
+// ACE_TRACE ("ACE_Unbounded_Set<T>::size");
+ return this->cur_size_;
+}
+