systemc-clang 2.0.0
Parsing SystemC constructs
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
systemc_clang::Tree< T > Class Template Reference

#include <Tree.h>

Classes

class  const_dft_iterator
 Iterators. More...
 
class  dft_iterator
 

Public Types

typedef TreeNode< T > * TreeNodePtr
 
typedef std::vector< TreeNodePtrVectorTreePtr
 

Public Member Functions

 Tree ()
 
 Tree (const Tree &from)
 
 ~Tree ()
 
void dump (llvm::raw_ostream &outstream=llvm::outs())
 
std::size_t size () const
 
void setRoot (const TreeNodePtr from)
 
const TreeNodePtr getRoot () const
 
bool foundNode (TreeNodePtr node) const
 
bool hasChildren (TreeNodePtr node)
 
const VectorTreePtrgetChildren (TreeNodePtr node)
 
TreeNodePtr addNode (T data)
 
void addEdge (const TreeNodePtr from, const TreeNodePtr to)
 
void resetDiscovered ()
 
std::string bft (TreeNodePtr root)
 
std::string dft (TreeNodePtr root=nullptr)
 
const_dft_iterator begin () const
 
const_dft_iterator end () const
 
dft_iterator begin ()
 
dft_iterator end ()
 

Private Attributes

std::map< TreeNodePtr, std::vector< TreeNodePtr > > adj_list_
 
TreeNodePtr root_
 
bool run_dft_
 
bool run_bft_
 
std::vector< TreeNodePtrnodes_bft_
 
std::vector< TreeNodePtrnodes_dft_
 

Detailed Description

template<typename T>
class systemc_clang::Tree< T >

Definition at line 65 of file Tree.h.

Member Typedef Documentation

◆ TreeNodePtr

template<typename T >
typedef TreeNode<T>* systemc_clang::Tree< T >::TreeNodePtr

Definition at line 67 of file Tree.h.

◆ VectorTreePtr

template<typename T >
typedef std::vector<TreeNodePtr> systemc_clang::Tree< T >::VectorTreePtr

Definition at line 68 of file Tree.h.

Constructor & Destructor Documentation

◆ Tree() [1/2]

template<typename T >
systemc_clang::Tree< T >::Tree ( )
inline

Definition at line 83 of file Tree.h.

◆ Tree() [2/2]

template<typename T >
systemc_clang::Tree< T >::Tree ( const Tree< T > & from)
inline

Definition at line 85 of file Tree.h.

◆ ~Tree()

template<typename T >
systemc_clang::Tree< T >::~Tree ( )
inline

Definition at line 94 of file Tree.h.

Member Function Documentation

◆ addEdge()

template<typename T >
void systemc_clang::Tree< T >::addEdge ( const TreeNodePtr from,
const TreeNodePtr to )
inline

Definition at line 148 of file Tree.h.

◆ addNode()

template<typename T >
TreeNodePtr systemc_clang::Tree< T >::addNode ( T data)
inline

Definition at line 141 of file Tree.h.

◆ begin() [1/2]

template<typename T >
dft_iterator systemc_clang::Tree< T >::begin ( )
inline

Definition at line 344 of file Tree.h.

◆ begin() [2/2]

template<typename T >
const_dft_iterator systemc_clang::Tree< T >::begin ( ) const
inline

Definition at line 300 of file Tree.h.

◆ bft()

template<typename T >
std::string systemc_clang::Tree< T >::bft ( TreeNodePtr root)
inline

Definition at line 172 of file Tree.h.

◆ dft()

template<typename T >
std::string systemc_clang::Tree< T >::dft ( TreeNodePtr root = nullptr)
inline

Definition at line 205 of file Tree.h.

◆ dump()

template<typename T >
void systemc_clang::Tree< T >::dump ( llvm::raw_ostream & outstream = llvm::outs())
inline

Definition at line 105 of file Tree.h.

◆ end() [1/2]

template<typename T >
dft_iterator systemc_clang::Tree< T >::end ( )
inline

Definition at line 346 of file Tree.h.

◆ end() [2/2]

template<typename T >
const_dft_iterator systemc_clang::Tree< T >::end ( ) const
inline

Definition at line 302 of file Tree.h.

◆ foundNode()

template<typename T >
bool systemc_clang::Tree< T >::foundNode ( TreeNodePtr node) const
inline

Definition at line 123 of file Tree.h.

◆ getChildren()

template<typename T >
const VectorTreePtr & systemc_clang::Tree< T >::getChildren ( TreeNodePtr node)
inline

Definition at line 139 of file Tree.h.

◆ getRoot()

template<typename T >
const TreeNodePtr systemc_clang::Tree< T >::getRoot ( ) const
inline

Definition at line 121 of file Tree.h.

◆ hasChildren()

template<typename T >
bool systemc_clang::Tree< T >::hasChildren ( TreeNodePtr node)
inline

Definition at line 131 of file Tree.h.

◆ resetDiscovered()

template<typename T >
void systemc_clang::Tree< T >::resetDiscovered ( )
inline

Definition at line 166 of file Tree.h.

◆ setRoot()

template<typename T >
void systemc_clang::Tree< T >::setRoot ( const TreeNodePtr from)
inline

Definition at line 119 of file Tree.h.

◆ size()

template<typename T >
std::size_t systemc_clang::Tree< T >::size ( ) const
inline

Definition at line 117 of file Tree.h.

Member Data Documentation

◆ adj_list_

template<typename T >
std::map<TreeNodePtr, std::vector<TreeNodePtr> > systemc_clang::Tree< T >::adj_list_
private

Definition at line 74 of file Tree.h.

◆ nodes_bft_

template<typename T >
std::vector<TreeNodePtr> systemc_clang::Tree< T >::nodes_bft_
private

Definition at line 79 of file Tree.h.

◆ nodes_dft_

template<typename T >
std::vector<TreeNodePtr> systemc_clang::Tree< T >::nodes_dft_
private

Definition at line 80 of file Tree.h.

◆ root_

template<typename T >
TreeNodePtr systemc_clang::Tree< T >::root_
private

Definition at line 75 of file Tree.h.

◆ run_bft_

template<typename T >
bool systemc_clang::Tree< T >::run_bft_
private

Definition at line 78 of file Tree.h.

◆ run_dft_

template<typename T >
bool systemc_clang::Tree< T >::run_dft_
private

Definition at line 77 of file Tree.h.


The documentation for this class was generated from the following file: