From: Jordan Rose Date: Fri, 6 Jul 2012 22:00:01 +0000 (+0000) Subject: [analyzer] Add comments to Calls.h. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0e020adcb69e91826f4ee14a0c1d381f7b624a34;p=clang [analyzer] Add comments to Calls.h. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159867 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/StaticAnalyzer/Core/PathSensitive/Calls.h b/include/clang/StaticAnalyzer/Core/PathSensitive/Calls.h index 5ab13567cd..84d9b19c86 100644 --- a/include/clang/StaticAnalyzer/Core/PathSensitive/Calls.h +++ b/include/clang/StaticAnalyzer/Core/PathSensitive/Calls.h @@ -366,6 +366,9 @@ public: } }; +/// \brief Represents the memory allocation call in a C++ new-expression. +/// +/// This is a call to "operator new". class CXXAllocatorCall : public AnyFunctionCall { const CXXNewExpr *E; @@ -425,12 +428,22 @@ public: const ObjCMessageExpr *getOriginExpr() const { return Msg; } + /// \brief Returns the value of the receiver at the time of this call. SVal getReceiverSVal() const; + /// \brief Returns the expression for the receiver of this message if it is + /// an instance message. + /// + /// Returns NULL otherwise. + /// \sa ObjCMessageExpr::getInstanceReceiver() const Expr *getInstanceReceiverExpr() const { return Msg->getInstanceReceiver(); } + /// \brief Get the interface for the receiver. + /// + /// This works whether this is an instance message or a class message. + /// However, it currently just uses the static type of the receiver. const ObjCInterfaceDecl *getReceiverInterface() const { return Msg->getReceiverInterface(); } @@ -483,6 +496,10 @@ public: return EntireRange; } + /// \brief Return the property reference part of this access. + /// + /// In the expression "obj.prop += 1", the property reference expression is + /// "obj.prop". const ObjCPropertyRefExpr *getPropertyExpr() const { return PropE; }