clang API Documentation

Public Member Functions | Static Public Member Functions | Protected Attributes
clang::BlockExpr Class Reference

#include <Expr.h>

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

List of all members.

Public Member Functions

 BlockExpr (BlockDecl *BD, QualType ty)
 BlockExpr (EmptyShell Empty)
 Build an empty block expression.
const BlockDeclgetBlockDecl () const
BlockDeclgetBlockDecl ()
void setBlockDecl (BlockDecl *BD)
SourceLocation getCaretLocation () const
const StmtgetBody () const
StmtgetBody ()
SourceLocation getLocStart () const LLVM_READONLY
SourceLocation getLocEnd () const LLVM_READONLY
const FunctionProtoTypegetFunctionType () const
 getFunctionType - Return the underlying function type for this block.
child_range children ()

Static Public Member Functions

static bool classof (const Stmt *T)

Protected Attributes

BlockDeclTheBlock

Detailed Description

BlockExpr - Adaptor class for mixing a BlockDecl with expressions. ^{ statement-body } or ^(int arg1, float arg2){ statement-body }

Definition at line 4527 of file Expr.h.


Constructor & Destructor Documentation

clang::BlockExpr::BlockExpr ( BlockDecl BD,
QualType  ty 
) [inline]

Definition at line 4531 of file Expr.h.

clang::BlockExpr::BlockExpr ( EmptyShell  Empty) [inline, explicit]

Build an empty block expression.

Definition at line 4539 of file Expr.h.


Member Function Documentation

Reimplemented from clang::Stmt.

Definition at line 4561 of file Expr.h.

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

Reimplemented from clang::Expr.

Definition at line 4556 of file Expr.h.

References clang::Stmt::getStmtClass().

const BlockDecl* clang::BlockExpr::getBlockDecl ( ) const [inline]

Definition at line 4542 of file Expr.h.

References TheBlock.

const Stmt * BlockExpr::getBody ( ) const

Definition at line 1986 of file Expr.cpp.

References clang::BlockDecl::getBody(), and TheBlock.

Definition at line 1980 of file Expr.cpp.

References clang::BlockDecl::getCaretLocation(), and TheBlock.

Referenced by getLocStart().

getFunctionType - Return the underlying function type for this block.

Definition at line 1974 of file Expr.cpp.

References clang::Type::castAs(), and clang::Expr::getType().

Referenced by clang::CodeGen::CGDebugInfo::EmitDeclareOfBlockLiteralArgVariable(), and clang::CodeGen::CodeGenFunction::GenerateBlockFunction().

Reimplemented from clang::Stmt.

Definition at line 4551 of file Expr.h.

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

Reimplemented from clang::Stmt.

Definition at line 4550 of file Expr.h.

References getCaretLocation().

Referenced by DiagnoseUninitializedUse().

void clang::BlockExpr::setBlockDecl ( BlockDecl BD) [inline]

Definition at line 4543 of file Expr.h.

References TheBlock.


Member Data Documentation

Definition at line 4529 of file Expr.h.

Referenced by getBlockDecl(), getBody(), getCaretLocation(), and setBlockDecl().


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