diff options
author | Chris Lattner <sabre@nondot.org> | 2002-10-10 20:36:37 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-10-10 20:36:37 +0000 |
commit | c582c66f630ddfcb2697291f22a857821334db9d (patch) | |
tree | 0012c754eeab802c105a916e15729223e07b081d /include/llvm/Analysis/DataStructureGraph.h | |
parent | 7a11a94183b82f067214927c6f0d76bbbde9c0f7 (diff) |
Rename DataStructureGraph.h to DSGraphTraits.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4107 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/DataStructureGraph.h')
-rw-r--r-- | include/llvm/Analysis/DataStructureGraph.h | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/include/llvm/Analysis/DataStructureGraph.h b/include/llvm/Analysis/DataStructureGraph.h deleted file mode 100644 index d82e2e5b1b..0000000000 --- a/include/llvm/Analysis/DataStructureGraph.h +++ /dev/null @@ -1,73 +0,0 @@ -//===- DataStructureGraph.h - Provide graph classes --------------*- C++ -*--=// -// -// This file provides GraphTraits specializations for the DataStructure graph -// nodes, allowing datastructure graphs to be processed by generic graph -// algorithms. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_ANALYSIS_DATASTRUCTURE_GRAPH_H -#define LLVM_ANALYSIS_DATASTRUCTURE_GRAPH_H - -#include "llvm/Analysis/DataStructure.h" -#include "Support/GraphTraits.h" -#include "Support/iterator" - -#if 0 - -class DSNodeIterator : public forward_iterator<DSNode, ptrdiff_t> { - friend class DSNode; - DSNode * const Node; - unsigned Link; - - typedef DSNodeIterator _Self; - - DSNodeIterator(DSNode *N) : Node(N), Link(0) { // begin iterator - unsigned NumLinks = Node->getNumLinks(); - while (Link < NumLinks && Node->getLink(Link) == 0) - ++Link; - } - DSNodeIterator(DSNode *N, bool) // Create end iterator - : Node(N), Link(N->getNumLinks()) { - } -public: - - bool operator==(const _Self& x) const { - return Link == x.Link; - } - bool operator!=(const _Self& x) const { return !operator==(x); } - - pointer operator*() const { - return Node->getLink(Link); - } - pointer operator->() const { return operator*(); } - - _Self& operator++() { // Preincrement - unsigned NumLinks = Node->getNumLinks(); - do { - ++Link; - } while (Link < NumLinks && Node->getLink(Link) != 0); - return *this; - } - _Self operator++(int) { // Postincrement - _Self tmp = *this; ++*this; return tmp; - } -}; - - -template <> struct GraphTraits<DSNode*> { - typedef DSNode NodeType; - typedef DSNode::iterator ChildIteratorType; - - static NodeType *getEntryNode(DSNode *N) { return N; } - static ChildIteratorType child_begin(NodeType *N) { return N->begin(); } - static ChildIteratorType child_end(NodeType *N) { return N->end(); } -}; - -// Provide iterators for DSNode... -inline DSNode::iterator DSNode::begin() { return DSNodeIterator(this); } -inline DSNode::iterator DSNode::end() { return DSNodeIterator(this, false); } - -#endif - -#endif |