summaryrefslogtreecommitdiff
path: root/ace
diff options
context:
space:
mode:
authorjxh <jxh@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-05-30 18:14:18 +0000
committerjxh <jxh@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-05-30 18:14:18 +0000
commit861aa8a4d7055458469d0da4e8681a716f2cdd6b (patch)
tree37cdc694c6031206340b5b8b02b9410fa63ee9cd /ace
parent9196d7946a72b97e3d8a9b49534d81c49d97fa1d (diff)
downloadATCD-861aa8a4d7055458469d0da4e8681a716f2cdd6b.tar.gz
Try to put enum into a class again. This time, created a dummy base
class to hold the RED and BLACK enums.
Diffstat (limited to 'ace')
-rw-r--r--ace/RB_Tree.h12
-rw-r--r--ace/RB_Tree.i4
2 files changed, 11 insertions, 5 deletions
diff --git a/ace/RB_Tree.h b/ace/RB_Tree.h
index 64c2619e5c8..231a355b376 100644
--- a/ace/RB_Tree.h
+++ b/ace/RB_Tree.h
@@ -17,16 +17,22 @@
#if !defined (ACE_RB_TREE_H)
#define ACE_RB_TREE_H
-enum RB_Tree_Node_Color {RED, BLACK};
-
#include "ace/ACE.h"
+class RB_Tree_Node_Base
+{
+public:
+
+ enum RB_Tree_Node_Color {RED, BLACK};
+
+};
+
// Class Template: RB_Tree_Node
//
// Purpose: Implements a node in a Red-Black Tree ADT
//
template <class KEY, class T>
-class RB_Tree_Node
+class RB_Tree_Node : public RB_Tree_Node_Base
{
public:
RB_Tree_Node (const KEY &k, const T &t);
diff --git a/ace/RB_Tree.i b/ace/RB_Tree.i
index c866648469f..480b9582ac1 100644
--- a/ace/RB_Tree.i
+++ b/ace/RB_Tree.i
@@ -20,14 +20,14 @@ RB_Tree_Node<KEY, T>::item ()
// item accessor
template <class KEY, class T> ACE_INLINE void
-RB_Tree_Node<KEY, T>::color (RB_Tree_Node_Color c)
+RB_Tree_Node<KEY, T>::color (RB_Tree_Node<KEY, T>::RB_Tree_Node_Color c)
{
color_ = c;
}
// set color of the node
template <class KEY, class T>
-ACE_INLINE RB_Tree_Node_Color
+ACE_INLINE RB_Tree_Node<KEY, T>::RB_Tree_Node_Color
RB_Tree_Node<KEY, T>::color ()
{
return color_;