clang
15.0.0git
|
Summary for a function with respect to ownership changes. More...
#include "clang/Analysis/RetainSummaryManager.h"
Public Member Functions | |
RetainSummary (ArgEffects A, RetEffect R, ArgEffect defaultEff, ArgEffect ReceiverEff, ArgEffect ThisEff) | |
ArgEffect | getArg (unsigned idx) const |
getArg - Return the argument effect on the argument specified by idx (starting from 0). More... | |
void | addArg (ArgEffects::Factory &af, unsigned idx, ArgEffect e) |
void | setDefaultArgEffect (ArgEffect E) |
setDefaultArgEffect - Set the default argument effect. More... | |
RetEffect | getRetEffect () const |
getRetEffect - Returns the effect on the return value of the call. More... | |
void | setRetEffect (RetEffect E) |
setRetEffect - Set the effect of the return value of the call. More... | |
void | setReceiverEffect (ArgEffect e) |
Sets the effect on the receiver of the message. More... | |
ArgEffect | getReceiverEffect () const |
getReceiverEffect - Returns the effect on the receiver of the call. More... | |
ArgEffect | getThisEffect () const |
ArgEffect | getDefaultEffect () const |
void | setThisEffect (ArgEffect e) |
Set the effect of the method on "this". More... | |
bool | isNoop () const |
bool | operator== (const RetainSummary &Other) const |
Test if two retain summaries are identical. More... | |
void | Profile (llvm::FoldingSetNodeID &ID) const |
Profile this summary for inclusion in a FoldingSet. More... | |
bool | isSimple () const |
A retain summary is simple if it has no ArgEffects other than the default. More... | |
ArgEffects | getArgEffects () const |
Friends | |
class | RetainSummaryManager |
Summary for a function with respect to ownership changes.
Definition at line 282 of file RetainSummaryManager.h.
|
inline |
Definition at line 304 of file RetainSummaryManager.h.
|
inline |
Definition at line 321 of file RetainSummaryManager.h.
getArg - Return the argument effect on the argument specified by idx (starting from 0).
Definition at line 314 of file RetainSummaryManager.h.
Referenced by clang::ento::retaincountchecker::RetainCountChecker::checkSummary(), clang::ento::retaincountchecker::RetainCountChecker::processSummaryOfInlined(), and updateOutParameters().
|
inline |
Definition at line 381 of file RetainSummaryManager.h.
Referenced by clang::ento::retaincountchecker::RetainCountChecker::checkBeginFunction(), and updateOutParameters().
|
inline |
Definition at line 348 of file RetainSummaryManager.h.
|
inline |
getReceiverEffect - Returns the effect on the receiver of the call.
This is only meaningful if the summary applies to an ObjCMessageExpr*.
Definition at line 342 of file RetainSummaryManager.h.
Referenced by clang::ento::retaincountchecker::RetainCountChecker::checkSummary(), and clang::ento::retaincountchecker::RetainCountChecker::processSummaryOfInlined().
|
inline |
getRetEffect - Returns the effect on the return value of the call.
Definition at line 331 of file RetainSummaryManager.h.
References Ret().
Referenced by clang::ento::retaincountchecker::RetainCountChecker::checkSummary(), and clang::ento::retaincountchecker::RetainCountChecker::processSummaryOfInlined().
|
inline |
Definition at line 346 of file RetainSummaryManager.h.
References clang::interp::This().
Referenced by clang::ento::retaincountchecker::RetainCountChecker::checkSummary().
|
inline |
Definition at line 353 of file RetainSummaryManager.h.
References clang::ento::DoNothing, clang::ento::ArgEffect::getKind(), clang::ento::RetEffect::MakeNoRet(), clang::ento::MayEscape, Ret(), and clang::interp::This().
|
inline |
A retain summary is simple if it has no ArgEffects other than the default.
Definition at line 377 of file RetainSummaryManager.h.
|
inline |
Test if two retain summaries are identical.
Note that merely equivalent summaries are not necessarily identical (for example, if an explicit argument effect matches the default effect).
Definition at line 362 of file RetainSummaryManager.h.
References Ret(), and clang::interp::This().
|
inline |
Profile this summary for inclusion in a FoldingSet.
Definition at line 368 of file RetainSummaryManager.h.
References Ret(), and clang::interp::This().
|
inline |
setDefaultArgEffect - Set the default argument effect.
Definition at line 326 of file RetainSummaryManager.h.
|
inline |
Sets the effect on the receiver of the message.
Definition at line 338 of file RetainSummaryManager.h.
|
inline |
setRetEffect - Set the effect of the return value of the call.
Definition at line 334 of file RetainSummaryManager.h.
References Ret().
|
inline |
Set the effect of the method on "this".
Definition at line 351 of file RetainSummaryManager.h.
References clang::interp::This().
|
friend |
Definition at line 386 of file RetainSummaryManager.h.