clang API Documentation

Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Friends
clang::CXXDestructorCall Class Reference

Represents an implicit call to a C++ destructor. More...

#include <CallEvent.h>

Inheritance diagram for clang::CXXDestructorCall:
Inheritance graph
[legend]
Collaboration diagram for clang::CXXDestructorCall:
Collaboration graph
[legend]

List of all members.

Public Member Functions

SourceRange getSourceRange () const override
unsigned getNumArgs () const override
RuntimeDefinition getRuntimeDefinition () const override
SVal getCXXThisVal () const override
 Returns the value of the implicit 'this' object.
bool isBaseDestructor () const
 Returns true if this is a call to a base class destructor.
Kind getKind () const override

Static Public Member Functions

static bool classof (const CallEvent *CA)

Protected Types

typedef llvm::PointerIntPair
< const MemRegion *, 1, bool
DtorDataTy

Protected Member Functions

 CXXDestructorCall (const CXXDestructorDecl *DD, const Stmt *Trigger, const MemRegion *Target, bool IsBaseDestructor, ProgramStateRef St, const LocationContext *LCtx)
 CXXDestructorCall (const CXXDestructorCall &Other)
void cloneTo (void *Dest) const override

Friends

class CallEventManager

Detailed Description

Represents an implicit call to a C++ destructor.

This can occur at the end of a scope (for automatic objects), at the end of a full-expression (for temporaries), or as part of a delete.

Definition at line 639 of file CallEvent.h.


Member Typedef Documentation

typedef llvm::PointerIntPair<const MemRegion *, 1, bool> clang::CXXDestructorCall::DtorDataTy [protected]

Definition at line 643 of file CallEvent.h.


Constructor & Destructor Documentation

clang::CXXDestructorCall::CXXDestructorCall ( const CXXDestructorDecl DD,
const Stmt Trigger,
const MemRegion *  Target,
bool  IsBaseDestructor,
ProgramStateRef  St,
const LocationContext LCtx 
) [inline, protected]

Creates an implicit destructor.

Parameters:
DDThe destructor that will be called.
TriggerThe statement whose completion causes this destructor call.
TargetThe object region to be destructed.
StThe path-sensitive state at this point in the program.
LCtxThe location context at this point in the program.

Definition at line 652 of file CallEvent.h.

References clang::Stmt::getLocEnd().

clang::CXXDestructorCall::CXXDestructorCall ( const CXXDestructorCall Other) [inline, protected]

Definition at line 660 of file CallEvent.h.


Member Function Documentation

static bool clang::CXXDestructorCall::classof ( const CallEvent CA) [inline, static]

Reimplemented from clang::CXXInstanceCall.

Definition at line 679 of file CallEvent.h.

References clang::ento::CE_CXXDestructor.

void clang::CXXDestructorCall::cloneTo ( void *  Dest) const [inline, override, protected]

Definition at line 661 of file CallEvent.h.

SVal CXXDestructorCall::getCXXThisVal ( ) const [override, virtual]

Returns the value of the implicit 'this' object.

Reimplemented from clang::CXXInstanceCall.

Definition at line 592 of file CallEvent.cpp.

Kind clang::CXXDestructorCall::getKind ( ) const [inline, override]

Definition at line 677 of file CallEvent.h.

References clang::ento::CE_CXXDestructor.

unsigned clang::CXXDestructorCall::getNumArgs ( ) const [inline, override]

Definition at line 665 of file CallEvent.h.

Definition at line 664 of file CallEvent.h.

Returns true if this is a call to a base class destructor.

Definition at line 673 of file CallEvent.h.


Friends And Related Function Documentation

friend class CallEventManager [friend]

Definition at line 640 of file CallEvent.h.


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