PandA-2024.02
Public Member Functions | Protected Attributes
CdfgEdgeInfo Struct Reference

Information associated with an operation or basic block graph. More...

#include <cdfg_edge_info.hpp>

Inheritance diagram for CdfgEdgeInfo:
Inheritance graph
[legend]
Collaboration diagram for CdfgEdgeInfo:
Collaboration graph
[legend]

Public Member Functions

 CdfgEdgeInfo ()=default
 Constructor. More...
 
bool CdgEdgeT () const
 Function returning true when the edge is a then control dependence edge. More...
 
bool CdgEdgeF () const
 Function returning true when the edge is an else control dependence edge. More...
 
bool CfgEdgeT () const
 Function returning true when the edge is a then control flow edge. More...
 
bool CfgEdgeF () const
 Function returning true when the edge is an else control flow edge. More...
 
bool Switch () const
 Return true if it is an edge associated with a switch. More...
 
void add_nodeID (unsigned int nodeID, const int type)
 Add a nodeID of type type to this edge_info. More...
 
const CustomOrderedSet< unsigned int > & get_nodeID (const int selector) const
 Return the nodeID of type type associated with this edge information. More...
 
const std::string PrintLabels (const int selector, const BehavioralHelperConstRef BH) const
 Return the string of the labels associated with the edge. More...
 
- Public Member Functions inherited from EdgeInfo
 EdgeInfo ()=default
 Constructor. More...
 
virtual ~EdgeInfo ()=default
 Destructor. More...
 

Protected Attributes

std::map< int, CustomOrderedSet< unsigned int > > labels
 edge labels; key is the selector More...
 

Detailed Description

Information associated with an operation or basic block graph.

Definition at line 91 of file cdfg_edge_info.hpp.

Constructor & Destructor Documentation

◆ CdfgEdgeInfo()

CdfgEdgeInfo::CdfgEdgeInfo ( )
default

Constructor.

Member Function Documentation

◆ add_nodeID()

void CdfgEdgeInfo::add_nodeID ( unsigned int  nodeID,
const int  type 
)

Add a nodeID of type type to this edge_info.

Parameters
nodeIDis the nodeID
typeis the type

Definition at line 124 of file cdfg_edge_info.cpp.

References labels, and test_panda::type.

◆ CdgEdgeF()

bool CdfgEdgeInfo::CdgEdgeF ( ) const

Function returning true when the edge is an else control dependence edge.

Definition at line 56 of file cdfg_edge_info.cpp.

References CDG_SELECTOR, F_COND, and labels.

Referenced by Switch().

Here is the caller graph for this function:

◆ CdgEdgeT()

bool CdfgEdgeInfo::CdgEdgeT ( ) const

Function returning true when the edge is a then control dependence edge.

Definition at line 47 of file cdfg_edge_info.cpp.

References CDG_SELECTOR, labels, and T_COND.

Referenced by Switch().

Here is the caller graph for this function:

◆ CfgEdgeF()

bool CdfgEdgeInfo::CfgEdgeF ( ) const

Function returning true when the edge is an else control flow edge.

Definition at line 74 of file cdfg_edge_info.cpp.

References CFG_SELECTOR, F_COND, and labels.

Referenced by Switch().

Here is the caller graph for this function:

◆ CfgEdgeT()

bool CdfgEdgeInfo::CfgEdgeT ( ) const

Function returning true when the edge is a then control flow edge.

Definition at line 65 of file cdfg_edge_info.cpp.

References CFG_SELECTOR, labels, and T_COND.

Referenced by Switch().

Here is the caller graph for this function:

◆ get_nodeID()

const CustomOrderedSet< unsigned int > & CdfgEdgeInfo::get_nodeID ( const int  selector) const

Return the nodeID of type type associated with this edge information.

Parameters
typeis the type
Returns
the nodeID of type type

Definition at line 129 of file cdfg_edge_info.cpp.

References labels.

◆ PrintLabels()

const std::string CdfgEdgeInfo::PrintLabels ( const int  selector,
const BehavioralHelperConstRef  BH 
) const

Return the string of the labels associated with the edge.

Parameters
typeis the type of labels to be printed
BHis the helper used to print the labels

Definition at line 89 of file cdfg_edge_info.cpp.

References default_COND, F_COND, labels, BehavioralHelper::PrintVariable(), and T_COND.

Here is the call graph for this function:

◆ Switch()

bool CdfgEdgeInfo::Switch ( ) const

Return true if it is an edge associated with a switch.

Definition at line 83 of file cdfg_edge_info.cpp.

References CDG_SELECTOR, CdgEdgeF(), CdgEdgeT(), CFG_SELECTOR, CfgEdgeF(), CfgEdgeT(), and labels.

Here is the call graph for this function:

Field Documentation

◆ labels

std::map<int, CustomOrderedSet<unsigned int> > CdfgEdgeInfo::labels
protected

edge labels; key is the selector

Definition at line 95 of file cdfg_edge_info.hpp.

Referenced by add_nodeID(), CdgEdgeF(), CdgEdgeT(), CfgEdgeF(), CfgEdgeT(), OpEdgeInfo::FlgEdgeF(), OpEdgeInfo::FlgEdgeT(), get_nodeID(), PrintLabels(), and Switch().


The documentation for this struct was generated from the following files:

Generated on Mon Feb 12 2024 13:03:47 for PandA-2024.02 by doxygen 1.8.13