clang
10.0.0svn
|
Represents a non-static C++ member function call, no matter how it is written. More...
#include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h"
Public Member Functions | |
virtual const Expr * | getCXXThisExpr () const |
Returns the expression representing the implicit 'this' object. More... | |
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) |
Protected Member Functions | |
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 |
Represents a non-static C++ member function call, no matter how it is written.
Definition at line 638 of file CallEvent.h.
|
inlineprotected |
Definition at line 640 of file CallEvent.h.
|
inlineprotected |
Definition at line 643 of file CallEvent.h.
|
protecteddefault |
Definition at line 665 of file CallEvent.h.
References clang::ento::CE_BEG_CXX_INSTANCE_CALLS, and clang::ento::CE_END_CXX_INSTANCE_CALLS.
|
inlinevirtual |
Returns the expression representing the implicit 'this' object.
Reimplemented in clang::CXXMemberOperatorCall, and clang::CXXMemberCall.
Definition at line 653 of file CallEvent.h.
|
virtual |
Returns the value of the implicit 'this' object.
Reimplemented in clang::CXXDestructorCall.
Definition at line 712 of file CallEvent.cpp.
References clang::ento::CallEvent::getSVal().
|
override |
Definition at line 669 of file CallEvent.cpp.
References clang::ento::AnyFunctionCall::getDecl(), clang::ento::CallEvent::getOriginExpr(), and clang::ento::CallEvent::getSVal().
Referenced by isTrivialObjectAssignment().
|
overrideprotected |
Definition at line 681 of file CallEvent.cpp.
References clang::Type::getAsCXXRecordDecl(), clang::ento::CallEvent::getDecl(), clang::Type::getPointeeType(), clang::Expr::getType(), clang::CXXRecordDecl::hasMutableFields(), clang::Expr::ignoreParenBaseCasts(), clang::Type::isPointerType(), and clang::ento::RegionAndSymbolInvalidationTraits::TK_PreserveContents.
|
override |
Definition at line 787 of file CallEvent.cpp.
References clang::Decl::getCanonicalDecl(), clang::ento::CallEvent::getDecl(), clang::LocationContext::getDecl(), clang::ento::AnyFunctionCall::getInitialStackFrameContents(), clang::CXXMethodDecl::getParent(), clang::ASTContext::getPointerType(), clang::ASTContext::getRecordType(), and clang::ento::CallEvent::getState().
|
override |
Definition at line 723 of file CallEvent.cpp.
References clang::Type::getAsCXXRecordDecl(), clang::ento::CallEvent::getDecl(), clang::ento::getDynamicTypeInfo(), clang::Type::getPointeeType(), clang::ento::AnyFunctionCall::getRuntimeDefinition(), clang::ento::CallEvent::getState(), clang::FunctionDecl::hasBody(), and clang::QualType::isNull().
Referenced by clang::CXXMemberCall::getRuntimeDefinition(), and clang::CXXDestructorCall::getRuntimeDefinition().