23 QualType q = fd->getType();
26 if (IdentifierInfo *info = fd->getIdentifier()) {
27 fname = info->getNameStart();
30 const Type *tp = q.getTypePtr();
36 FindTemplateTypes::argVectorType::iterator ait = args.begin();
37 if (args.size() == 0) {
43 string template_type_name{ait->getTypeName()};
44 if (template_type_name ==
"sc_fifo_in") {
48 else if (template_type_name ==
"sc_fifo_out") {
52 else if (template_type_name ==
"sc_fifo_inout") {
64 _os <<
"\n================= Find Interfaces ================\n";
68 mit != mitend; mit++) {
69 _os <<
"\n:>> " << mit->first;
70 (mit->second)->printTemplateArguments(
_os);
76 mit != mitend; mit++) {
77 _os <<
"\n:>> " << mit->first;
78 (mit->second)->printTemplateArguments(
_os);
84 mit != mitend; mit++) {
85 _os <<
"\n:>> " << mit->first;
86 (mit->second)->printTemplateArguments(
_os);
88 _os <<
"\n================= END Find Interfaces ================\n\n";
95 mit != mitend; mit++) {
102 mit != mitend; mit++) {
109 mit != mitend; mit++) {
virtual ~FindTLMInterfaces()
interfaceType _outInterfaces
interfaceType getInputInterfaces()
interfaceType _inoutInterfaces
std::pair< string, FindTemplateTypes * > kvType
interfaceType _inInterfaces
virtual bool VisitFieldDecl(FieldDecl *)
interfaceType getInputOutputInterfaces()
FindTLMInterfaces(CXXRecordDecl *, llvm::raw_ostream &)
interfaceType getOutputInterfaces()
std::map< string, FindTemplateTypes * > interfaceType
std::vector< TemplateTypePtr > type_vector_t
void Enumerate(const clang::Type *type)