clang  14.0.0git
Public Types | Public Member Functions | Static Public Member Functions | List of all members
clang::ento::RetEffect Class Reference

RetEffect summarizes a call's retain/release behavior with respect to its return value. More...

#include "clang/Analysis/RetainSummaryManager.h"

Public Types

enum  Kind {
  NoRet, OwnedSymbol, NotOwnedSymbol, OwnedWhenTrackedReceiver,
  NoRetHard
}
 

Public Member Functions

Kind getKind () const
 
ObjKind getObjKind () const
 
bool isOwned () const
 
bool notOwned () const
 
bool operator== (const RetEffect &Other) const
 

Static Public Member Functions

static RetEffect MakeOwnedWhenTrackedReceiver ()
 
static RetEffect MakeOwned (ObjKind o)
 
static RetEffect MakeNotOwned (ObjKind o)
 
static RetEffect MakeNoRet ()
 
static RetEffect MakeNoRetHard ()
 

Detailed Description

RetEffect summarizes a call's retain/release behavior with respect to its return value.

Definition at line 139 of file RetainSummaryManager.h.

Member Enumeration Documentation

◆ Kind

Enumerator
NoRet 

Indicates that no retain count information is tracked for the return value.

OwnedSymbol 

Indicates that the returned value is an owned (+1) symbol.

NotOwnedSymbol 

Indicates that the returned value is an object with retain count semantics but that it is not owned (+0).

This is the default for getters, etc.

OwnedWhenTrackedReceiver 

Indicates that the return value is an owned object when the receiver is also a tracked object.

NoRetHard 

Definition at line 141 of file RetainSummaryManager.h.

Member Function Documentation

◆ getKind()

Kind clang::ento::RetEffect::getKind ( ) const
inline

◆ getObjKind()

ObjKind clang::ento::RetEffect::getObjKind ( ) const
inline

Definition at line 174 of file RetainSummaryManager.h.

Referenced by refValFromRetEffect().

◆ isOwned()

bool clang::ento::RetEffect::isOwned ( ) const
inline

Definition at line 176 of file RetainSummaryManager.h.

References OwnedSymbol, and OwnedWhenTrackedReceiver.

Referenced by refValFromRetEffect().

◆ MakeNoRet()

static RetEffect clang::ento::RetEffect::MakeNoRet ( )
inlinestatic

◆ MakeNoRetHard()

static RetEffect clang::ento::RetEffect::MakeNoRetHard ( )
inlinestatic

Definition at line 201 of file RetainSummaryManager.h.

References NoRetHard.

◆ MakeNotOwned()

static RetEffect clang::ento::RetEffect::MakeNotOwned ( ObjKind  o)
inlinestatic

Definition at line 195 of file RetainSummaryManager.h.

References NotOwnedSymbol.

◆ MakeOwned()

static RetEffect clang::ento::RetEffect::MakeOwned ( ObjKind  o)
inlinestatic

Definition at line 192 of file RetainSummaryManager.h.

References OwnedSymbol.

◆ MakeOwnedWhenTrackedReceiver()

static RetEffect clang::ento::RetEffect::MakeOwnedWhenTrackedReceiver ( )
inlinestatic

Definition at line 188 of file RetainSummaryManager.h.

References clang::ento::ObjC, and OwnedWhenTrackedReceiver.

◆ notOwned()

bool clang::ento::RetEffect::notOwned ( ) const
inline

◆ operator==()

bool clang::ento::RetEffect::operator== ( const RetEffect Other) const
inline

Definition at line 184 of file RetainSummaryManager.h.


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