CBMC
loop_analysist< T, C > Class Template Reference

#include <loop_analysis.h>

+ Inheritance diagram for loop_analysist< T, C >:
+ Collaboration diagram for loop_analysist< T, C >:

Public Types

typedef loop_templatet< T, C > loopt
 
typedef std::map< T, loopt, C > loop_mapt
 

Public Member Functions

virtual void output (std::ostream &) const
 Print all natural loops that were found. More...
 
bool is_loop_header (const T instruction) const
 Returns true if instruction is the header of any loop. More...
 
 loop_analysist ()=default
 

Public Attributes

loop_mapt loop_map
 

Detailed Description

template<class T, typename C>
class loop_analysist< T, C >

Definition at line 81 of file loop_analysis.h.

Member Typedef Documentation

◆ loop_mapt

template<class T , typename C >
typedef std::map<T, loopt, C> loop_analysist< T, C >::loop_mapt

Definition at line 86 of file loop_analysis.h.

◆ loopt

template<class T , typename C >
typedef loop_templatet<T, C> loop_analysist< T, C >::loopt

Definition at line 84 of file loop_analysis.h.

Constructor & Destructor Documentation

◆ loop_analysist()

template<class T , typename C >
loop_analysist< T, C >::loop_analysist ( )
default

Member Function Documentation

◆ is_loop_header()

template<class T , typename C >
bool loop_analysist< T, C >::is_loop_header ( const T  instruction) const
inline

Returns true if instruction is the header of any loop.

Definition at line 93 of file loop_analysis.h.

◆ output()

template<class T , typename C >
void loop_analysist< T, C >::output ( std::ostream &  out) const
virtual

Print all natural loops that were found.

Reimplemented in lexical_loops_templatet< P, T, C >.

Definition at line 170 of file loop_analysis.h.

Member Data Documentation

◆ loop_map

template<class T , typename C >
loop_mapt loop_analysist< T, C >::loop_map

Definition at line 88 of file loop_analysis.h.


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