systemc-clang 2.0.0
Parsing SystemC constructs
Loading...
Searching...
No Matches
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< TreeNodePtr > VectorTreePtr
 

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 VectorTreePtr & getChildren (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< TreeNodePtr > nodes_bft_
 
std::vector< TreeNodePtr > nodes_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 >
TreeNode<T>* systemc_clang::Tree< T >::TreeNodePtr

Definition at line 67 of file Tree.h.

◆ VectorTreePtr

template<typename T >
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: