yosys-master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
RTLIL::Process Struct Reference

#include <rtlil.h>

+ Collaboration diagram for RTLIL::Process:

Public Member Functions

 ~Process ()
 
template<typename T >
void rewrite_sigspecs (T functor)
 
RTLIL::Processclone () const
 

Data Fields

RTLIL::IdString name
 
RTLIL_ATTRIBUTE_MEMBERS
RTLIL::CaseRule 
root_case
 
std::vector< RTLIL::SyncRule * > syncs
 

Detailed Description

Definition at line 1152 of file rtlil.h.

Constructor & Destructor Documentation

RTLIL::Process::~Process ( )

Definition at line 3147 of file rtlil.cc.

3148 {
3149  for (auto it = syncs.begin(); it != syncs.end(); it++)
3150  delete *it;
3151 }
std::vector< RTLIL::SyncRule * > syncs
Definition: rtlil.h:1157

Member Function Documentation

RTLIL::Process * RTLIL::Process::clone ( ) const

Definition at line 3153 of file rtlil.cc.

3154 {
3155  RTLIL::Process *new_proc = new RTLIL::Process;
3156 
3157  new_proc->name = name;
3158  new_proc->attributes = attributes;
3159 
3160  RTLIL::CaseRule *rc_ptr = root_case.clone();
3161  new_proc->root_case = *rc_ptr;
3162  rc_ptr->switches.clear();
3163  delete rc_ptr;
3164 
3165  for (auto &it : syncs)
3166  new_proc->syncs.push_back(it->clone());
3167 
3168  return new_proc;
3169 }
RTLIL::CaseRule * clone() const
Definition: rtlil.cc:3111
RTLIL::IdString name
Definition: rtlil.h:1154
std::vector< RTLIL::SyncRule * > syncs
Definition: rtlil.h:1157
std::vector< RTLIL::SwitchRule * > switches
Definition: rtlil.h:1121
RTLIL_ATTRIBUTE_MEMBERS RTLIL::CaseRule root_case
Definition: rtlil.h:1156

+ Here is the call graph for this function:

template<typename T >
void RTLIL::Process::rewrite_sigspecs ( functor)

Definition at line 1215 of file rtlil.h.

1216 {
1217  root_case.rewrite_sigspecs(functor);
1218  for (auto it : syncs)
1219  it->rewrite_sigspecs(functor);
1220 }
void rewrite_sigspecs(T functor)
Definition: rtlil.h:1185
std::vector< RTLIL::SyncRule * > syncs
Definition: rtlil.h:1157
RTLIL_ATTRIBUTE_MEMBERS RTLIL::CaseRule root_case
Definition: rtlil.h:1156

Field Documentation

RTLIL::IdString RTLIL::Process::name

Definition at line 1154 of file rtlil.h.

RTLIL_ATTRIBUTE_MEMBERS RTLIL::CaseRule RTLIL::Process::root_case

Definition at line 1156 of file rtlil.h.

std::vector<RTLIL::SyncRule*> RTLIL::Process::syncs

Definition at line 1157 of file rtlil.h.


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