class CoroutineBodyStmt

Declaration

class CoroutineBodyStmt : public Stmt, private TrailingObjects { /* full declaration omitted */ };

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.

Declared at: clang/include/clang/AST/StmtCXX.h:317

Inherits from: Stmt, TrailingObjects

Member Variables

private unsigned int NumParams

Inherited from Stmt:

protected

Method Overview

Inherited from Stmt:

Methods

CoroutineBodyStmt(
    const clang::CoroutineBodyStmt::CtorArgs&
        Args)

Declared at: clang/include/clang/AST/StmtCXX.h:363

Parameters

const clang::CoroutineBodyStmt::CtorArgs& Args

static clang::CoroutineBodyStmt* Create(
    const clang::ASTContext& C,
    const clang::CoroutineBodyStmt::CtorArgs&
        Args)

Declared at: clang/include/clang/AST/StmtCXX.h:366

Parameters

const clang::ASTContext& C
const clang::CoroutineBodyStmt::CtorArgs& Args

static clang::CoroutineBodyStmt* Create(
    const clang::ASTContext& C,
    clang::Stmt::EmptyShell,
    unsigned int NumParams)

Declared at: clang/include/clang/AST/StmtCXX.h:367

Parameters

const clang::ASTContext& C
clang::Stmt::EmptyShell
unsigned int NumParams

clang::Stmt::const_child_range children() const

Declared at: clang/include/clang/AST/StmtCXX.h:436

clang::Stmt::child_range children()

Declared at: clang/include/clang/AST/StmtCXX.h:431

static bool classof(const clang::Stmt* T)

Declared at: clang/include/clang/AST/StmtCXX.h:442

Parameters

const clang::Stmt* T

clang::Expr* getAllocate() const

Declared at: clang/include/clang/AST/StmtCXX.h:401

clang::SourceLocation getBeginLoc() const

Declared at: clang/include/clang/AST/StmtCXX.h:423

clang::Stmt* getBody() const

Description

Retrieve the body of the coroutine as written. This will be either a CompoundStmt or a TryStmt.

Declared at: clang/include/clang/AST/StmtCXX.h:376

clang::Expr* getDeallocate() const

Declared at: clang/include/clang/AST/StmtCXX.h:404

clang::SourceLocation getEndLoc() const

Declared at: clang/include/clang/AST/StmtCXX.h:427

clang::Stmt* getExceptionHandler() const

Declared at: clang/include/clang/AST/StmtCXX.h:394

clang::Stmt* getFallthroughHandler() const

Declared at: clang/include/clang/AST/StmtCXX.h:397

clang::Stmt* getFinalSuspendStmt() const

Declared at: clang/include/clang/AST/StmtCXX.h:390

clang::Stmt* getInitSuspendStmt() const

Declared at: clang/include/clang/AST/StmtCXX.h:387

ArrayRef<const clang::Stmt*> getParamMoves() const

Declared at: clang/include/clang/AST/StmtCXX.h:419

clang::VarDecl* getPromiseDecl() const

Declared at: clang/include/clang/AST/StmtCXX.h:383

clang::Stmt* getPromiseDeclStmt() const

Declared at: clang/include/clang/AST/StmtCXX.h:380

clang::Stmt* getReturnStmt() const

Declared at: clang/include/clang/AST/StmtCXX.h:415

clang::Stmt* getReturnStmtOnAllocFailure() const

Declared at: clang/include/clang/AST/StmtCXX.h:416

clang::Expr* getReturnValue() const

Declared at: clang/include/clang/AST/StmtCXX.h:410

clang::Expr* getReturnValueInit() const

Declared at: clang/include/clang/AST/StmtCXX.h:407

clang::Stmt** getStoredStmts()

Declared at: clang/include/clang/AST/StmtCXX.h:340

clang::Stmt* const* getStoredStmts() const

Declared at: clang/include/clang/AST/StmtCXX.h:342

bool hasDependentPromiseType() const

Declared at: clang/include/clang/AST/StmtCXX.h:370