class CXXTemporaryObjectExpr

Declaration

class CXXTemporaryObjectExpr : public CXXConstructExpr { /* full declaration omitted */ };

Description

Represents a C++ functional cast expression that builds a temporary object. This expression type represents a C++ "functional" cast (C++[expr.type.conv]) with N != 1 arguments that invokes a constructor to build a temporary object. With N == 1 arguments the functional cast expression will be represented by CXXFunctionalCastExpr. Example:

Declared at: clang/include/clang/AST/ExprCXX.h:1797

Inherits from: CXXConstructExpr

Member Variables

private clang::TypeSourceInfo* TSI

Inherited from Stmt:

protected

Method Overview

  • private CXXTemporaryObjectExpr(clang::CXXConstructorDecl * Cons, clang::QualType Ty, clang::TypeSourceInfo * TSI, ArrayRef<clang::Expr *> Args, clang::SourceRange ParenOrBraceRange, bool HadMultipleCandidates, bool ListInitialization, bool StdInitListInitialization, bool ZeroInitialization)
  • private CXXTemporaryObjectExpr(clang::Stmt::EmptyShell Empty, unsigned int NumArgs)
  • public static clang::CXXTemporaryObjectExpr * Create(const clang::ASTContext & Ctx, clang::CXXConstructorDecl * Cons, clang::QualType Ty, clang::TypeSourceInfo * TSI, ArrayRef<clang::Expr *> Args, clang::SourceRange ParenOrBraceRange, bool HadMultipleCandidates, bool ListInitialization, bool StdInitListInitialization, bool ZeroInitialization)
  • public static clang::CXXTemporaryObjectExpr * CreateEmpty(const clang::ASTContext & Ctx, unsigned int NumArgs)
  • public static bool classof(const clang::Stmt * T)
  • public clang::SourceLocation getBeginLoc() const
  • public clang::SourceLocation getEndLoc() const
  • public clang::TypeSourceInfo * getTypeSourceInfo() const

Inherited from CXXConstructExpr:

Inherited from Expr:

Inherited from ValueStmt:

Inherited from Stmt:

Methods

CXXTemporaryObjectExpr(
    clang::CXXConstructorDecl* Cons,
    clang::QualType Ty,
    clang::TypeSourceInfo* TSI,
    ArrayRef<clang::Expr*> Args,
    clang::SourceRange ParenOrBraceRange,
    bool HadMultipleCandidates,
    bool ListInitialization,
    bool StdInitListInitialization,
    bool ZeroInitialization)

Declared at: clang/include/clang/AST/ExprCXX.h:1806

Parameters

clang::CXXConstructorDecl* Cons
clang::QualType Ty
clang::TypeSourceInfo* TSI
ArrayRef<clang::Expr*> Args
clang::SourceRange ParenOrBraceRange
bool HadMultipleCandidates
bool ListInitialization
bool StdInitListInitialization
bool ZeroInitialization

CXXTemporaryObjectExpr(
    clang::Stmt::EmptyShell Empty,
    unsigned int NumArgs)

Declared at: clang/include/clang/AST/ExprCXX.h:1813

Parameters

clang::Stmt::EmptyShell Empty
unsigned int NumArgs

static clang::CXXTemporaryObjectExpr* Create(
    const clang::ASTContext& Ctx,
    clang::CXXConstructorDecl* Cons,
    clang::QualType Ty,
    clang::TypeSourceInfo* TSI,
    ArrayRef<clang::Expr*> Args,
    clang::SourceRange ParenOrBraceRange,
    bool HadMultipleCandidates,
    bool ListInitialization,
    bool StdInitListInitialization,
    bool ZeroInitialization)

Declared at: clang/include/clang/AST/ExprCXX.h:1817

Parameters

const clang::ASTContext& Ctx
clang::CXXConstructorDecl* Cons
clang::QualType Ty
clang::TypeSourceInfo* TSI
ArrayRef<clang::Expr*> Args
clang::SourceRange ParenOrBraceRange
bool HadMultipleCandidates
bool ListInitialization
bool StdInitListInitialization
bool ZeroInitialization

static clang::CXXTemporaryObjectExpr* CreateEmpty(
    const clang::ASTContext& Ctx,
    unsigned int NumArgs)

Declared at: clang/include/clang/AST/ExprCXX.h:1823

Parameters

const clang::ASTContext& Ctx
unsigned int NumArgs

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

Declared at: clang/include/clang/AST/ExprCXX.h:1831

Parameters

const clang::Stmt* T

clang::SourceLocation getBeginLoc() const

Declared at: clang/include/clang/AST/ExprCXX.h:1828

clang::SourceLocation getEndLoc() const

Declared at: clang/include/clang/AST/ExprCXX.h:1829

clang::TypeSourceInfo* getTypeSourceInfo() const

Declared at: clang/include/clang/AST/ExprCXX.h:1826