systemc-clang 2.0.0
Parsing SystemC constructs
Loading...
Searching...
No Matches
sc_ast_matchers::ModuleInstanceType Struct Reference

#include <ModuleInstanceType.h>

Public Types

typedef std::tuple< std::size_t, std::size_t, std::size_t > ArrayParamType
 

Public Member Functions

void add_instance_name (const std::string &name)
 
std::vector< std::string > getInstanceNames ()
 
clang::Decl * getInstanceTypeDecl () const
 
clang::Decl * getInstanceDecl () const
 
clang::ValueDecl * getParentDecl () const
 
std::string getVarName () const
 
void setArrayType ()
 Array handling.
 
void setArrayParameters (ArrayParamType parm)
 
ArrayParamType getArrayParameters ()
 
bool isArrayType ()
 
unsigned int getArrayDimension () const
 Return the array dimension, if the module instance is an array. 0 means a single instance k means kD array with a maximum of k = 3.
 
void addArraySizes (std::vector< llvm::APInt > sizes)
 
std::vector< llvm::APInt > getArraySizes ()
 
 ModuleInstanceType ()
 
 ModuleInstanceType (const ModuleInstanceType &rhs)
 
ModuleInstanceTypeoperator= (const ModuleInstanceType &rhs)
 
bool operator== (const ModuleInstanceType &rhs)
 
void dump ()
 

Public Attributes

std::string var_name
 
std::string var_type_name
 
std::string instance_name
 
std::string parent_name
 
bool is_field_decl
 
clang::Decl * type_decl
 
clang::Decl * instance_decl
 
clang::ValueDecl * parent_decl
 
bool is_array
 
std::vector< std::string > instance_names
 
bool is_array_
 
std::vector< llvm::APInt > array_sizes_
 
ArrayParamType array_parameters_
 

Detailed Description

Definition at line 16 of file ModuleInstanceType.h.

Member Typedef Documentation

◆ ArrayParamType

std::tuple<std::size_t, std::size_t, std::size_t> sc_ast_matchers::ModuleInstanceType::ArrayParamType

Definition at line 38 of file ModuleInstanceType.h.

Constructor & Destructor Documentation

◆ ModuleInstanceType() [1/2]

sc_ast_matchers::ModuleInstanceType::ModuleInstanceType ( )
inline

Definition at line 60 of file ModuleInstanceType.h.

◆ ModuleInstanceType() [2/2]

sc_ast_matchers::ModuleInstanceType::ModuleInstanceType ( const ModuleInstanceType & rhs)
inline

Definition at line 72 of file ModuleInstanceType.h.

Member Function Documentation

◆ add_instance_name()

void sc_ast_matchers::ModuleInstanceType::add_instance_name ( const std::string & name)
inline

Definition at line 30 of file ModuleInstanceType.h.

◆ addArraySizes()

void sc_ast_matchers::ModuleInstanceType::addArraySizes ( std::vector< llvm::APInt > sizes)
inline

Definition at line 57 of file ModuleInstanceType.h.

◆ dump()

void sc_ast_matchers::ModuleInstanceType::dump ( )
inline

Definition at line 115 of file ModuleInstanceType.h.

◆ getArrayDimension()

unsigned int sc_ast_matchers::ModuleInstanceType::getArrayDimension ( ) const
inline

Return the array dimension, if the module instance is an array. 0 means a single instance k means kD array with a maximum of k = 3.

Definition at line 55 of file ModuleInstanceType.h.

◆ getArrayParameters()

ArrayParamType sc_ast_matchers::ModuleInstanceType::getArrayParameters ( )
inline

Definition at line 49 of file ModuleInstanceType.h.

◆ getArraySizes()

std::vector< llvm::APInt > sc_ast_matchers::ModuleInstanceType::getArraySizes ( )
inline

Definition at line 58 of file ModuleInstanceType.h.

◆ getInstanceDecl()

clang::Decl * sc_ast_matchers::ModuleInstanceType::getInstanceDecl ( ) const
inline

Definition at line 42 of file ModuleInstanceType.h.

◆ getInstanceNames()

std::vector< std::string > sc_ast_matchers::ModuleInstanceType::getInstanceNames ( )
inline

Definition at line 33 of file ModuleInstanceType.h.

◆ getInstanceTypeDecl()

clang::Decl * sc_ast_matchers::ModuleInstanceType::getInstanceTypeDecl ( ) const
inline

Definition at line 41 of file ModuleInstanceType.h.

◆ getParentDecl()

clang::ValueDecl * sc_ast_matchers::ModuleInstanceType::getParentDecl ( ) const
inline

Definition at line 43 of file ModuleInstanceType.h.

◆ getVarName()

std::string sc_ast_matchers::ModuleInstanceType::getVarName ( ) const
inline

Definition at line 44 of file ModuleInstanceType.h.

◆ isArrayType()

bool sc_ast_matchers::ModuleInstanceType::isArrayType ( )
inline

Definition at line 50 of file ModuleInstanceType.h.

◆ operator=()

ModuleInstanceType & sc_ast_matchers::ModuleInstanceType::operator= ( const ModuleInstanceType & rhs)
inline

Definition at line 87 of file ModuleInstanceType.h.

◆ operator==()

bool sc_ast_matchers::ModuleInstanceType::operator== ( const ModuleInstanceType & rhs)
inline

Definition at line 103 of file ModuleInstanceType.h.

◆ setArrayParameters()

void sc_ast_matchers::ModuleInstanceType::setArrayParameters ( ArrayParamType parm)
inline

Definition at line 48 of file ModuleInstanceType.h.

◆ setArrayType()

void sc_ast_matchers::ModuleInstanceType::setArrayType ( )
inline

Array handling.

Definition at line 47 of file ModuleInstanceType.h.

Member Data Documentation

◆ array_parameters_

ArrayParamType sc_ast_matchers::ModuleInstanceType::array_parameters_

Definition at line 39 of file ModuleInstanceType.h.

◆ array_sizes_

std::vector<llvm::APInt> sc_ast_matchers::ModuleInstanceType::array_sizes_

Definition at line 37 of file ModuleInstanceType.h.

◆ instance_decl

clang::Decl* sc_ast_matchers::ModuleInstanceType::instance_decl

Definition at line 24 of file ModuleInstanceType.h.

◆ instance_name

std::string sc_ast_matchers::ModuleInstanceType::instance_name

Definition at line 19 of file ModuleInstanceType.h.

◆ instance_names

std::vector<std::string> sc_ast_matchers::ModuleInstanceType::instance_names

Definition at line 28 of file ModuleInstanceType.h.

◆ is_array

bool sc_ast_matchers::ModuleInstanceType::is_array

Definition at line 26 of file ModuleInstanceType.h.

◆ is_array_

bool sc_ast_matchers::ModuleInstanceType::is_array_

Definition at line 36 of file ModuleInstanceType.h.

◆ is_field_decl

bool sc_ast_matchers::ModuleInstanceType::is_field_decl

Definition at line 22 of file ModuleInstanceType.h.

◆ parent_decl

clang::ValueDecl* sc_ast_matchers::ModuleInstanceType::parent_decl

Definition at line 25 of file ModuleInstanceType.h.

◆ parent_name

std::string sc_ast_matchers::ModuleInstanceType::parent_name

Definition at line 21 of file ModuleInstanceType.h.

◆ type_decl

clang::Decl* sc_ast_matchers::ModuleInstanceType::type_decl

Definition at line 23 of file ModuleInstanceType.h.

◆ var_name

std::string sc_ast_matchers::ModuleInstanceType::var_name

Definition at line 17 of file ModuleInstanceType.h.

◆ var_type_name

std::string sc_ast_matchers::ModuleInstanceType::var_type_name

Definition at line 18 of file ModuleInstanceType.h.


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