Lines Matching refs:clang
13 #include "clang/Sema/SemaConsumer.h"
32 class ASTResultSynthesizer : public clang::SemaConsumer
48 ASTResultSynthesizer(clang::ASTConsumer *passthrough,
63 void Initialize(clang::ASTContext &Context);
74 bool HandleTopLevelDecl(clang::DeclGroupRef D);
79 void HandleTranslationUnit(clang::ASTContext &Ctx);
84 void HandleTagDeclDefinition(clang::TagDecl *D);
89 void CompleteTentativeDefinition(clang::VarDecl *D);
94 void HandleVTable(clang::CXXRecordDecl *RD, bool DefinitionRequired);
108 void InitializeSema(clang::Sema &S);
123 void TransformTopLevelDecl(clang::Decl *D);
132 bool SynthesizeObjCMethodResult(clang::ObjCMethodDecl *MethodDecl);
140 bool SynthesizeFunctionResult(clang::FunctionDecl *FunDecl);
153 bool SynthesizeBodyResult(clang::CompoundStmt *Body,
154 clang::DeclContext *DC);
163 void RecordPersistentTypes(clang::DeclContext *FunDeclCtx);
173 void MaybeRecordPersistentType(clang::TypeDecl *D);
175 clang::ASTContext *m_ast_context; ///< The AST context to use for identifiers and types.
176 clang::ASTConsumer *m_passthrough; ///< The ASTConsumer down the chain, for passthrough. NULL if it's a SemaConsumer.
177 clang::SemaConsumer *m_passthrough_sema; ///< The SemaConsumer down the chain, for passthrough. NULL if it's an ASTConsumer.
179 clang::Sema *m_sema; ///< The Sema to use.