clang  8.0.0svn
Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
clang::CXXMemberOperatorCall Class Reference

Represents a C++ overloaded operator call where the operator is implemented as a non-static member function. More...

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

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

Public Member Functions

virtual const CXXOperatorCallExprgetOriginExpr () const
 
unsigned getNumArgs () const override
 
const ExprgetArgExpr (unsigned Index) const override
 
const ExprgetCXXThisExpr () const override
 Returns the expression representing the implicit 'this' object. More...
 
Kind getKind () const override
 
Optional< unsigned > getAdjustedParameterIndex (unsigned ASTArgumentIndex) const override
 
unsigned getASTArgumentIndex (unsigned CallArgumentIndex) const override
 
- Public Member Functions inherited from clang::CXXInstanceCall
virtual SVal getCXXThisVal () const
 Returns the value of the implicit 'this' object. More...
 
const FunctionDeclgetDecl () 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

 CXXMemberOperatorCall (const CXXOperatorCallExpr *CE, ProgramStateRef St, const LocationContext *LCtx)
 
 CXXMemberOperatorCall (const CXXMemberOperatorCall &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 C++ overloaded operator call where the operator is implemented as a non-static member function.

Example: iter + 1

Definition at line 747 of file CallEvent.h.

Constructor & Destructor Documentation

◆ CXXMemberOperatorCall() [1/2]

clang::CXXMemberOperatorCall::CXXMemberOperatorCall ( const CXXOperatorCallExpr CE,
ProgramStateRef  St,
const LocationContext LCtx 
)
inlineprotected

Definition at line 751 of file CallEvent.h.

◆ CXXMemberOperatorCall() [2/2]

clang::CXXMemberOperatorCall::CXXMemberOperatorCall ( const CXXMemberOperatorCall Other)
protecteddefault

Member Function Documentation

◆ classof()

static bool clang::CXXMemberOperatorCall::classof ( const CallEvent CA)
inlinestatic

Definition at line 777 of file CallEvent.h.

References clang::ento::CE_CXXMemberOperator.

◆ cloneTo()

void clang::CXXMemberOperatorCall::cloneTo ( void *  Dest) const
inlineoverrideprotected

Definition at line 756 of file CallEvent.h.

◆ getAdjustedParameterIndex()

Optional<unsigned> clang::CXXMemberOperatorCall::getAdjustedParameterIndex ( unsigned  ASTArgumentIndex) const
inlineoverride

Definition at line 782 of file CallEvent.h.

References None.

◆ getArgExpr()

const Expr* clang::CXXMemberOperatorCall::getArgExpr ( unsigned  Index) const
inlineoverride

Definition at line 769 of file CallEvent.h.

◆ getASTArgumentIndex()

unsigned clang::CXXMemberOperatorCall::getASTArgumentIndex ( unsigned  CallArgumentIndex) const
inlineoverride

Definition at line 789 of file CallEvent.h.

◆ getCXXThisExpr()

const Expr * CXXMemberOperatorCall::getCXXThisExpr ( ) const
overridevirtual

Returns the expression representing the implicit 'this' object.

Reimplemented from clang::CXXInstanceCall.

Definition at line 826 of file CallEvent.cpp.

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

◆ getKind()

Kind clang::CXXMemberOperatorCall::getKind ( ) const
inlineoverride

Definition at line 775 of file CallEvent.h.

References clang::ento::CE_CXXMemberOperator.

◆ getNumArgs()

unsigned clang::CXXMemberOperatorCall::getNumArgs ( ) const
inlineoverride

Definition at line 765 of file CallEvent.h.

◆ getOriginExpr()

virtual const CXXOperatorCallExpr* clang::CXXMemberOperatorCall::getOriginExpr ( ) const
inlinevirtual

Definition at line 761 of file CallEvent.h.

Friends And Related Function Documentation

◆ CallEventManager

friend class CallEventManager
friend

Definition at line 748 of file CallEvent.h.


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