ACT Library
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
ActBody_Loop Class Reference

This holds information about loops that has to be unrolled. Loops can be of different types. More...

#include <body.h>

Inheritance diagram for ActBody_Loop:
ActBody

Public Member Functions

 ActBody_Loop (int line, const char *_id, Expr *_lo, Expr *_hi, ActBody *_b)
 
void Expand (ActNamespace *, Scope *)
 
void Print (FILE *fp)
 
ActBodyClone ()
 
ActBodygetBody ()
 
- Public Member Functions inherited from ActBody
 ActBody (int line)
 
virtual ~ActBody ()
 
void Append (ActBody *b)
 
void insertNext (ActBody *b)
 
ActBodyTail ()
 
ActBodyNext ()
 
virtual ActBodyClone ()
 
virtual void Expand (ActNamespace *, Scope *)
 
void Expandlist (ActNamespace *, Scope *)
 
virtual void Print (FILE *)
 
void updateInstType (list_t *namelist, InstType *it)
 
int getLine ()
 

Private Attributes

const char * id
 
Exprlo
 
Exprhi
 
ActBodyb
 

Additional Inherited Members

- Protected Attributes inherited from ActBody
int _line
 saved away line number information
 

Detailed Description

This holds information about loops that has to be unrolled. Loops can be of different types.

Constructor & Destructor Documentation

◆ ActBody_Loop()

ActBody_Loop::ActBody_Loop ( int  line,
const char *  _id,
Expr _lo,
Expr _hi,
ActBody _b 
)
inline

Loop for circuit construction.

Parameters
lineis the line number
_idis the loop variable
_lois the start index (NULL if this is a 0..hi-1 loop)
_hiis the high index for the loop
_bis the body to be replicated

Member Function Documentation

◆ Clone()

ActBody * ActBody_Loop::Clone ( )
virtual
Returns
a deep copy of the body item list

Reimplemented from ActBody.

◆ Expand()

void ActBody_Loop::Expand ( ActNamespace ,
Scope  
)
virtual

Expand out the current body item, updating the necessary data structures as the expansion process proceeds.

Reimplemented from ActBody.

◆ getBody()

ActBody * ActBody_Loop::getBody ( )
inline
Returns
the loop body

◆ Print()

void ActBody_Loop::Print ( FILE *  )
virtual

Print the body item list to the specified file

Reimplemented from ActBody.

Member Data Documentation

◆ b

ActBody* ActBody_Loop::b
private

body of the loop

◆ hi

Expr * ActBody_Loop::hi
private

range

◆ id

const char* ActBody_Loop::id
private

loop variable

◆ lo

Expr* ActBody_Loop::lo
private

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