clang 19.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 140 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 142 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 175 of file RetainSummaryManager.h.

Referenced by refValFromRetEffect().

◆ isOwned()

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

◆ MakeNoRet()

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

◆ MakeNoRetHard()

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

Definition at line 202 of file RetainSummaryManager.h.

References NoRetHard.

◆ MakeNotOwned()

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

Definition at line 196 of file RetainSummaryManager.h.

References NotOwnedSymbol.

◆ MakeOwned()

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

Definition at line 193 of file RetainSummaryManager.h.

References OwnedSymbol.

◆ MakeOwnedWhenTrackedReceiver()

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

Definition at line 189 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 185 of file RetainSummaryManager.h.

References clang::Other.


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