Lines Matching defs:ASTDumper

1 //===--- ASTDumper.cpp - Dumping implementation for ASTs ------------------===//
30 // ASTDumper Visitor
80 class ASTDumper
81 : public ConstDeclVisitor<ASTDumper>, public ConstStmtVisitor<ASTDumper>,
82 public ConstCommentVisitor<ASTDumper> {
112 ASTDumper &Dumper;
116 IndentScope(ASTDumper &Dumper) : Dumper(Dumper) {
128 ASTDumper &Dumper;
130 ColorScope(ASTDumper &Dumper, TerminalColor Color)
142 ASTDumper(raw_ostream &OS, const CommandTraits *Traits,
148 ASTDumper(raw_ostream &OS, const CommandTraits *Traits,
154 ~ASTDumper() {
331 void ASTDumper::indent() {
360 void ASTDumper::unindent() {
366 void ASTDumper::lastChild() {
373 bool ASTDumper::hasMoreChildren() {
377 void ASTDumper::setMoreChildren(bool Value) {
381 void ASTDumper::dumpPointer(const void *Ptr) {
386 void ASTDumper::dumpLocation(SourceLocation Loc) {
413 void ASTDumper::dumpSourceRange(SourceRange R) {
430 void ASTDumper::dumpBareType(QualType T) {
444 void ASTDumper::dumpType(QualType T) {
449 void ASTDumper::dumpBareDeclRef(const Decl *D) {
465 void ASTDumper::dumpDeclRef(const Decl *D, const char *Label) {
475 void ASTDumper::dumpName(const NamedDecl *ND) {
482 bool ASTDumper::hasNodes(const DeclContext *DC) {
490 void ASTDumper::dumpDeclContext(const DeclContext *DC) {
510 void ASTDumper::dumpLookups(const DeclContext *DC) {
555 void ASTDumper::dumpAttr(const Attr *A) {
596 void ASTDumper::dumpAccessSpecifier(AccessSpecifier AS) {
612 void ASTDumper::dumpCXXCtorInitializer(const CXXCtorInitializer *Init) {
624 void ASTDumper::dumpTemplateParameters(const TemplateParameterList *TPL) {
633 void ASTDumper::dumpTemplateArgumentListInfo(
642 void ASTDumper::dumpTemplateArgumentLoc(const TemplateArgumentLoc &A) {
646 void ASTDumper::dumpTemplateArgumentList(const TemplateArgumentList &TAL) {
651 void ASTDumper::dumpTemplateArgument(const TemplateArgument &A, SourceRange R) {
706 void ASTDumper::dumpDecl(const Decl *D) {
734 ConstDeclVisitor<ASTDumper>::Visit(D);
753 void ASTDumper::VisitLabelDecl(const LabelDecl *D) {
757 void ASTDumper::VisitTypedefDecl(const TypedefDecl *D) {
764 void ASTDumper::VisitEnumDecl(const EnumDecl *D) {
778 void ASTDumper::VisitRecordDecl(const RecordDecl *D) {
785 void ASTDumper::VisitEnumConstantDecl(const EnumConstantDecl *D) {
794 void ASTDumper::VisitIndirectFieldDecl(const IndirectFieldDecl *D) {
806 void ASTDumper::VisitFunctionDecl(const FunctionDecl *D) {
896 void ASTDumper::VisitFieldDecl(const FieldDecl *D) {
921 void ASTDumper::VisitVarDecl(const VarDecl *D) {
942 void ASTDumper::VisitFileScopeAsmDecl(const FileScopeAsmDecl *D) {
947 void ASTDumper::VisitImportDecl(const ImportDecl *D) {
955 void ASTDumper::VisitNamespaceDecl(const NamespaceDecl *D) {
963 void ASTDumper::VisitUsingDirectiveDecl(const UsingDirectiveDecl *D) {
968 void ASTDumper::VisitNamespaceAliasDecl(const NamespaceAliasDecl *D) {
973 void ASTDumper::VisitTypeAliasDecl(const TypeAliasDecl *D) {
978 void ASTDumper::VisitTypeAliasTemplateDecl(const TypeAliasTemplateDecl *D) {
984 void ASTDumper::VisitCXXRecordDecl(const CXXRecordDecl *D) {
1002 void ASTDumper::VisitStaticAssertDecl(const StaticAssertDecl *D) {
1008 void ASTDumper::VisitFunctionTemplateDecl(const FunctionTemplateDecl *D) {
1036 void ASTDumper::VisitClassTemplateDecl(const ClassTemplateDecl *D) {
1067 void ASTDumper::VisitClassTemplateSpecializationDecl(
1073 void ASTDumper::VisitClassTemplatePartialSpecializationDecl(
1079 void ASTDumper::VisitClassScopeFunctionSpecializationDecl(
1086 void ASTDumper::VisitTemplateTypeParmDecl(const TemplateTypeParmDecl *D) {
1098 void ASTDumper::VisitNonTypeTemplateParmDecl(const NonTypeTemplateParmDecl *D) {
1107 void ASTDumper::VisitTemplateTemplateParmDecl(
1117 void ASTDumper::VisitUsingDecl(const UsingDecl *D) {
1123 void ASTDumper::VisitUnresolvedUsingTypenameDecl(
1130 void ASTDumper::VisitUnresolvedUsingValueDecl(const UnresolvedUsingValueDecl *D) {
1137 void ASTDumper::VisitUsingShadowDecl(const UsingShadowDecl *D) {
1142 void ASTDumper::VisitLinkageSpecDecl(const LinkageSpecDecl *D) {
1149 void ASTDumper::VisitAccessSpecDecl(const AccessSpecDecl *D) {
1154 void ASTDumper::VisitFriendDecl(const FriendDecl *D) {
1166 void ASTDumper::VisitObjCIvarDecl(const ObjCIvarDecl *D) {
1191 void ASTDumper::VisitObjCMethodDecl(const ObjCMethodDecl *D) {
1231 void ASTDumper::VisitObjCCategoryDecl(const ObjCCategoryDecl *D) {
1246 void ASTDumper::VisitObjCCategoryImplDecl(const ObjCCategoryImplDecl *D) {
1253 void ASTDumper::VisitObjCProtocolDecl(const ObjCProtocolDecl *D) {
1264 void ASTDumper::VisitObjCInterfaceDecl(const ObjCInterfaceDecl *D) {
1279 void ASTDumper::VisitObjCImplementationDecl(const ObjCImplementationDecl *D) {
1294 void ASTDumper::VisitObjCCompatibleAliasDecl(const ObjCCompatibleAliasDecl *D) {
1300 void ASTDumper::VisitObjCPropertyDecl(const ObjCPropertyDecl *D) {
1343 void ASTDumper::VisitObjCPropertyImplDecl(const ObjCPropertyImplDecl *D) {
1354 void ASTDumper::VisitBlockDecl(const BlockDecl *D) {
1391 void ASTDumper::dumpStmt(const Stmt *S) {
1406 ConstStmtVisitor<ASTDumper>::Visit(S);
1417 void ASTDumper::VisitStmt(const Stmt *Node) {
1426 void ASTDumper::VisitDeclStmt(const DeclStmt *Node) {
1437 void ASTDumper::VisitAttributedStmt(const AttributedStmt *Node) {
1448 void ASTDumper::VisitLabelStmt(const LabelStmt *Node) {
1453 void ASTDumper::VisitGotoStmt(const GotoStmt *Node) {
1463 void ASTDumper::VisitExpr(const Expr *Node) {
1527 void ASTDumper::VisitCastExpr(const CastExpr *Node) {
1538 void ASTDumper::VisitDeclRefExpr(const DeclRefExpr *Node) {
1550 void ASTDumper::VisitUnresolvedLookupExpr(const UnresolvedLookupExpr *Node) {
1565 void ASTDumper::VisitObjCIvarRefExpr(const ObjCIvarRefExpr *Node) {
1578 void ASTDumper::VisitPredefinedExpr(const PredefinedExpr *Node) {
1589 void ASTDumper::VisitCharacterLiteral(const CharacterLiteral *Node) {
1595 void ASTDumper::VisitIntegerLiteral(const IntegerLiteral *Node) {
1603 void ASTDumper::VisitFloatingLiteral(const FloatingLiteral *Node) {
1609 void ASTDumper::VisitStringLiteral(const StringLiteral *Str) {
1616 void ASTDumper::VisitUnaryOperator(const UnaryOperator *Node) {
1622 void ASTDumper::VisitUnaryExprOrTypeTraitExpr(
1640 void ASTDumper::VisitMemberExpr(const MemberExpr *Node) {
1646 void ASTDumper::VisitExtVectorElementExpr(const ExtVectorElementExpr *Node) {
1651 void ASTDumper::VisitBinaryOperator(const BinaryOperator *Node) {
1656 void ASTDumper::VisitCompoundAssignOperator(
1666 void ASTDumper::VisitBlockExpr(const BlockExpr *Node) {
1671 void ASTDumper::VisitOpaqueValueExpr(const OpaqueValueExpr *Node) {
1682 void ASTDumper::VisitAddrLabelExpr(const AddrLabelExpr *Node) {
1692 void ASTDumper::VisitCXXNamedCastExpr(const CXXNamedCastExpr *Node) {
1701 void ASTDumper::VisitCXXBoolLiteralExpr(const CXXBoolLiteralExpr *Node) {
1706 void ASTDumper::VisitCXXThisExpr(const CXXThisExpr *Node) {
1711 void ASTDumper::VisitCXXFunctionalCastExpr(const CXXFunctionalCastExpr *Node) {
1717 void ASTDumper::VisitCXXConstructExpr(const CXXConstructExpr *Node) {
1727 void ASTDumper::VisitCXXBindTemporaryExpr(const CXXBindTemporaryExpr *Node) {
1734 ASTDumper::VisitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *Node) {
1742 void ASTDumper::VisitExprWithCleanups(const ExprWithCleanups *Node) {
1748 void ASTDumper::dumpCXXTemporary(const CXXTemporary *Temporary) {
1758 void ASTDumper::VisitObjCMessageExpr(const ObjCMessageExpr *Node) {
1780 void ASTDumper::VisitObjCBoxedExpr(const ObjCBoxedExpr *Node) {
1785 void ASTDumper::VisitObjCAtCatchStmt(const ObjCAtCatchStmt *Node) {
1793 void ASTDumper::VisitObjCEncodeExpr(const ObjCEncodeExpr *Node) {
1798 void ASTDumper::VisitObjCSelectorExpr(const ObjCSelectorExpr *Node) {
1804 void ASTDumper::VisitObjCProtocolExpr(const ObjCProtocolExpr *Node) {
1810 void ASTDumper::VisitObjCPropertyRefExpr(const ObjCPropertyRefExpr *Node) {
1841 void ASTDumper::VisitObjCSubscriptRefExpr(const ObjCSubscriptRefExpr *Node) {
1862 void ASTDumper::VisitObjCBoolLiteralExpr(const ObjCBoolLiteralExpr *Node) {
1871 const char *ASTDumper::getCommandName(unsigned CommandID) {
1880 void ASTDumper::dumpFullComment(const FullComment *C) {
1889 void ASTDumper::dumpComment(const Comment *C) {
1904 ConstCommentVisitor<ASTDumper>::visit(C);
1913 void ASTDumper::visitTextComment(const TextComment *C) {
1917 void ASTDumper::visitInlineCommandComment(const InlineCommandComment *C) {
1938 void ASTDumper::visitHTMLStartTagComment(const HTMLStartTagComment *C) {
1951 void ASTDumper::visitHTMLEndTagComment(const HTMLEndTagComment *C) {
1955 void ASTDumper::visitBlockCommandComment(const BlockCommandComment *C) {
1961 void ASTDumper::visitParamCommandComment(const ParamCommandComment *C) {
1980 void ASTDumper::visitTParamCommandComment(const TParamCommandComment *C) {
1999 void ASTDumper::visitVerbatimBlockComment(const VerbatimBlockComment *C) {
2004 void ASTDumper::visitVerbatimBlockLineComment(
2009 void ASTDumper::visitVerbatimLineComment(const VerbatimLineComment *C) {
2022 ASTDumper P(OS, &getASTContext().getCommentCommandTraits(),
2028 ASTDumper P(llvm::errs(), &getASTContext().getCommentCommandTraits(),
2042 ASTDumper P(OS, &Ctx.getCommentCommandTraits(), &Ctx.getSourceManager());
2055 ASTDumper P(OS, 0, &SM);
2060 ASTDumper P(llvm::errs(), 0, 0);
2065 ASTDumper P(llvm::errs(), 0, 0, /*ShowColors*/true);
2085 ASTDumper D(OS, Traits, SM);
2091 ASTDumper D(llvm::errs(), 0, 0, /*ShowColors*/true);