|
clang
5.0.0
|
DeclStmt - Adaptor class for mixing declarations with statements and expressions. More...
#include "clang/AST/Stmt.h"
Public Types | |
| typedef DeclGroupRef::iterator | decl_iterator |
| typedef DeclGroupRef::const_iterator | const_decl_iterator |
| typedef llvm::iterator_range < decl_iterator > | decl_range |
| typedef llvm::iterator_range < const_decl_iterator > | decl_const_range |
| typedef std::reverse_iterator < decl_iterator > | reverse_decl_iterator |
Public Types inherited from clang::Stmt | |
| enum | StmtClass { NoStmtClass = 0 } |
| typedef StmtIterator | child_iterator |
| Child Iterators: All subclasses must implement 'children' to permit easy iteration over the substatements/subexpessions of an AST node. More... | |
| typedef ConstStmtIterator | const_child_iterator |
| typedef llvm::iterator_range < child_iterator > | child_range |
| typedef llvm::iterator_range < const_child_iterator > | const_child_range |
Public Member Functions | |
| DeclStmt (DeclGroupRef dg, SourceLocation startLoc, SourceLocation endLoc) | |
| DeclStmt (EmptyShell Empty) | |
| Build an empty declaration statement. More... | |
| bool | isSingleDecl () const |
| isSingleDecl - This method returns true if this DeclStmt refers to a single Decl. More... | |
| const Decl * | getSingleDecl () const |
| Decl * | getSingleDecl () |
| const DeclGroupRef | getDeclGroup () const |
| DeclGroupRef | getDeclGroup () |
| void | setDeclGroup (DeclGroupRef DGR) |
| SourceLocation | getStartLoc () const |
| void | setStartLoc (SourceLocation L) |
| SourceLocation | getEndLoc () const |
| void | setEndLoc (SourceLocation L) |
| SourceLocation | getLocStart () const LLVM_READONLY |
| SourceLocation | getLocEnd () const LLVM_READONLY |
| child_range | children () |
| decl_range | decls () |
| decl_const_range | decls () const |
| decl_iterator | decl_begin () |
| decl_iterator | decl_end () |
| const_decl_iterator | decl_begin () const |
| const_decl_iterator | decl_end () const |
| reverse_decl_iterator | decl_rbegin () |
| reverse_decl_iterator | decl_rend () |
Public Member Functions inherited from clang::Stmt | |
| void * | operator new (size_t bytes, const ASTContext &C, unsigned alignment=8) |
| void * | operator new (size_t bytes, const ASTContext *C, unsigned alignment=8) |
| void * | operator new (size_t bytes, void *mem) noexcept |
| void | operator delete (void *, const ASTContext &, unsigned) noexcept |
| void | operator delete (void *, const ASTContext *, unsigned) noexcept |
| void | operator delete (void *, size_t) noexcept |
| void | operator delete (void *, void *) noexcept |
| Stmt (StmtClass SC) | |
| StmtClass | getStmtClass () const |
| const char * | getStmtClassName () const |
| SourceRange | getSourceRange () const LLVM_READONLY |
| SourceLocation tokens are not useful in isolation - they are low level value objects created/interpreted by SourceManager. More... | |
| SourceLocation | getLocStart () const LLVM_READONLY |
| SourceLocation | getLocEnd () const LLVM_READONLY |
| void | dump () const |
Dumps the specified AST fragment and all subtrees to llvm::errs(). More... | |
| void | dump (SourceManager &SM) const |
| void | dump (raw_ostream &OS, SourceManager &SM) const |
| void | dump (raw_ostream &OS) const |
| void | dumpColor () const |
| dumpColor - same as dump(), but forces color highlighting. More... | |
| void | dumpPretty (const ASTContext &Context) const |
| dumpPretty/printPretty - These two methods do a "pretty print" of the AST back to its original source language syntax. More... | |
| void | printPretty (raw_ostream &OS, PrinterHelper *Helper, const PrintingPolicy &Policy, unsigned Indentation=0) const |
| void | viewAST () const |
| viewAST - Visualize an AST rooted at this Stmt* using GraphViz. More... | |
| Stmt * | IgnoreImplicit () |
| Skip past any implicit AST nodes which might surround this statement, such as ExprWithCleanups or ImplicitCastExpr nodes. More... | |
| const Stmt * | IgnoreImplicit () const |
| Stmt * | IgnoreContainers (bool IgnoreCaptured=false) |
| Skip no-op (attributed, compound) container stmts and skip captured stmt at the top, if IgnoreCaptured is true. More... | |
| const Stmt * | stripLabelLikeStatements () const |
| Strip off all label-like statements. More... | |
| Stmt * | stripLabelLikeStatements () |
| child_range | children () |
| const_child_range | children () const |
| child_iterator | child_begin () |
| child_iterator | child_end () |
| const_child_iterator | child_begin () const |
| const_child_iterator | child_end () const |
| void | Profile (llvm::FoldingSetNodeID &ID, const ASTContext &Context, bool Canonical) const |
| Produce a unique representation of the given statement. More... | |
| void | ProcessODRHash (llvm::FoldingSetNodeID &ID, ODRHash &Hash) const |
| Calculate a unique representation for a statement that is stable across compiler invocations. More... | |
Static Public Member Functions | |
| static bool | classof (const Stmt *T) |
Static Public Member Functions inherited from clang::Stmt | |
| static void | addStmtClass (const StmtClass s) |
| static void | EnableStatistics () |
| static void | PrintStats () |
DeclStmt - Adaptor class for mixing declarations with statements and expressions.
For example, CompoundStmt mixes statements, expressions and declarations (variables, types). Another example is ForStmt, where the first statement can be an expression or a declaration.
| typedef llvm::iterator_range<const_decl_iterator> clang::DeclStmt::decl_const_range |
| typedef llvm::iterator_range<decl_iterator> clang::DeclStmt::decl_range |
| typedef std::reverse_iterator<decl_iterator> clang::DeclStmt::reverse_decl_iterator |
|
inline |
|
inlineexplicit |
|
inline |
Definition at line 505 of file Stmt.h.
References clang::DeclGroupRef::begin(), and clang::DeclGroupRef::end().
Definition at line 500 of file Stmt.h.
References clang::Stmt::getStmtClass().
|
inline |
Definition at line 519 of file Stmt.h.
References clang::DeclGroupRef::begin().
Referenced by decl_rend(), decls(), and clang::ento::ExprEngine::VisitDeclStmt().
|
inline |
Definition at line 521 of file Stmt.h.
References clang::DeclGroupRef::begin().
|
inline |
Definition at line 520 of file Stmt.h.
References clang::DeclGroupRef::end().
Referenced by decl_rbegin(), and decls().
|
inline |
Definition at line 522 of file Stmt.h.
References clang::DeclGroupRef::end().
|
inline |
Definition at line 525 of file Stmt.h.
References decl_end().
|
inline |
Definition at line 528 of file Stmt.h.
References decl_begin().
|
inline |
Definition at line 515 of file Stmt.h.
References decl_begin(), and decl_end().
Referenced by CheckConstexprDeclStmt(), clang::CodeGen::CodeGenFunction::EmitDeclStmt(), EvaluateStmt(), and clang::consumed::ConsumedStmtVisitor::VisitDeclStmt().
|
inline |
Definition at line 516 of file Stmt.h.
References decl_begin(), and decl_end().
|
inline |
Definition at line 488 of file Stmt.h.
Referenced by clang::ASTNodeImporter::VisitDeclStmt().
|
inline |
|
inline |
Definition at line 494 of file Stmt.h.
Referenced by clang::ASTNodeImporter::VisitDeclStmt().
|
inline |
|
inline |
Definition at line 497 of file Stmt.h.
Referenced by CheckConstexprDeclStmt().
|
inline |
Definition at line 485 of file Stmt.h.
References clang::DeclGroupRef::getSingleDecl().
Referenced by clang::Sema::ActOnCXXForRangeStmt(), clang::Sema::BuildCXXForRangeStmt(), clang::IfStmt::getConditionVariable(), clang::SwitchStmt::getConditionVariable(), clang::WhileStmt::getConditionVariable(), clang::ForStmt::getConditionVariable(), clang::CXXForRangeStmt::getRangeInit(), isInitializationOfVar(), clang::consumed::ConsumedStmtVisitor::VisitDeclStmt(), and clang::ento::FindLastStoreBRVisitor::VisitNode().
|
inline |
Definition at line 486 of file Stmt.h.
References clang::DeclGroupRef::getSingleDecl().
|
inline |
Definition at line 492 of file Stmt.h.
Referenced by clang::Sema::ActOnCXXForRangeStmt(), and clang::ASTNodeImporter::VisitDeclStmt().
|
inline |
isSingleDecl - This method returns true if this DeclStmt refers to a single Decl.
Definition at line 481 of file Stmt.h.
References clang::DeclGroupRef::isSingleDecl().
Referenced by clang::Sema::ActOnCXXForRangeStmt(), clang::CFG::addSyntheticDeclStmt(), clang::ento::ExprEngine::VisitDeclStmt(), and clang::consumed::ConsumedStmtVisitor::VisitDeclStmt().
|
inline |
|
inline |
|
inline |
1.8.6