Lines Matching full:clang
21 #include <clang/AST/AST.h>
22 #include <clang/AST/ASTConsumer.h>
23 #include <clang/AST/Mangle.h>
24 #include <clang/AST/VTableBuilder.h>
25 #include <clang/Frontend/CompilerInstance.h>
39 ABIWrapper(clang::MangleContext *mangle_contextp,
40 clang::ASTContext *ast_contextp,
41 const clang::CompilerInstance *cip,
45 static std::string GetDeclSourceFile(const clang::Decl *decl,
46 const clang::CompilerInstance *cip);
48 static std::string GetMangledNameDecl(const clang::NamedDecl *decl,
49 clang::MangleContext *mangle_context);
52 std::string GetCachedDeclSourceFile(const clang::Decl *decl,
53 const clang::CompilerInstance *cip);
55 std::string GetKeyForTypeId(clang::QualType qual_type);
57 std::string TypeNameWithFinalDestination(clang::QualType qual_type);
59 bool SetupTemplateArguments(const clang::TemplateArgumentList *tl,
64 const clang::QualType qual_type,
69 std::string QualTypeToString(const clang::QualType &sweet_qt);
71 std::string GetTagDeclQualifiedName(const clang::TagDecl *decl);
73 bool CreateBasicNamedAndTypedDecl(clang::QualType,
76 bool CreateBasicNamedAndTypedDecl(clang::QualType canonical_type,
80 bool CreateExtendedType(clang::QualType canonical_type,
83 bool CreateAnonymousRecord(const clang::RecordDecl *decl);
85 std::string GetTypeLinkageName(const clang::Type *typep);
87 TypeAndCreationStatus SetTypeKind(const clang::QualType qtype,
90 std::string GetTypeUniqueId(const clang::TagDecl *tag_decl);
93 const clang::CompilerInstance *cip_;
94 clang::MangleContext *mangle_contextp_;
95 clang::ASTContext *ast_contextp_;
103 clang::MangleContext *mangle_contextp, clang::ASTContext *ast_contextp,
104 const clang::CompilerInstance *compiler_instance_p,
105 const clang::RecordDecl *record_decl, abi_util::IRDumper *ir_dumper,
111 const clang::RecordDecl *record_decl_;
121 const clang::CXXRecordDecl *cxx_record_decl);
124 const clang::CXXRecordDecl *cxx_record_decl,
128 const clang::CXXRecordDecl *cxx_record_decl);
130 std::string GetMangledRTTI(const clang::CXXRecordDecl *cxx_record_decl);
133 const clang::VTableComponent &vtable_component);
142 clang::MangleContext *mangle_contextp, clang::ASTContext *ast_contextp,
143 const clang::CompilerInstance *compiler_instance_p,
144 const clang::FunctionDecl *decl, abi_util::IRDumper *ir_dumper,
150 const clang::FunctionDecl *function_decl_;
173 clang::MangleContext *mangle_contextp, clang::ASTContext *ast_contextp,
174 const clang::CompilerInstance *compiler_instance_p,
175 const clang::FunctionType *function_type, abi_util::IRDumper *ir_dumper,
181 const clang::FunctionType *function_type_= nullptr;
188 clang::MangleContext *mangle_contextp, clang::ASTContext *ast_contextp,
189 const clang::CompilerInstance *compiler_instance_p,
190 const clang::EnumDecl *decl, abi_util::IRDumper *ir_dumper,
196 const clang::EnumDecl *enum_decl_;
208 clang::MangleContext *mangle_contextp, clang::ASTContext *ast_contextp,
209 const clang::CompilerInstance *compiler_instance_p,
210 const clang::VarDecl *decl, abi_util::IRDumper *ir_dumper,
216 const clang::VarDecl *global_var_decl_;