clang  3.7.0
Public Member Functions | Static Public Member Functions | List of all members
clang::CXXForRangeStmt Class Reference

#include <StmtCXX.h>

Inheritance diagram for clang::CXXForRangeStmt:
[legend]
Collaboration diagram for clang::CXXForRangeStmt:
[legend]

Public Member Functions

 CXXForRangeStmt (DeclStmt *Range, DeclStmt *BeginEnd, Expr *Cond, Expr *Inc, DeclStmt *LoopVar, Stmt *Body, SourceLocation FL, SourceLocation CL, SourceLocation RPL)
 
 CXXForRangeStmt (EmptyShell Empty)
 
VarDeclgetLoopVariable ()
 
ExprgetRangeInit ()
 
const VarDeclgetLoopVariable () const
 
const ExprgetRangeInit () const
 
DeclStmtgetRangeStmt ()
 
DeclStmtgetBeginEndStmt ()
 
ExprgetCond ()
 
ExprgetInc ()
 
DeclStmtgetLoopVarStmt ()
 
StmtgetBody ()
 
const DeclStmtgetRangeStmt () const
 
const DeclStmtgetBeginEndStmt () const
 
const ExprgetCond () const
 
const ExprgetInc () const
 
const DeclStmtgetLoopVarStmt () const
 
const StmtgetBody () const
 
void setRangeInit (Expr *E)
 
void setRangeStmt (Stmt *S)
 
void setBeginEndStmt (Stmt *S)
 
void setCond (Expr *E)
 
void setInc (Expr *E)
 
void setLoopVarStmt (Stmt *S)
 
void setBody (Stmt *S)
 
SourceLocation getForLoc () const
 
void setForLoc (SourceLocation Loc)
 
SourceLocation getColonLoc () const
 
void setColonLoc (SourceLocation Loc)
 
SourceLocation getRParenLoc () const
 
void setRParenLoc (SourceLocation Loc)
 
SourceLocation getLocStart () const LLVM_READONLY
 
SourceLocation getLocEnd () const LLVM_READONLY
 
child_range children ()
 

Static Public Member Functions

static bool classof (const Stmt *T)
 

Detailed Description

CXXForRangeStmt - This represents C++0x [stmt.ranged]'s ranged for statement, represented as 'for (range-declarator : range-expression)'.

This is stored in a partially-desugared form to allow full semantic analysis of the constituent components. The original syntactic components can be extracted using getLoopVariable and getRangeInit.

Definition at line 128 of file StmtCXX.h.

Constructor & Destructor Documentation

CXXForRangeStmt::CXXForRangeStmt ( DeclStmt Range,
DeclStmt BeginEnd,
Expr Cond,
Expr Inc,
DeclStmt LoopVar,
Stmt Body,
SourceLocation  FL,
SourceLocation  CL,
SourceLocation  RPL 
)

Definition at line 850 of file Stmt.cpp.

clang::CXXForRangeStmt::CXXForRangeStmt ( EmptyShell  Empty)
inline

Definition at line 140 of file StmtCXX.h.

Member Function Documentation

child_range clang::CXXForRangeStmt::children ( )
inline

Definition at line 202 of file StmtCXX.h.

static bool clang::CXXForRangeStmt::classof ( const Stmt T)
inlinestatic

Definition at line 197 of file StmtCXX.h.

DeclStmt* clang::CXXForRangeStmt::getBeginEndStmt ( )
inline
const DeclStmt* clang::CXXForRangeStmt::getBeginEndStmt ( ) const
inline

Definition at line 162 of file StmtCXX.h.

Stmt* clang::CXXForRangeStmt::getBody ( )
inline
const Stmt* clang::CXXForRangeStmt::getBody ( ) const
inline

Definition at line 174 of file StmtCXX.h.

SourceLocation clang::CXXForRangeStmt::getColonLoc ( ) const
inline

Definition at line 187 of file StmtCXX.h.

Referenced by clang::ASTNodeImporter::VisitCXXForRangeStmt().

Expr* clang::CXXForRangeStmt::getCond ( )
inline
const Expr* clang::CXXForRangeStmt::getCond ( ) const
inline

Definition at line 165 of file StmtCXX.h.

SourceLocation clang::CXXForRangeStmt::getForLoc ( ) const
inline

Definition at line 185 of file StmtCXX.h.

Referenced by clang::ASTNodeImporter::VisitCXXForRangeStmt().

Expr* clang::CXXForRangeStmt::getInc ( )
inline
const Expr* clang::CXXForRangeStmt::getInc ( ) const
inline

Definition at line 168 of file StmtCXX.h.

SourceLocation clang::CXXForRangeStmt::getLocEnd ( ) const
inline

Definition at line 193 of file StmtCXX.h.

SourceLocation clang::CXXForRangeStmt::getLocStart ( ) const
inline

Definition at line 192 of file StmtCXX.h.

Referenced by DiagnoseForRangeVariableCopies().

VarDecl * CXXForRangeStmt::getLoopVariable ( )

Definition at line 874 of file Stmt.cpp.

References getLoopVarStmt().

Referenced by DiagnoseForRangeVariableCopies(), and getLoopVariable().

const VarDecl * CXXForRangeStmt::getLoopVariable ( ) const

Definition at line 880 of file Stmt.cpp.

References getLoopVariable().

DeclStmt* clang::CXXForRangeStmt::getLoopVarStmt ( )
inline
const DeclStmt* clang::CXXForRangeStmt::getLoopVarStmt ( ) const
inline

Definition at line 171 of file StmtCXX.h.

Expr * CXXForRangeStmt::getRangeInit ( )
const Expr * CXXForRangeStmt::getRangeInit ( ) const

Definition at line 870 of file Stmt.cpp.

References getRangeInit().

DeclStmt* clang::CXXForRangeStmt::getRangeStmt ( )
inline
const DeclStmt* clang::CXXForRangeStmt::getRangeStmt ( ) const
inline

Definition at line 159 of file StmtCXX.h.

SourceLocation clang::CXXForRangeStmt::getRParenLoc ( ) const
inline
void clang::CXXForRangeStmt::setBeginEndStmt ( Stmt S)
inline

Definition at line 178 of file StmtCXX.h.

References S.

void clang::CXXForRangeStmt::setBody ( Stmt S)
inline

Definition at line 182 of file StmtCXX.h.

References S.

Referenced by clang::Sema::FinishCXXForRangeStmt().

void clang::CXXForRangeStmt::setColonLoc ( SourceLocation  Loc)
inline

Definition at line 188 of file StmtCXX.h.

void clang::CXXForRangeStmt::setCond ( Expr E)
inline

Definition at line 179 of file StmtCXX.h.

void clang::CXXForRangeStmt::setForLoc ( SourceLocation  Loc)
inline

Definition at line 186 of file StmtCXX.h.

void clang::CXXForRangeStmt::setInc ( Expr E)
inline

Definition at line 180 of file StmtCXX.h.

void clang::CXXForRangeStmt::setLoopVarStmt ( Stmt S)
inline

Definition at line 181 of file StmtCXX.h.

References S.

void clang::CXXForRangeStmt::setRangeInit ( Expr E)
inline

Definition at line 176 of file StmtCXX.h.

void clang::CXXForRangeStmt::setRangeStmt ( Stmt S)
inline

Definition at line 177 of file StmtCXX.h.

References S.

void clang::CXXForRangeStmt::setRParenLoc ( SourceLocation  Loc)
inline

Definition at line 190 of file StmtCXX.h.


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