class CXXMemberCall

Declaration

class CXXMemberCall : public CXXInstanceCall { /* full declaration omitted */ };

Description

Represents a non-static C++ member function call. Example: \c obj.fun()

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:696

Inherits from: CXXInstanceCall

Member Variables

Inherited from CallEvent:

protected Data
protected Location

Method Overview

  • protected CXXMemberCall(const clang::CXXMemberCallExpr * CE, clang::ento::ProgramStateRef St, const clang::LocationContext * LCtx)
  • protected CXXMemberCall(const clang::ento::CXXMemberCall & Other)
  • public static bool classof(const clang::ento::CallEvent * CA)
  • protected void cloneTo(void * Dest) const
  • public const clang::Expr * getArgExpr(unsigned int Index) const
  • public const clang::Expr * getCXXThisExpr() const
  • public clang::ento::CallEvent::Kind getKind() const
  • public llvm::StringRef getKindAsString() const
  • public unsigned int getNumArgs() const
  • public const clang::CXXMemberCallExpr * getOriginExpr() const
  • public clang::ento::RuntimeDefinition getRuntimeDefinition() const

Inherited from CXXInstanceCall:

Inherited from AnyFunctionCall:

Inherited from CallEvent:

Methods

CXXMemberCall(const clang::CXXMemberCallExpr* CE,
              clang::ento::ProgramStateRef St,
              const clang::LocationContext* LCtx)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:700

Parameters

const clang::CXXMemberCallExpr* CE
clang::ento::ProgramStateRef St
const clang::LocationContext* LCtx

CXXMemberCall(
    const clang::ento::CXXMemberCall& Other)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:703

Parameters

const clang::ento::CXXMemberCall& Other

static bool classof(
    const clang::ento::CallEvent* CA)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:729

Parameters

const clang::ento::CallEvent* CA

void cloneTo(void* Dest) const

Description

Copies this CallEvent, with vtable intact, into a new block of memory.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:705

Parameters

void* Dest

const clang::Expr* getArgExpr(
    unsigned int Index) const

Description

Returns the expression associated with a given argument. May be null if this expression does not appear in the source.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:718

Parameters

unsigned int Index

const clang::Expr* getCXXThisExpr() const

Description

Returns the expression representing the implicit 'this' object.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:722

clang::ento::CallEvent::Kind getKind() const

Description

Returns the kind of call this is.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:726

llvm::StringRef getKindAsString() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:727

unsigned int getNumArgs() const

Description

Returns the number of arguments (explicit and implicit). Note that this may be greater than the number of parameters in the callee's declaration, and that it may include arguments not written in the source.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:712

const clang::CXXMemberCallExpr* getOriginExpr()
    const

Description

Returns the expression whose value will be the result of this call. May be null.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:708

clang::ento::RuntimeDefinition
getRuntimeDefinition() const

Description

Returns the definition of the function or method that will be called.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:724