Home | History | Annotate | Download | only in AST

Lines Matching refs:Node

96     void DumpDeclRef(Decl *node);
97 void DumpStmt(const Stmt *Node) {
99 OS << "(" << Node->getStmtClassName()
100 << " " << (void*)Node;
101 DumpSourceRange(Node);
118 void DumpExpr(const Expr *Node) {
119 DumpStmt(Node);
121 DumpType(Node->getType());
122 DumpValueKind(Node->getValueKind());
123 DumpObjectKind(Node->getObjectKind());
125 void DumpSourceRange(const Stmt *Node);
129 void VisitStmt(Stmt *Node);
130 void VisitDeclStmt(DeclStmt *Node);
131 void VisitLabelStmt(LabelStmt *Node);
132 void VisitGotoStmt(GotoStmt *Node);
135 void VisitExpr(Expr *Node);
136 void VisitCastExpr(CastExpr *Node);
137 void VisitDeclRefExpr(DeclRefExpr *Node);
138 void VisitPredefinedExpr(PredefinedExpr *Node);
139 void VisitCharacterLiteral(CharacterLiteral *Node);
140 void VisitIntegerLiteral(IntegerLiteral *Node);
141 void VisitFloatingLiteral(FloatingLiteral *Node);
143 void VisitUnaryOperator(UnaryOperator *Node);
144 void VisitUnaryExprOrTypeTraitExpr(UnaryExprOrTypeTraitExpr *Node);
145 void VisitMemberExpr(MemberExpr *Node);
146 void VisitExtVectorElementExpr(ExtVectorElementExpr *Node);
147 void VisitBinaryOperator(BinaryOperator *Node);
148 void VisitCompoundAssignOperator(CompoundAssignOperator *Node);
149 void VisitAddrLabelExpr(AddrLabelExpr *Node);
150 void VisitBlockExpr(BlockExpr *Node);
153 void VisitCXXNamedCastExpr(CXXNamedCastExpr *Node);
154 void VisitCXXBoolLiteralExpr(CXXBoolLiteralExpr *Node);
155 void VisitCXXThisExpr(CXXThisExpr *Node);
156 void VisitCXXFunctionalCastExpr(CXXFunctionalCastExpr *Node);
157 void VisitCXXConstructExpr(CXXConstructExpr *Node);
158 void VisitCXXBindTemporaryExpr(CXXBindTemporaryExpr *Node);
159 void VisitExprWithCleanups(ExprWithCleanups *Node);
160 void VisitUnresolvedLookupExpr(UnresolvedLookupExpr *Node);
164 void VisitObjCAtCatchStmt(ObjCAtCatchStmt *Node);
165 void VisitObjCEncodeExpr(ObjCEncodeExpr *Node);
166 void VisitObjCMessageExpr(ObjCMessageExpr* Node);
167 void VisitObjCSelectorExpr(ObjCSelectorExpr *Node);
168 void VisitObjCProtocolExpr(ObjCProtocolExpr *Node);
169 void VisitObjCPropertyRefExpr(ObjCPropertyRefExpr *Node);
170 void VisitObjCIvarRefExpr(ObjCIvarRefExpr *Node);
204 void StmtDumper::DumpSourceRange(const Stmt *Node) {
210 SourceRange R = Node->getSourceRange();
229 void StmtDumper::VisitStmt(Stmt *Node) {
230 DumpStmt(Node);
301 void StmtDumper::VisitDeclStmt(DeclStmt *Node) {
302 DumpStmt(Node);
304 for (DeclStmt::decl_iterator DI = Node->decl_begin(), DE = Node->decl_end();
317 void StmtDumper::VisitLabelStmt(LabelStmt *Node) {
318 DumpStmt(Node);
319 OS << " '" << Node->getName() << "'";
322 void StmtDumper::VisitGotoStmt(GotoStmt *Node) {
323 DumpStmt(Node);
324 OS << " '" << Node->getLabel()->getName()
325 << "':" << (void*)Node->getLabel();
332 void StmtDumper::VisitExpr(Expr *Node) {
333 DumpExpr(Node);
336 static void DumpBasePath(raw_ostream &OS, CastExpr *Node) {
337 if (Node->path_empty())
343 I = Node->path_begin(), E = Node->path_end(); I != E; ++I) {
360 void StmtDumper::VisitCastExpr(CastExpr *Node) {
361 DumpExpr(Node);
362 OS << " <" << Node->getCastKindName();
363 DumpBasePath(OS, Node);
367 void StmtDumper::VisitDeclRefExpr(DeclRefExpr *Node) {
368 DumpExpr(Node);
371 DumpDeclRef(Node->getDecl());
372 if (Node->getDecl() != Node->getFoundDecl()) {
374 DumpDeclRef(Node->getFoundDecl());
393 void StmtDumper::VisitUnresolvedLookupExpr(UnresolvedLookupExpr *Node) {
394 DumpExpr(Node);
396 if (!Node->requiresADL()) OS << "no ";
397 OS << "ADL) = '" << Node->getName() << '\'';
400 I = Node->decls_begin(), E = Node->decls_end();
406 void StmtDumper::VisitObjCIvarRefExpr(ObjCIvarRefExpr *Node) {
407 DumpExpr(Node);
409 OS << " " << Node->getDecl()->getDeclKindName()
410 << "Decl='" << *Node->getDecl()
411 << "' " << (void*)Node->getDecl();
412 if (Node->isFreeIvar())
416 void StmtDumper::VisitPredefinedExpr(PredefinedExpr *Node) {
417 DumpExpr(Node);
418 switch (Node->getIdentType()) {
426 void StmtDumper::VisitCharacterLiteral(CharacterLiteral *Node) {
427 DumpExpr(Node);
428 OS << Node->getValue();
431 void StmtDumper::VisitIntegerLiteral(IntegerLiteral *Node) {
432 DumpExpr(Node);
434 bool isSigned = Node->getType()->isSignedIntegerType();
435 OS << " " << Node->getValue().toString(10, isSigned);
437 void StmtDumper::VisitFloatingLiteral(FloatingLiteral *Node) {
438 DumpExpr(Node);
439 OS << " " << Node->getValueAsApproximateDouble();
458 void StmtDumper::VisitUnaryOperator(UnaryOperator *Node) {
459 DumpExpr(Node);
460 OS << " " << (Node->isPostfix() ? "postfix" : "prefix")
461 << " '" << UnaryOperator::getOpcodeStr(Node->getOpcode()) << "'";
463 void StmtDumper::VisitUnaryExprOrTypeTraitExpr(UnaryExprOrTypeTraitExpr *Node) {
464 DumpExpr(Node);
465 switch(Node->getKind()) {
476 if (Node->isArgumentType())
477 DumpType(Node->getArgumentType());
480 void StmtDumper::VisitMemberExpr(MemberExpr *Node) {
481 DumpExpr(Node);
482 OS << " " << (Node->isArrow() ? "->" : ".")
483 << *Node->getMemberDecl() << ' '
484 << (void*)Node->getMemberDecl();
486 void StmtDumper::VisitExtVectorElementExpr(ExtVectorElementExpr *Node) {
487 DumpExpr(Node);
488 OS << " " << Node->getAccessor().getNameStart();
490 void StmtDumper::VisitBinaryOperator(BinaryOperator *Node) {
491 DumpExpr(Node);
492 OS << " '" << BinaryOperator::getOpcodeStr(Node->getOpcode()) << "'";
494 void StmtDumper::VisitCompoundAssignOperator(CompoundAssignOperator *Node) {
495 DumpExpr(Node);
496 OS << " '" << BinaryOperator::getOpcodeStr(Node->getOpcode())
498 DumpType(Node->getComputationLHSType());
500 DumpType(Node->getComputationResultType());
503 void StmtDumper::VisitBlockExpr(BlockExpr *Node) {
504 DumpExpr(Node);
507 BlockDecl *block = Node->getBlockDecl();
529 void StmtDumper::VisitAddrLabelExpr(AddrLabelExpr *Node) {
530 DumpExpr(Node);
531 OS << " " << Node->getLabel()->getName()
532 << " " << (void*)Node->getLabel();
539 void StmtDumper::VisitCXXNamedCastExpr(CXXNamedCastExpr *Node) {
540 DumpExpr(Node);
541 OS << " " << Node->getCastName()
542 << "<" << Node->getTypeAsWritten().getAsString() << ">"
543 << " <" << Node->getCastKindName();
544 DumpBasePath(OS, Node);
548 void StmtDumper::VisitCXXBoolLiteralExpr(CXXBoolLiteralExpr *Node) {
549 DumpExpr(Node);
550 OS << " " << (Node->getValue() ? "true" : "false");
553 void StmtDumper::VisitCXXThisExpr(CXXThisExpr *Node) {
554 DumpExpr(Node);
558 void StmtDumper::VisitCXXFunctionalCastExpr(CXXFunctionalCastExpr *Node) {
559 DumpExpr(Node);
560 OS << " functional cast to " << Node->getTypeAsWritten().getAsString()
561 << " <" << Node->getCastKindName() << ">";
564 void StmtDumper::VisitCXXConstructExpr(CXXConstructExpr *Node) {
565 DumpExpr(Node);
566 CXXConstructorDecl *Ctor = Node->getConstructor();
568 if (Node->isElidable())
570 if (Node->requiresZeroInitialization())
574 void StmtDumper::VisitCXXBindTemporaryExpr(CXXBindTemporaryExpr *Node) {
575 DumpExpr(Node);
577 DumpCXXTemporary(Node->getTemporary());
580 void StmtDumper::VisitExprWithCleanups(ExprWithCleanups *Node) {
581 DumpExpr(Node);
583 for (unsigned i = 0, e = Node->getNumTemporaries(); i != e; ++i) {
586 DumpCXXTemporary(Node->getTemporary(i));
599 void StmtDumper::VisitObjCMessageExpr(ObjCMessageExpr* Node) {
600 DumpExpr(Node);
601 OS << " selector=" << Node->getSelector().getAsString();
602 switch (Node->getReceiverKind()) {
608 DumpType(Node->getClassReceiver());
621 void StmtDumper::VisitObjCAtCatchStmt(ObjCAtCatchStmt *Node) {
622 DumpStmt(Node);
623 if (VarDecl *CatchParam = Node->getCatchParamDecl()) {
631 void StmtDumper::VisitObjCEncodeExpr(ObjCEncodeExpr *Node) {
632 DumpExpr(Node);
634 DumpType(Node->getEncodedType());
637 void StmtDumper::VisitObjCSelectorExpr(ObjCSelectorExpr *Node) {
638 DumpExpr(Node);
640 OS << " " << Node->getSelector().getAsString();
643 void StmtDumper::VisitObjCProtocolExpr(ObjCProtocolExpr *Node) {
644 DumpExpr(Node);
646 OS << ' ' <<* Node->getProtocol();
649 void StmtDumper::VisitObjCPropertyRefExpr(ObjCPropertyRefExpr *Node) {
650 DumpExpr(Node);
651 if (Node->isImplicitProperty()) {
653 if (Node->getImplicitPropertyGetter())
654 OS << Node->getImplicitPropertyGetter()->getSelector().getAsString();
659 if (ObjCMethodDecl *Setter = Node->getImplicitPropertySetter())
665 OS << " Kind=PropertyRef Property=\"" << *Node->getExplicitProperty() <<'"';
668 if (Node->isSuperReceiver())
677 /// specified node and a few nodes underneath it, but not the whole subtree.
690 /// specified node and a few nodes underneath it, but not the whole subtree.