Lines Matching defs:D
24 template <typename T> bool isTypedefAnonRecord(const T *D) {
25 if (const auto *C = dyn_cast<CXXRecordDecl>(D)) {
36 bool MapASTVisitor::mapDecl(const T *D, bool IsDefinition) {
38 if (D->getASTContext().getSourceManager().isInSystemHeader(D->getLocation()))
42 if (D->getParentFunctionOrMethod())
47 if (index::generateUSRForDecl(D, USR))
53 if (USRVisited.count(Visited) && !isTypedefAnonRecord<T>(D))
61 getFile(D, D->getASTContext(), CDCtx.SourceRoot, IsFileInRootDir);
62 auto I = serialize::emitInfo(D, getComment(D, D->getASTContext()),
63 getLine(D, D->getASTContext()), File,
77 bool MapASTVisitor::VisitNamespaceDecl(const NamespaceDecl *D) {
78 return mapDecl(D, /*isDefinition=*/true);
81 bool MapASTVisitor::VisitRecordDecl(const RecordDecl *D) {
82 return mapDecl(D, D->isThisDeclarationADefinition());
85 bool MapASTVisitor::VisitEnumDecl(const EnumDecl *D) {
86 return mapDecl(D, D->isThisDeclarationADefinition());
89 bool MapASTVisitor::VisitCXXMethodDecl(const CXXMethodDecl *D) {
90 return mapDecl(D, D->isThisDeclarationADefinition());
93 bool MapASTVisitor::VisitFunctionDecl(const FunctionDecl *D) {
95 if (isa<CXXMethodDecl>(D))
97 return mapDecl(D, D->isThisDeclarationADefinition());
100 bool MapASTVisitor::VisitTypedefDecl(const TypedefDecl *D) {
101 return mapDecl(D, /*isDefinition=*/true);
104 bool MapASTVisitor::VisitTypeAliasDecl(const TypeAliasDecl *D) {
105 return mapDecl(D, /*isDefinition=*/true);
109 MapASTVisitor::getComment(const NamedDecl *D, const ASTContext &Context) const {
110 RawComment *Comment = Context.getRawCommentForDeclNoCache(D);
114 return Comment->parse(Context, nullptr, D);
119 int MapASTVisitor::getLine(const NamedDecl *D,
121 return Context.getSourceManager().getPresumedLoc(D->getBeginLoc()).getLine();
124 llvm::SmallString<128> MapASTVisitor::getFile(const NamedDecl *D,
129 .getPresumedLoc(D->getBeginLoc())