systemc-clang 2.0.0
Parsing SystemC constructs
Loading...
Searching...
No Matches
hnode::util Class Reference

#include <hNode.h>

Public Member Functions

 util ()
 
 ~util ()
 
bool checkNamespace (const FunctionDecl *fd)
 
bool isSCBuiltinType (const string &tstring, const Type *typ=NULL)
 
bool isSCFunc (const string &tstring)
 
bool isTypename (const string &tstring)
 
bool isSCMacro (const std::string &str_in)
 
bool isSCType (const string &tstring, const clang::Type *typ=NULL)
 

Static Public Member Functions

static void make_ident (string &nm)
 
static bool isposint (const std::string &str)
 

Public Attributes

const string scbuiltintype [numstr]
 
int scbtlen [numstr]
 
const set< std::string > sc_built_in_funcs
 

Static Public Attributes

static const int numstr = 8
 

Private Attributes

std::unordered_set< const Type * > types_seen = {}
 

Detailed Description

The util class provides small utility functions to generate and recognize C++ and SystemC conformant identifiers.

Definition at line 226 of file hNode.h.

Constructor & Destructor Documentation

◆ util()

hnode::util::util ( )
inline

Definition at line 247 of file hNode.h.

◆ ~util()

hnode::util::~util ( )
inline

Definition at line 252 of file hNode.h.

Member Function Documentation

◆ checkNamespace()

bool hnode::util::checkNamespace ( const FunctionDecl * fd)
inline

Definition at line 267 of file hNode.h.

◆ isposint()

static bool hnode::util::isposint ( const std::string & str)
inlinestatic

Definition at line 473 of file hNode.h.

◆ isSCBuiltinType()

bool hnode::util::isSCBuiltinType ( const string & tstring,
const Type * typ = NULL )
inline

Definition at line 389 of file hNode.h.

◆ isSCFunc()

bool hnode::util::isSCFunc ( const string & tstring)
inline

Definition at line 418 of file hNode.h.

◆ isSCMacro()

bool hnode::util::isSCMacro ( const std::string & str_in)
inline

Definition at line 430 of file hNode.h.

◆ isSCType()

bool hnode::util::isSCType ( const string & tstring,
const clang::Type * typ = NULL )
inline

Definition at line 438 of file hNode.h.

◆ isTypename()

bool hnode::util::isTypename ( const string & tstring)
inline

Definition at line 423 of file hNode.h.

◆ make_ident()

static void hnode::util::make_ident ( string & nm)
inlinestatic

Definition at line 254 of file hNode.h.

Member Data Documentation

◆ numstr

const int hnode::util::numstr = 8
static

Definition at line 232 of file hNode.h.

◆ sc_built_in_funcs

const set<std::string> hnode::util::sc_built_in_funcs
Initial value:
{
"concat", "wait", "range", "bit", "or_reduce", "xor_reduce", "nor_reduce","xnor_reduce", "and_reduce", "nand_reduce"}

Definition at line 244 of file hNode.h.

◆ scbtlen

int hnode::util::scbtlen[numstr]

Definition at line 243 of file hNode.h.

◆ scbuiltintype

const string hnode::util::scbuiltintype[numstr]
Initial value:
= {
"sc_uint",
"sc_int",
"sc_bigint",
"sc_biguint",
"sc_bv",
"sc_vector",
"sc_logic",
"sc_clock"
}

Definition at line 233 of file hNode.h.

◆ types_seen

std::unordered_set<const Type *> hnode::util::types_seen = {}
private

Definition at line 228 of file hNode.h.


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