class CXXDeleteExpr

Declaration

class CXXDeleteExpr : public Expr { /* full declaration omitted */ };

Description

Represents a \c delete expression for memory deallocation and destructor calls, e.g. "delete[] pArray".

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

Inherits from: Expr

Member Variables

private clang::FunctionDecl* OperatorDelete = nullptr
Points to the operator delete overload that is used. Could be a member.
private clang::Stmt* Argument = nullptr
The pointer expression to be deleted.

Inherited from Stmt:

protected

Method Overview

Inherited from Expr:

Inherited from ValueStmt:

Inherited from Stmt:

Methods

CXXDeleteExpr(clang::QualType Ty,
              bool GlobalDelete,
              bool ArrayForm,
              bool ArrayFormAsWritten,
              bool UsualArrayDeleteWantsSize,
              clang::FunctionDecl* OperatorDelete,
              clang::Expr* Arg,
              clang::SourceLocation Loc)

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

Parameters

clang::QualType Ty
bool GlobalDelete
bool ArrayForm
bool ArrayFormAsWritten
bool UsualArrayDeleteWantsSize
clang::FunctionDecl* OperatorDelete
clang::Expr* Arg
clang::SourceLocation Loc

CXXDeleteExpr(clang::Stmt::EmptyShell Shell)

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

Parameters

clang::Stmt::EmptyShell Shell

clang::Stmt::child_range children()

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

clang::Stmt::const_child_range children() const

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

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

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

Parameters

const clang::Stmt* T

bool doesUsualArrayDeleteWantSize() const

Description

Answers whether the usual array deallocation function for the allocated type expects the size of the allocation as a parameter. This can be true even if the actual deallocation function that we're using doesn't want a size.

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

clang::Expr* getArgument()

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

const clang::Expr* getArgument() const

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

clang::SourceLocation getBeginLoc() const

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

clang::QualType getDestroyedType() const

Description

Retrieve the type being destroyed. If the type being destroyed is a dependent type which may or may not be a pointer, return an invalid type.

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

clang::SourceLocation getEndLoc() const

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

clang::FunctionDecl* getOperatorDelete() const

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

bool isArrayForm() const

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

bool isArrayFormAsWritten() const

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

bool isGlobalDelete() const

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