|
clang
5.0.0
|
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 | |
| void | getExtraInvalidatedValues (ValueList &Values, RegionAndSymbolInvalidationTraits *ETraits) const override |
| CXXInstanceCall (const CallExpr *CE, ProgramStateRef St, const LocationContext *LCtx) | |
| CXXInstanceCall (const FunctionDecl *D, ProgramStateRef St, const LocationContext *LCtx) | |
| CXXInstanceCall (const CXXInstanceCall &Other) | |
Represents a non-static C++ member function call, no matter how it is written.
Definition at line 612 of file CallEvent.h.
|
inlineprotected |
Definition at line 617 of file CallEvent.h.
|
inlineprotected |
Definition at line 620 of file CallEvent.h.
|
inlineprotected |
Definition at line 625 of file CallEvent.h.
Definition at line 641 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 629 of file CallEvent.h.
|
virtual |
Returns the value of the implicit 'this' object.
Reimplemented in clang::CXXDestructorCall.
Definition at line 467 of file CallEvent.cpp.
References clang::ento::SVal::getAs(), and clang::ento::SVal::isUnknownOrUndef().
|
override |
Definition at line 429 of file CallEvent.cpp.
References clang::CallExpr::getCallee(), clang::ento::AnyFunctionCall::getDecl(), and clang::CallExpr::getDirectCallee().
Referenced by isTrivialObjectAssignment().
|
overrideprotected |
Definition at line 441 of file CallEvent.cpp.
References clang::Type::getAsCXXRecordDecl(), clang::ento::SVal::getAsRegion(), clang::ento::MemRegion::getBaseRegion(), clang::Expr::getType(), clang::CXXRecordDecl::hasMutableFields(), clang::Expr::ignoreParenBaseCasts(), clang::ento::RegionAndSymbolInvalidationTraits::setTrait(), and clang::ento::RegionAndSymbolInvalidationTraits::TK_PreserveContents.
|
override |
Definition at line 540 of file CallEvent.cpp.
References clang::ento::StoreManager::attemptDownCast(), clang::CXXMethodDecl::getCanonicalDecl(), clang::ento::SValBuilder::getContext(), clang::ento::SValBuilder::getCXXThis(), clang::LocationContext::getDecl(), clang::ento::AnyFunctionCall::getInitialStackFrameContents(), clang::CXXMethodDecl::getParent(), clang::ASTContext::getPointerType(), clang::ASTContext::getRecordType(), clang::ento::ProgramStateManager::getStoreManager(), clang::ento::ProgramStateManager::getSValBuilder(), and clang::ento::SVal::isUnknown().
|
override |
Definition at line 479 of file CallEvent.cpp.
References clang::ento::DynamicTypeInfo::canBeASubClass(), clang::Type::getAsCXXRecordDecl(), clang::CXXMethodDecl::getCorrespondingMethodInClass(), clang::ento::getDynamicTypeInfo(), clang::CXXMethodDecl::getParent(), clang::Type::getPointeeType(), clang::ento::AnyFunctionCall::getRuntimeDefinition(), clang::ento::DynamicTypeInfo::getType(), clang::FunctionDecl::hasBody(), clang::QualType::isNull(), clang::ento::DynamicTypeInfo::isValid(), clang::CXXMethodDecl::isVirtual(), Result, and clang::ento::MemRegion::StripCasts().
Referenced by clang::CXXMemberCall::getRuntimeDefinition(), and clang::CXXDestructorCall::getRuntimeDefinition().
1.8.6