clang API Documentation

Public Member Functions | Static Public Member Functions | Friends
clang::CXXThrowExpr Class Reference

A C++ throw-expression (C++ [except.throw]). More...

#include <ExprCXX.h>

Inheritance diagram for clang::CXXThrowExpr:
Inheritance graph
[legend]
Collaboration diagram for clang::CXXThrowExpr:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 CXXThrowExpr (Expr *expr, QualType Ty, SourceLocation l, bool IsThrownVariableInScope)
 CXXThrowExpr (EmptyShell Empty)
const ExprgetSubExpr () const
ExprgetSubExpr ()
SourceLocation getThrowLoc () const
bool isThrownVariableInScope () const
 Determines whether the variable thrown by this expression (if any!) is within the innermost try block.
SourceLocation getLocStart () const LLVM_READONLY
SourceLocation getLocEnd () const LLVM_READONLY
child_range children ()

Static Public Member Functions

static bool classof (const Stmt *T)

Friends

class ASTStmtReader

Detailed Description

A C++ throw-expression (C++ [except.throw]).

This handles 'throw' (for re-throwing the current exception) and 'throw' assignment-expression. When assignment-expression isn't present, Op will be null.

Definition at line 801 of file ExprCXX.h.


Constructor & Destructor Documentation

clang::CXXThrowExpr::CXXThrowExpr ( Expr expr,
QualType  Ty,
SourceLocation  l,
bool  IsThrownVariableInScope 
) [inline]

Definition at line 813 of file ExprCXX.h.

Definition at line 819 of file ExprCXX.h.


Member Function Documentation

Reimplemented from clang::Stmt.

Definition at line 845 of file ExprCXX.h.

static bool clang::CXXThrowExpr::classof ( const Stmt T) [inline, static]

Reimplemented from clang::Expr.

Definition at line 840 of file ExprCXX.h.

References clang::Stmt::getStmtClass().

Reimplemented from clang::Stmt.

Definition at line 834 of file ExprCXX.h.

References clang::Stmt::getLocEnd(), and getSubExpr().

Reimplemented from clang::Stmt.

Definition at line 833 of file ExprCXX.h.

const Expr* clang::CXXThrowExpr::getSubExpr ( ) const [inline]

Definition at line 821 of file ExprCXX.h.

Referenced by clang::CodeGen::CodeGenFunction::EmitCXXThrowExpr(), and getLocEnd().

Definition at line 822 of file ExprCXX.h.

Definition at line 824 of file ExprCXX.h.

Determines whether the variable thrown by this expression (if any!) is within the innermost try block.

This information is required to determine whether the NRVO can apply to this variable.

Definition at line 831 of file ExprCXX.h.


Friends And Related Function Documentation

friend class ASTStmtReader [friend]

Reimplemented from clang::Stmt.

Definition at line 807 of file ExprCXX.h.


The documentation for this class was generated from the following file: