Lines Matching refs:D
214 void dumpDecl(const Decl *D);
228 void dumpName(const NamedDecl *D);
417 void VisitLabelDecl(const LabelDecl *D);
418 void VisitTypedefDecl(const TypedefDecl *D);
419 void VisitEnumDecl(const EnumDecl *D);
420 void VisitRecordDecl(const RecordDecl *D);
421 void VisitEnumConstantDecl(const EnumConstantDecl *D);
422 void VisitIndirectFieldDecl(const IndirectFieldDecl *D);
423 void VisitFunctionDecl(const FunctionDecl *D);
424 void VisitFieldDecl(const FieldDecl *D);
425 void VisitVarDecl(const VarDecl *D);
426 void VisitFileScopeAsmDecl(const FileScopeAsmDecl *D);
427 void VisitImportDecl(const ImportDecl *D);
430 void VisitNamespaceDecl(const NamespaceDecl *D);
431 void VisitUsingDirectiveDecl(const UsingDirectiveDecl *D);
432 void VisitNamespaceAliasDecl(const NamespaceAliasDecl *D);
433 void VisitTypeAliasDecl(const TypeAliasDecl *D);
434 void VisitTypeAliasTemplateDecl(const TypeAliasTemplateDecl *D);
435 void VisitCXXRecordDecl(const CXXRecordDecl *D);
436 void VisitStaticAssertDecl(const StaticAssertDecl *D);
438 void VisitTemplateDeclSpecialization(const SpecializationDecl *D,
442 void VisitTemplateDecl(const TemplateDecl *D, bool DumpExplicitInst);
443 void VisitFunctionTemplateDecl(const FunctionTemplateDecl *D);
444 void VisitClassTemplateDecl(const ClassTemplateDecl *D);
446 const ClassTemplateSpecializationDecl *D);
448 const ClassTemplatePartialSpecializationDecl *D);
450 const ClassScopeFunctionSpecializationDecl *D);
451 void VisitBuiltinTemplateDecl(const BuiltinTemplateDecl *D);
452 void VisitVarTemplateDecl(const VarTemplateDecl *D);
454 const VarTemplateSpecializationDecl *D);
456 const VarTemplatePartialSpecializationDecl *D);
457 void VisitTemplateTypeParmDecl(const TemplateTypeParmDecl *D);
458 void VisitNonTypeTemplateParmDecl(const NonTypeTemplateParmDecl *D);
459 void VisitTemplateTemplateParmDecl(const TemplateTemplateParmDecl *D);
460 void VisitUsingDecl(const UsingDecl *D);
461 void VisitUnresolvedUsingTypenameDecl(const UnresolvedUsingTypenameDecl *D);
462 void VisitUnresolvedUsingValueDecl(const UnresolvedUsingValueDecl *D);
463 void VisitUsingShadowDecl(const UsingShadowDecl *D);
464 void VisitLinkageSpecDecl(const LinkageSpecDecl *D);
465 void VisitAccessSpecDecl(const AccessSpecDecl *D);
466 void VisitFriendDecl(const FriendDecl *D);
469 void VisitObjCIvarDecl(const ObjCIvarDecl *D);
470 void VisitObjCMethodDecl(const ObjCMethodDecl *D);
471 void VisitObjCTypeParamDecl(const ObjCTypeParamDecl *D);
472 void VisitObjCCategoryDecl(const ObjCCategoryDecl *D);
473 void VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D);
474 void VisitObjCProtocolDecl(const ObjCProtocolDecl *D);
475 void VisitObjCInterfaceDecl(const ObjCInterfaceDecl *D);
476 void VisitObjCImplementationDecl(const ObjCImplementationDecl *D);
477 void VisitObjCCompatibleAliasDecl(const ObjCCompatibleAliasDecl *D);
478 void VisitObjCPropertyDecl(const ObjCPropertyDecl *D);
479 void VisitObjCPropertyImplDecl(const ObjCPropertyImplDecl *D);
480 void VisitBlockDecl(const BlockDecl *D);
689 void ASTDumper::dumpBareDeclRef(const Decl *D) { in dumpBareDeclRef() argument
692 OS << D->getDeclKindName(); in dumpBareDeclRef()
694 dumpPointer(D); in dumpBareDeclRef()
696 if (const NamedDecl *ND = dyn_cast<NamedDecl>(D)) { in dumpBareDeclRef()
701 if (const ValueDecl *VD = dyn_cast<ValueDecl>(D)) in dumpBareDeclRef()
705 void ASTDumper::dumpDeclRef(const Decl *D, const char *Label) { in dumpDeclRef() argument
706 if (!D) in dumpDeclRef()
712 dumpBareDeclRef(D); in dumpDeclRef()
735 for (auto *D : DC->noload_decls()) in dumpDeclContext() local
736 dumpDecl(D); in dumpDeclContext()
783 std::function<void(Decl *)> DumpWithPrev = [&](Decl *D) { in dumpLookups() argument
784 if (Decl *Prev = D->getPreviousDecl()) in dumpLookups()
786 dumpDecl(D); in dumpLookups()
830 static void dumpPreviousDeclImpl(raw_ostream &OS, const Mergeable<T> *D) { in dumpPreviousDeclImpl() argument
831 const T *First = D->getFirstDecl(); in dumpPreviousDeclImpl()
832 if (First != D) in dumpPreviousDeclImpl()
837 static void dumpPreviousDeclImpl(raw_ostream &OS, const Redeclarable<T> *D) { in dumpPreviousDeclImpl() argument
838 const T *Prev = D->getPreviousDecl(); in dumpPreviousDeclImpl()
845 static void dumpPreviousDecl(raw_ostream &OS, const Decl *D) { in dumpPreviousDecl() argument
846 switch (D->getKind()) { in dumpPreviousDecl()
849 return dumpPreviousDeclImpl(OS, cast<DERIVED##Decl>(D)); in dumpPreviousDecl()
979 void ASTDumper::dumpDecl(const Decl *D) { in dumpDecl() argument
981 if (!D) { in dumpDecl()
989 OS << D->getDeclKindName() << "Decl"; in dumpDecl()
991 dumpPointer(D); in dumpDecl()
992 if (D->getLexicalDeclContext() != D->getDeclContext()) in dumpDecl()
993 OS << " parent " << cast<Decl>(D->getDeclContext()); in dumpDecl()
994 dumpPreviousDecl(OS, D); in dumpDecl()
995 dumpSourceRange(D->getSourceRange()); in dumpDecl()
997 dumpLocation(D->getLocation()); in dumpDecl()
998 if (Module *M = D->getImportedOwningModule()) in dumpDecl()
1000 else if (Module *M = D->getLocalOwningModule()) in dumpDecl()
1002 if (auto *ND = dyn_cast<NamedDecl>(D)) in dumpDecl()
1003 for (Module *M : D->getASTContext().getModulesWithMergedDefinition( in dumpDecl()
1006 if (const NamedDecl *ND = dyn_cast<NamedDecl>(D)) in dumpDecl()
1009 if (D->isImplicit()) in dumpDecl()
1011 if (D->isUsed()) in dumpDecl()
1013 else if (D->isThisDeclarationReferenced()) in dumpDecl()
1015 if (D->isInvalidDecl()) in dumpDecl()
1017 if (const FunctionDecl *FD = dyn_cast<FunctionDecl>(D)) in dumpDecl()
1022 ConstDeclVisitor<ASTDumper>::Visit(D); in dumpDecl()
1024 for (Decl::attr_iterator I = D->attr_begin(), E = D->attr_end(); I != E; in dumpDecl()
1029 D->getASTContext().getLocalCommentForDeclUncached(D)) in dumpDecl()
1033 if (!isa<FunctionDecl>(*D) && !isa<ObjCMethodDecl>(*D) && in dumpDecl()
1034 hasNodes(dyn_cast<DeclContext>(D))) in dumpDecl()
1035 dumpDeclContext(cast<DeclContext>(D)); in dumpDecl()
1039 void ASTDumper::VisitLabelDecl(const LabelDecl *D) { in VisitLabelDecl() argument
1040 dumpName(D); in VisitLabelDecl()
1043 void ASTDumper::VisitTypedefDecl(const TypedefDecl *D) { in VisitTypedefDecl() argument
1044 dumpName(D); in VisitTypedefDecl()
1045 dumpType(D->getUnderlyingType()); in VisitTypedefDecl()
1046 if (D->isModulePrivate()) in VisitTypedefDecl()
1050 void ASTDumper::VisitEnumDecl(const EnumDecl *D) { in VisitEnumDecl() argument
1051 if (D->isScoped()) { in VisitEnumDecl()
1052 if (D->isScopedUsingClassTag()) in VisitEnumDecl()
1057 dumpName(D); in VisitEnumDecl()
1058 if (D->isModulePrivate()) in VisitEnumDecl()
1060 if (D->isFixed()) in VisitEnumDecl()
1061 dumpType(D->getIntegerType()); in VisitEnumDecl()
1064 void ASTDumper::VisitRecordDecl(const RecordDecl *D) { in VisitRecordDecl() argument
1065 OS << ' ' << D->getKindName(); in VisitRecordDecl()
1066 dumpName(D); in VisitRecordDecl()
1067 if (D->isModulePrivate()) in VisitRecordDecl()
1069 if (D->isCompleteDefinition()) in VisitRecordDecl()
1073 void ASTDumper::VisitEnumConstantDecl(const EnumConstantDecl *D) { in VisitEnumConstantDecl() argument
1074 dumpName(D); in VisitEnumConstantDecl()
1075 dumpType(D->getType()); in VisitEnumConstantDecl()
1076 if (const Expr *Init = D->getInitExpr()) in VisitEnumConstantDecl()
1080 void ASTDumper::VisitIndirectFieldDecl(const IndirectFieldDecl *D) { in VisitIndirectFieldDecl() argument
1081 dumpName(D); in VisitIndirectFieldDecl()
1082 dumpType(D->getType()); in VisitIndirectFieldDecl()
1084 for (auto *Child : D->chain()) in VisitIndirectFieldDecl()
1088 void ASTDumper::VisitFunctionDecl(const FunctionDecl *D) { in VisitFunctionDecl() argument
1089 dumpName(D); in VisitFunctionDecl()
1090 dumpType(D->getType()); in VisitFunctionDecl()
1092 StorageClass SC = D->getStorageClass(); in VisitFunctionDecl()
1095 if (D->isInlineSpecified()) in VisitFunctionDecl()
1097 if (D->isVirtualAsWritten()) in VisitFunctionDecl()
1099 if (D->isModulePrivate()) in VisitFunctionDecl()
1102 if (D->isPure()) in VisitFunctionDecl()
1104 else if (D->isDeletedAsWritten()) in VisitFunctionDecl()
1107 if (const FunctionProtoType *FPT = D->getType()->getAs<FunctionProtoType>()) { in VisitFunctionDecl()
1121 D->getTemplateSpecializationInfo()) in VisitFunctionDecl()
1125 I = D->getDeclsInPrototypeScope().begin(), in VisitFunctionDecl()
1126 E = D->getDeclsInPrototypeScope().end(); I != E; ++I) in VisitFunctionDecl()
1129 if (!D->param_begin() && D->getNumParams()) in VisitFunctionDecl()
1130 dumpChild([=] { OS << "<<NULL params x " << D->getNumParams() << ">>"; }); in VisitFunctionDecl()
1132 for (FunctionDecl::param_const_iterator I = D->param_begin(), in VisitFunctionDecl()
1133 E = D->param_end(); in VisitFunctionDecl()
1137 if (const CXXConstructorDecl *C = dyn_cast<CXXConstructorDecl>(D)) in VisitFunctionDecl()
1143 if (D->doesThisDeclarationHaveABody()) in VisitFunctionDecl()
1144 dumpStmt(D->getBody()); in VisitFunctionDecl()
1147 void ASTDumper::VisitFieldDecl(const FieldDecl *D) { in VisitFieldDecl() argument
1148 dumpName(D); in VisitFieldDecl()
1149 dumpType(D->getType()); in VisitFieldDecl()
1150 if (D->isMutable()) in VisitFieldDecl()
1152 if (D->isModulePrivate()) in VisitFieldDecl()
1155 if (D->isBitField()) in VisitFieldDecl()
1156 dumpStmt(D->getBitWidth()); in VisitFieldDecl()
1157 if (Expr *Init = D->getInClassInitializer()) in VisitFieldDecl()
1161 void ASTDumper::VisitVarDecl(const VarDecl *D) { in VisitVarDecl() argument
1162 dumpName(D); in VisitVarDecl()
1163 dumpType(D->getType()); in VisitVarDecl()
1164 StorageClass SC = D->getStorageClass(); in VisitVarDecl()
1167 switch (D->getTLSKind()) { in VisitVarDecl()
1172 if (D->isModulePrivate()) in VisitVarDecl()
1174 if (D->isNRVOVariable()) in VisitVarDecl()
1176 if (D->hasInit()) { in VisitVarDecl()
1177 switch (D->getInitStyle()) { in VisitVarDecl()
1182 dumpStmt(D->getInit()); in VisitVarDecl()
1186 void ASTDumper::VisitFileScopeAsmDecl(const FileScopeAsmDecl *D) { in VisitFileScopeAsmDecl() argument
1187 dumpStmt(D->getAsmString()); in VisitFileScopeAsmDecl()
1190 void ASTDumper::VisitImportDecl(const ImportDecl *D) { in VisitImportDecl() argument
1191 OS << ' ' << D->getImportedModule()->getFullModuleName(); in VisitImportDecl()
1198 void ASTDumper::VisitNamespaceDecl(const NamespaceDecl *D) { in VisitNamespaceDecl() argument
1199 dumpName(D); in VisitNamespaceDecl()
1200 if (D->isInline()) in VisitNamespaceDecl()
1202 if (!D->isOriginalNamespace()) in VisitNamespaceDecl()
1203 dumpDeclRef(D->getOriginalNamespace(), "original"); in VisitNamespaceDecl()
1206 void ASTDumper::VisitUsingDirectiveDecl(const UsingDirectiveDecl *D) { in VisitUsingDirectiveDecl() argument
1208 dumpBareDeclRef(D->getNominatedNamespace()); in VisitUsingDirectiveDecl()
1211 void ASTDumper::VisitNamespaceAliasDecl(const NamespaceAliasDecl *D) { in VisitNamespaceAliasDecl() argument
1212 dumpName(D); in VisitNamespaceAliasDecl()
1213 dumpDeclRef(D->getAliasedNamespace()); in VisitNamespaceAliasDecl()
1216 void ASTDumper::VisitTypeAliasDecl(const TypeAliasDecl *D) { in VisitTypeAliasDecl() argument
1217 dumpName(D); in VisitTypeAliasDecl()
1218 dumpType(D->getUnderlyingType()); in VisitTypeAliasDecl()
1221 void ASTDumper::VisitTypeAliasTemplateDecl(const TypeAliasTemplateDecl *D) { in VisitTypeAliasTemplateDecl() argument
1222 dumpName(D); in VisitTypeAliasTemplateDecl()
1223 dumpTemplateParameters(D->getTemplateParameters()); in VisitTypeAliasTemplateDecl()
1224 dumpDecl(D->getTemplatedDecl()); in VisitTypeAliasTemplateDecl()
1227 void ASTDumper::VisitCXXRecordDecl(const CXXRecordDecl *D) { in VisitCXXRecordDecl() argument
1228 VisitRecordDecl(D); in VisitCXXRecordDecl()
1229 if (!D->isCompleteDefinition()) in VisitCXXRecordDecl()
1232 for (const auto &I : D->bases()) { in VisitCXXRecordDecl()
1244 void ASTDumper::VisitStaticAssertDecl(const StaticAssertDecl *D) { in VisitStaticAssertDecl() argument
1245 dumpStmt(D->getAssertExpr()); in VisitStaticAssertDecl()
1246 dumpStmt(D->getMessage()); in VisitStaticAssertDecl()
1250 void ASTDumper::VisitTemplateDeclSpecialization(const SpecializationDecl *D, in VisitTemplateDeclSpecialization() argument
1254 for (auto *RedeclWithBadType : D->redecls()) { in VisitTemplateDeclSpecialization()
1288 dumpDeclRef(D); in VisitTemplateDeclSpecialization()
1292 void ASTDumper::VisitTemplateDecl(const TemplateDecl *D, in VisitTemplateDecl() argument
1294 dumpName(D); in VisitTemplateDecl()
1295 dumpTemplateParameters(D->getTemplateParameters()); in VisitTemplateDecl()
1297 dumpDecl(D->getTemplatedDecl()); in VisitTemplateDecl()
1299 for (auto *Child : D->specializations()) in VisitTemplateDecl()
1301 !D->isCanonicalDecl()); in VisitTemplateDecl()
1304 void ASTDumper::VisitFunctionTemplateDecl(const FunctionTemplateDecl *D) { in VisitFunctionTemplateDecl() argument
1308 VisitTemplateDecl(D, true); in VisitFunctionTemplateDecl()
1311 void ASTDumper::VisitClassTemplateDecl(const ClassTemplateDecl *D) { in VisitClassTemplateDecl() argument
1312 VisitTemplateDecl(D, false); in VisitClassTemplateDecl()
1316 const ClassTemplateSpecializationDecl *D) { in VisitClassTemplateSpecializationDecl() argument
1317 VisitCXXRecordDecl(D); in VisitClassTemplateSpecializationDecl()
1318 dumpTemplateArgumentList(D->getTemplateArgs()); in VisitClassTemplateSpecializationDecl()
1322 const ClassTemplatePartialSpecializationDecl *D) { in VisitClassTemplatePartialSpecializationDecl() argument
1323 VisitClassTemplateSpecializationDecl(D); in VisitClassTemplatePartialSpecializationDecl()
1324 dumpTemplateParameters(D->getTemplateParameters()); in VisitClassTemplatePartialSpecializationDecl()
1328 const ClassScopeFunctionSpecializationDecl *D) { in VisitClassScopeFunctionSpecializationDecl() argument
1329 dumpDeclRef(D->getSpecialization()); in VisitClassScopeFunctionSpecializationDecl()
1330 if (D->hasExplicitTemplateArgs()) in VisitClassScopeFunctionSpecializationDecl()
1331 dumpTemplateArgumentListInfo(D->templateArgs()); in VisitClassScopeFunctionSpecializationDecl()
1334 void ASTDumper::VisitVarTemplateDecl(const VarTemplateDecl *D) { in VisitVarTemplateDecl() argument
1335 VisitTemplateDecl(D, false); in VisitVarTemplateDecl()
1338 void ASTDumper::VisitBuiltinTemplateDecl(const BuiltinTemplateDecl *D) { in VisitBuiltinTemplateDecl() argument
1339 dumpName(D); in VisitBuiltinTemplateDecl()
1340 dumpTemplateParameters(D->getTemplateParameters()); in VisitBuiltinTemplateDecl()
1344 const VarTemplateSpecializationDecl *D) { in VisitVarTemplateSpecializationDecl() argument
1345 dumpTemplateArgumentList(D->getTemplateArgs()); in VisitVarTemplateSpecializationDecl()
1346 VisitVarDecl(D); in VisitVarTemplateSpecializationDecl()
1350 const VarTemplatePartialSpecializationDecl *D) { in VisitVarTemplatePartialSpecializationDecl() argument
1351 dumpTemplateParameters(D->getTemplateParameters()); in VisitVarTemplatePartialSpecializationDecl()
1352 VisitVarTemplateSpecializationDecl(D); in VisitVarTemplatePartialSpecializationDecl()
1355 void ASTDumper::VisitTemplateTypeParmDecl(const TemplateTypeParmDecl *D) { in VisitTemplateTypeParmDecl() argument
1356 if (D->wasDeclaredWithTypename()) in VisitTemplateTypeParmDecl()
1360 if (D->isParameterPack()) in VisitTemplateTypeParmDecl()
1362 dumpName(D); in VisitTemplateTypeParmDecl()
1363 if (D->hasDefaultArgument()) in VisitTemplateTypeParmDecl()
1364 dumpTemplateArgument(D->getDefaultArgument()); in VisitTemplateTypeParmDecl()
1367 void ASTDumper::VisitNonTypeTemplateParmDecl(const NonTypeTemplateParmDecl *D) { in VisitNonTypeTemplateParmDecl() argument
1368 dumpType(D->getType()); in VisitNonTypeTemplateParmDecl()
1369 if (D->isParameterPack()) in VisitNonTypeTemplateParmDecl()
1371 dumpName(D); in VisitNonTypeTemplateParmDecl()
1372 if (D->hasDefaultArgument()) in VisitNonTypeTemplateParmDecl()
1373 dumpTemplateArgument(D->getDefaultArgument()); in VisitNonTypeTemplateParmDecl()
1377 const TemplateTemplateParmDecl *D) { in VisitTemplateTemplateParmDecl() argument
1378 if (D->isParameterPack()) in VisitTemplateTemplateParmDecl()
1380 dumpName(D); in VisitTemplateTemplateParmDecl()
1381 dumpTemplateParameters(D->getTemplateParameters()); in VisitTemplateTemplateParmDecl()
1382 if (D->hasDefaultArgument()) in VisitTemplateTemplateParmDecl()
1383 dumpTemplateArgumentLoc(D->getDefaultArgument()); in VisitTemplateTemplateParmDecl()
1386 void ASTDumper::VisitUsingDecl(const UsingDecl *D) { in VisitUsingDecl() argument
1388 if (D->getQualifier()) in VisitUsingDecl()
1389 D->getQualifier()->print(OS, D->getASTContext().getPrintingPolicy()); in VisitUsingDecl()
1390 OS << D->getNameAsString(); in VisitUsingDecl()
1394 const UnresolvedUsingTypenameDecl *D) { in VisitUnresolvedUsingTypenameDecl() argument
1396 if (D->getQualifier()) in VisitUnresolvedUsingTypenameDecl()
1397 D->getQualifier()->print(OS, D->getASTContext().getPrintingPolicy()); in VisitUnresolvedUsingTypenameDecl()
1398 OS << D->getNameAsString(); in VisitUnresolvedUsingTypenameDecl()
1401 void ASTDumper::VisitUnresolvedUsingValueDecl(const UnresolvedUsingValueDecl *D) { in VisitUnresolvedUsingValueDecl() argument
1403 if (D->getQualifier()) in VisitUnresolvedUsingValueDecl()
1404 D->getQualifier()->print(OS, D->getASTContext().getPrintingPolicy()); in VisitUnresolvedUsingValueDecl()
1405 OS << D->getNameAsString(); in VisitUnresolvedUsingValueDecl()
1406 dumpType(D->getType()); in VisitUnresolvedUsingValueDecl()
1409 void ASTDumper::VisitUsingShadowDecl(const UsingShadowDecl *D) { in VisitUsingShadowDecl() argument
1411 dumpBareDeclRef(D->getTargetDecl()); in VisitUsingShadowDecl()
1414 void ASTDumper::VisitLinkageSpecDecl(const LinkageSpecDecl *D) { in VisitLinkageSpecDecl() argument
1415 switch (D->getLanguage()) { in VisitLinkageSpecDecl()
1421 void ASTDumper::VisitAccessSpecDecl(const AccessSpecDecl *D) { in VisitAccessSpecDecl() argument
1423 dumpAccessSpecifier(D->getAccess()); in VisitAccessSpecDecl()
1426 void ASTDumper::VisitFriendDecl(const FriendDecl *D) { in VisitFriendDecl() argument
1427 if (TypeSourceInfo *T = D->getFriendType()) in VisitFriendDecl()
1430 dumpDecl(D->getFriendDecl()); in VisitFriendDecl()
1437 void ASTDumper::VisitObjCIvarDecl(const ObjCIvarDecl *D) { in VisitObjCIvarDecl() argument
1438 dumpName(D); in VisitObjCIvarDecl()
1439 dumpType(D->getType()); in VisitObjCIvarDecl()
1440 if (D->getSynthesize()) in VisitObjCIvarDecl()
1443 switch (D->getAccessControl()) { in VisitObjCIvarDecl()
1462 void ASTDumper::VisitObjCMethodDecl(const ObjCMethodDecl *D) { in VisitObjCMethodDecl() argument
1463 if (D->isInstanceMethod()) in VisitObjCMethodDecl()
1467 dumpName(D); in VisitObjCMethodDecl()
1468 dumpType(D->getReturnType()); in VisitObjCMethodDecl()
1470 if (D->isThisDeclarationADefinition()) { in VisitObjCMethodDecl()
1471 dumpDeclContext(D); in VisitObjCMethodDecl()
1473 for (ObjCMethodDecl::param_const_iterator I = D->param_begin(), in VisitObjCMethodDecl()
1474 E = D->param_end(); in VisitObjCMethodDecl()
1479 if (D->isVariadic()) in VisitObjCMethodDecl()
1482 if (D->hasBody()) in VisitObjCMethodDecl()
1483 dumpStmt(D->getBody()); in VisitObjCMethodDecl()
1486 void ASTDumper::VisitObjCTypeParamDecl(const ObjCTypeParamDecl *D) { in VisitObjCTypeParamDecl() argument
1487 dumpName(D); in VisitObjCTypeParamDecl()
1488 switch (D->getVariance()) { in VisitObjCTypeParamDecl()
1501 if (D->hasExplicitBound()) in VisitObjCTypeParamDecl()
1503 dumpType(D->getUnderlyingType()); in VisitObjCTypeParamDecl()
1506 void ASTDumper::VisitObjCCategoryDecl(const ObjCCategoryDecl *D) { in VisitObjCCategoryDecl() argument
1507 dumpName(D); in VisitObjCCategoryDecl()
1508 dumpDeclRef(D->getClassInterface()); in VisitObjCCategoryDecl()
1509 dumpObjCTypeParamList(D->getTypeParamList()); in VisitObjCCategoryDecl()
1510 dumpDeclRef(D->getImplementation()); in VisitObjCCategoryDecl()
1511 for (ObjCCategoryDecl::protocol_iterator I = D->protocol_begin(), in VisitObjCCategoryDecl()
1512 E = D->protocol_end(); in VisitObjCCategoryDecl()
1517 void ASTDumper::VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D) { in VisitObjCCategoryImplDecl() argument
1518 dumpName(D); in VisitObjCCategoryImplDecl()
1519 dumpDeclRef(D->getClassInterface()); in VisitObjCCategoryImplDecl()
1520 dumpDeclRef(D->getCategoryDecl()); in VisitObjCCategoryImplDecl()
1523 void ASTDumper::VisitObjCProtocolDecl(const ObjCProtocolDecl *D) { in VisitObjCProtocolDecl() argument
1524 dumpName(D); in VisitObjCProtocolDecl()
1526 for (auto *Child : D->protocols()) in VisitObjCProtocolDecl()
1530 void ASTDumper::VisitObjCInterfaceDecl(const ObjCInterfaceDecl *D) { in VisitObjCInterfaceDecl() argument
1531 dumpName(D); in VisitObjCInterfaceDecl()
1532 dumpObjCTypeParamList(D->getTypeParamListAsWritten()); in VisitObjCInterfaceDecl()
1533 dumpDeclRef(D->getSuperClass(), "super"); in VisitObjCInterfaceDecl()
1535 dumpDeclRef(D->getImplementation()); in VisitObjCInterfaceDecl()
1536 for (auto *Child : D->protocols()) in VisitObjCInterfaceDecl()
1540 void ASTDumper::VisitObjCImplementationDecl(const ObjCImplementationDecl *D) { in VisitObjCImplementationDecl() argument
1541 dumpName(D); in VisitObjCImplementationDecl()
1542 dumpDeclRef(D->getSuperClass(), "super"); in VisitObjCImplementationDecl()
1543 dumpDeclRef(D->getClassInterface()); in VisitObjCImplementationDecl()
1544 for (ObjCImplementationDecl::init_const_iterator I = D->init_begin(), in VisitObjCImplementationDecl()
1545 E = D->init_end(); in VisitObjCImplementationDecl()
1550 void ASTDumper::VisitObjCCompatibleAliasDecl(const ObjCCompatibleAliasDecl *D) { in VisitObjCCompatibleAliasDecl() argument
1551 dumpName(D); in VisitObjCCompatibleAliasDecl()
1552 dumpDeclRef(D->getClassInterface()); in VisitObjCCompatibleAliasDecl()
1555 void ASTDumper::VisitObjCPropertyDecl(const ObjCPropertyDecl *D) { in VisitObjCPropertyDecl() argument
1556 dumpName(D); in VisitObjCPropertyDecl()
1557 dumpType(D->getType()); in VisitObjCPropertyDecl()
1559 if (D->getPropertyImplementation() == ObjCPropertyDecl::Required) in VisitObjCPropertyDecl()
1561 else if (D->getPropertyImplementation() == ObjCPropertyDecl::Optional) in VisitObjCPropertyDecl()
1564 ObjCPropertyDecl::PropertyAttributeKind Attrs = D->getPropertyAttributes(); in VisitObjCPropertyDecl()
1587 dumpDeclRef(D->getGetterMethodDecl(), "getter"); in VisitObjCPropertyDecl()
1589 dumpDeclRef(D->getSetterMethodDecl(), "setter"); in VisitObjCPropertyDecl()
1593 void ASTDumper::VisitObjCPropertyImplDecl(const ObjCPropertyImplDecl *D) { in VisitObjCPropertyImplDecl() argument
1594 dumpName(D->getPropertyDecl()); in VisitObjCPropertyImplDecl()
1595 if (D->getPropertyImplementation() == ObjCPropertyImplDecl::Synthesize) in VisitObjCPropertyImplDecl()
1599 dumpDeclRef(D->getPropertyDecl()); in VisitObjCPropertyImplDecl()
1600 dumpDeclRef(D->getPropertyIvarDecl()); in VisitObjCPropertyImplDecl()
1603 void ASTDumper::VisitBlockDecl(const BlockDecl *D) { in VisitBlockDecl() argument
1604 for (auto I : D->params()) in VisitBlockDecl()
1607 if (D->isVariadic()) in VisitBlockDecl()
1610 if (D->capturesCXXThis()) in VisitBlockDecl()
1613 for (const auto &I : D->captures()) { in VisitBlockDecl()
1628 dumpStmt(D->getBody()); in VisitBlockDecl()
2388 ASTDumper D(OS, Traits, SM); in dump() local
2389 D.dumpFullComment(FC); in dump()
2394 ASTDumper D(llvm::errs(), nullptr, nullptr, /*ShowColors*/true); in dumpColor() local
2395 D.dumpFullComment(FC); in dumpColor()