clang  3.9.0
Public Member Functions | Static Public Member Functions | Friends | List of all members
clang::CoroutineBodyStmt Class Reference

Represents the body of a coroutine. More...

#include <StmtCXX.h>

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

Public Member Functions

 CoroutineBodyStmt (Stmt *Body, Stmt *Promise, Stmt *InitSuspend, Stmt *FinalSuspend, Stmt *OnException, Stmt *OnFallthrough, Expr *ReturnValue, ArrayRef< Expr * > ParamMoves)
 
StmtgetBody () const
 Retrieve the body of the coroutine as written. More...
 
StmtgetPromiseDeclStmt () const
 
VarDeclgetPromiseDecl () const
 
StmtgetInitSuspendStmt () const
 
StmtgetFinalSuspendStmt () const
 
StmtgetExceptionHandler () const
 
StmtgetFallthroughHandler () const
 
ExprgetReturnValueInit () const
 
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

Represents the body of a coroutine.

This wraps the normal function body and holds the additional semantic context required to set up and tear down the coroutine frame.

Definition at line 299 of file StmtCXX.h.

Constructor & Destructor Documentation

clang::CoroutineBodyStmt::CoroutineBodyStmt ( Stmt Body,
Stmt Promise,
Stmt InitSuspend,
Stmt FinalSuspend,
Stmt OnException,
Stmt OnFallthrough,
Expr ReturnValue,
ArrayRef< Expr * >  ParamMoves 
)
inline

Definition at line 314 of file StmtCXX.h.

Member Function Documentation

child_range clang::CoroutineBodyStmt::children ( )
inline

Definition at line 359 of file StmtCXX.h.

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

Definition at line 363 of file StmtCXX.h.

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

Retrieve the body of the coroutine as written.

This will be either a CompoundStmt or a TryStmt.

Definition at line 331 of file StmtCXX.h.

Referenced by getLocEnd(), and getLocStart().

Stmt* clang::CoroutineBodyStmt::getExceptionHandler ( ) const
inline

Definition at line 343 of file StmtCXX.h.

Stmt* clang::CoroutineBodyStmt::getFallthroughHandler ( ) const
inline

Definition at line 344 of file StmtCXX.h.

Stmt* clang::CoroutineBodyStmt::getFinalSuspendStmt ( ) const
inline

Definition at line 341 of file StmtCXX.h.

Stmt* clang::CoroutineBodyStmt::getInitSuspendStmt ( ) const
inline

Definition at line 340 of file StmtCXX.h.

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

Definition at line 355 of file StmtCXX.h.

References getBody().

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

Definition at line 352 of file StmtCXX.h.

References getBody().

VarDecl* clang::CoroutineBodyStmt::getPromiseDecl ( ) const
inline

Definition at line 336 of file StmtCXX.h.

References getPromiseDeclStmt().

Stmt* clang::CoroutineBodyStmt::getPromiseDeclStmt ( ) const
inline

Definition at line 335 of file StmtCXX.h.

Referenced by getPromiseDecl().

Expr* clang::CoroutineBodyStmt::getReturnValueInit ( ) const
inline

Definition at line 348 of file StmtCXX.h.

Friends And Related Function Documentation

friend class ASTStmtReader
friend

Definition at line 312 of file StmtCXX.h.


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