clang 10.0.0git

Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
clang::CXXMemberCall Class Reference

Represents a non-static C++ member function call. More...

`#include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h"`

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

## Public Member Functions
virtual const CXXMemberCallExpr * | getOriginExpr () const
unsigned | getNumArgs () const override
const Expr * | getArgExpr (unsigned Index) const override
const Expr * | getCXXThisExpr () const override
| Returns the expression representing the implicit 'this' object. More...
RuntimeDefinition | getRuntimeDefinition () const override
Kind | getKind () const override
Public Member Functions inherited from clang::CXXInstanceCall
virtual SVal | getCXXThisVal () const
| Returns the value of the implicit 'this' object. More...
const FunctionDecl * | getDecl () const override
RuntimeDefinition | getRuntimeDefinition () const override
void | getInitialStackFrameContents (const StackFrameContext *CalleeCtx, BindingsTy &Bindings) const override

## Static Public Member Functions
static bool | classof (const CallEvent *CA)
Static Public Member Functions inherited from clang::CXXInstanceCall
static bool | classof (const CallEvent *CA)

## Protected Member Functions
| CXXMemberCall (const CXXMemberCallExpr *CE, ProgramStateRef St, const LocationContext *LCtx)
| CXXMemberCall (const CXXMemberCall &Other)=default
void | cloneTo (void *Dest) const override
Protected Member Functions inherited from clang::CXXInstanceCall
| CXXInstanceCall (const CallExpr *CE, ProgramStateRef St, const LocationContext *LCtx)
| CXXInstanceCall (const FunctionDecl *D, ProgramStateRef St, const LocationContext *LCtx)
| CXXInstanceCall (const CXXInstanceCall &Other)=default
void | getExtraInvalidatedValues (ValueList &Values, RegionAndSymbolInvalidationTraits *ETraits) const override

## Friends
class | CallEventManager

## Detailed Description

Represents a non-static C++ member function call.

Example: `obj.fun()`

Definition at line 674 of file CallEvent.h.

## Constructor & Destructor Documentation

## ◆ CXXMemberCall() [1/2]

clang::CXXMemberCall::CXXMemberCall | ( | const CXXMemberCallExpr * | CE,
|  | ProgramStateRef | St,
|  | const LocationContext * | LCtx
| ) |  |
| inline protected

Definition at line 678 of file CallEvent.h.

## ◆ CXXMemberCall() [2/2]

clang::CXXMemberCall::CXXMemberCall | ( | const CXXMemberCall & | Other | ) |
| protected default

## Member Function Documentation

## ◆ classof()

static bool clang::CXXMemberCall::classof | ( | const CallEvent * | CA | ) |
| inline static

Definition at line 706 of file CallEvent.h.

References clang::ento::CE_CXXMember.

## ◆ cloneTo()

void clang::CXXMemberCall::cloneTo | ( | void * | Dest | ) | const
| inline override protected

Definition at line 683 of file CallEvent.h.

## ◆ getArgExpr()

const Expr* clang::CXXMemberCall::getArgExpr | ( | unsigned | Index | ) | const
| inline override

Definition at line 696 of file CallEvent.h.

## ◆ getCXXThisExpr()

const Expr * CXXMemberCall::getCXXThisExpr | ( |  | ) | const
| override virtual

Returns the expression representing the implicit 'this' object.

Reimplemented from clang::CXXInstanceCall.

Definition at line 828 of file CallEvent.cpp.

References clang::ento::CallEvent::getOriginExpr().

## ◆ getKind()

Kind clang::CXXMemberCall::getKind | ( |  | ) | const
| inline override

Definition at line 704 of file CallEvent.h.

References clang::ento::CE_CXXMember.

## ◆ getNumArgs()

unsigned clang::CXXMemberCall::getNumArgs | ( |  | ) | const
| inline override

Definition at line 690 of file CallEvent.h.

## ◆ getOriginExpr()

virtual const CXXMemberCallExpr* clang::CXXMemberCall::getOriginExpr | ( |  | ) | const
| inline virtual

Definition at line 686 of file CallEvent.h.

## ◆ getRuntimeDefinition()

RuntimeDefinition CXXMemberCall::getRuntimeDefinition | ( |  | ) | const
| override

Definition at line 832 of file CallEvent.cpp.

References clang::ento::CallEvent::getOriginExpr(), clang::ento::AnyFunctionCall::getRuntimeDefinition(), and clang::CXXInstanceCall::getRuntimeDefinition().

## Friends And Related Function Documentation

## ◆ CallEventManager

friend class CallEventManager
| friend

Definition at line 675 of file CallEvent.h.

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

- include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
- lib/StaticAnalyzer/Core/CallEvent.cpp