ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/ccscs20/NullNode.hpp
(Generate patch)

Comparing NullNode.hpp (file contents):
Revision 1 by Douglas Thrift, 2004-05-12T23:36:53-07:00 vs.
Revision 4 by Douglas Thrift, 2004-05-13T17:50:29-07:00

# Line 9 | Line 9
9  
10   #include "Node.hpp"
11  
12 < template <typename Type>
12 > template<typename Type>
13   class NullNode : public Node<Type>
14   {
15   private:
16          bool null;
17        NullNode<Type>* next;
18        NullNode<Type>* previous;
17   public:
18 <        NullNode() : null(false) {}
18 >        NullNode() : null(true) {}
19          NullNode(const Type& value) : Node<Type>::Node(value), null(false) {}
20          ~NullNode() {}
21 +        bool contains(const Type& value, NullNode<Type>* end);
22   };
23  
24 + template<typename Type>
25 + bool NullNode<Type>::contains(const Type& value, NullNode<Type>* end)
26 + {
27 +        NullNode<Type>* another = Node<Type>::getNext() != NULL ?
28 +                Node<Type>::getNext() : Node<Type>::getPrevious();
29 +
30 +        if (null && end == this)
31 +        {
32 +                return false;
33 +        }
34 +        else if (!null && value == Node<Type>::getValue())
35 +        {
36 +                return true;
37 +        }
38 +        else return another->contains(value, end);
39 + }
40 +
41   #endif // _NullNode_hpp_

Comparing NullNode.hpp (property svn:eol-style):
Revision 1 by Douglas Thrift, 2004-05-12T23:36:53-07:00 vs.
Revision 4 by Douglas Thrift, 2004-05-13T17:50:29-07:00

# Line 0 | Line 1
1 + native

Comparing NullNode.hpp (property svn:keywords):
Revision 1 by Douglas Thrift, 2004-05-12T23:36:53-07:00 vs.
Revision 4 by Douglas Thrift, 2004-05-13T17:50:29-07:00

# Line 0 | Line 1
1 + Id

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines