clang API Documentation
#include <ExprCXX.h>


Public Member Functions | |
| CXXBindReferenceExpr (EmptyShell Empty) | |
| const Expr * | getSubExpr () const |
| Expr * | getSubExpr () |
| void | setSubExpr (Expr *E) |
| virtual SourceRange | getSourceRange () const |
| bool | requiresTemporaryCopy () const |
| bool | extendsLifetime () const |
| virtual child_iterator | child_begin () |
| virtual child_iterator | child_end () |
Static Public Member Functions | |
| static CXXBindReferenceExpr * | Create (ASTContext &C, Expr *SubExpr, bool ExtendsLifetime, bool RequiresTemporaryCopy) |
| static bool | classof (const Stmt *T) |
| static bool | classof (const CXXBindReferenceExpr *) |
Friends | |
| class | ASTStmtReader |
CXXBindReferenceExpr - Represents binding an expression to a reference. In the example:
const int &i = 10;
a bind reference expression is inserted to indicate that 10 is bound to a reference, and that a temporary needs to be created to hold the value.
Definition at line 642 of file ExprCXX.h.
| clang::CXXBindReferenceExpr::CXXBindReferenceExpr | ( | EmptyShell | Empty | ) | [inline, explicit] |
| Stmt::child_iterator CXXBindReferenceExpr::child_begin | ( | ) | [virtual] |
Implements clang::Stmt.
Definition at line 774 of file ExprCXX.cpp.
| Stmt::child_iterator CXXBindReferenceExpr::child_end | ( | ) | [virtual] |
Implements clang::Stmt.
Definition at line 778 of file ExprCXX.cpp.
| static bool clang::CXXBindReferenceExpr::classof | ( | const CXXBindReferenceExpr * | ) | [inline, static] |
| static bool clang::CXXBindReferenceExpr::classof | ( | const Stmt * | T | ) | [inline, static] |
Reimplemented from clang::Expr.
Definition at line 685 of file ExprCXX.h.
References clang::Stmt::getStmtClass().
| CXXBindReferenceExpr * CXXBindReferenceExpr::Create | ( | ASTContext & | C, | |
| Expr * | SubExpr, | |||
| bool | ExtendsLifetime, | |||
| bool | RequiresTemporaryCopy | |||
| ) | [static] |
Definition at line 680 of file ExprCXX.cpp.
| bool clang::CXXBindReferenceExpr::extendsLifetime | ( | ) | const [inline] |
Definition at line 682 of file ExprCXX.h.
Referenced by clang::ASTStmtWriter::VisitCXXBindReferenceExpr().
| virtual SourceRange clang::CXXBindReferenceExpr::getSourceRange | ( | ) | const [inline, virtual] |
SourceLocation tokens are not useful in isolation - they are low level value objects created/interpreted by SourceManager. We assume AST clients will have a pointer to the respective SourceManager.
Implements clang::Expr.
Definition at line 672 of file ExprCXX.h.
References clang::Expr::getSourceRange().
| Expr* clang::CXXBindReferenceExpr::getSubExpr | ( | ) | [inline] |
| const Expr* clang::CXXBindReferenceExpr::getSubExpr | ( | ) | const [inline] |
Definition at line 668 of file ExprCXX.h.
Referenced by clang::ASTStmtWriter::VisitCXXBindReferenceExpr().
| bool clang::CXXBindReferenceExpr::requiresTemporaryCopy | ( | ) | const [inline] |
requiresTemporaryCopy - Whether binding the subexpression requires a temporary copy.
Definition at line 678 of file ExprCXX.h.
Referenced by clang::ASTStmtWriter::VisitCXXBindReferenceExpr().
| void clang::CXXBindReferenceExpr::setSubExpr | ( | Expr * | E | ) | [inline] |
friend class ASTStmtReader [friend] |