ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DataFlowAnalysis< Node, Data > Class Template Referenceabstract

#include <DataFlowAnalysis.h>

Inheritance diagram for DataFlowAnalysis< Node, Data >:
Collaboration diagram for DataFlowAnalysis< Node, Data >:

Public Types

typedef CFGImplTemplate< Node,
CFGEdgeImpl >::NodeIterator 
NodeIterator
 
typedef CFGImplTemplate< Node,
CFGEdgeImpl >::EdgeIterator 
EdgeIterator
 

Public Member Functions

 DataFlowAnalysis ()
 
void operator() (AstInterface &fa, const AstNodePtr &head)
 

Private Member Functions

virtual Data meet_data (const Data &d1, const Data &d2)=0
 
virtual Data get_empty_data () const =0
 
virtual void FinalizeCFG (AstInterface &fa)=0
 

Detailed Description

template<class Node, class Data>
class DataFlowAnalysis< Node, Data >

Definition at line 20 of file DataFlowAnalysis.h.

Member Typedef Documentation

template<class Node, class Data>
typedef CFGImplTemplate<Node, CFGEdgeImpl>::NodeIterator DataFlowAnalysis< Node, Data >::NodeIterator

Definition at line 26 of file DataFlowAnalysis.h.

template<class Node, class Data>
typedef CFGImplTemplate<Node, CFGEdgeImpl>::EdgeIterator DataFlowAnalysis< Node, Data >::EdgeIterator

Definition at line 27 of file DataFlowAnalysis.h.

Constructor & Destructor Documentation

template<class Node, class Data>
DataFlowAnalysis< Node, Data >::DataFlowAnalysis ( )

Member Function Documentation

template<class Node, class Data>
virtual Data DataFlowAnalysis< Node, Data >::meet_data ( const Data &  d1,
const Data &  d2 
)
privatepure virtual

Implemented in ReachingDefinitionAnalysis.

template<class Node, class Data>
virtual Data DataFlowAnalysis< Node, Data >::get_empty_data ( ) const
privatepure virtual

Implemented in ReachingDefinitionAnalysis.

template<class Node, class Data>
virtual void DataFlowAnalysis< Node, Data >::FinalizeCFG ( AstInterface &  fa)
privatepure virtual

Implemented in ReachingDefinitionAnalysis.

template<class Node, class Data>
void DataFlowAnalysis< Node, Data >::operator() ( AstInterface &  fa,
const AstNodePtr &  head 
)

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