clang API Documentation

Public Types | Public Member Functions | Static Public Member Functions
clang::ento::objc_retain::RetEffect Class Reference

#include <ObjCRetainCount.h>

List of all members.

Public Types

enum  Kind {
  NoRet, OwnedSymbol, OwnedAllocatedSymbol, NotOwnedSymbol,
  GCNotOwnedSymbol, OwnedWhenTrackedReceiver, NoRetHard
}
enum  ObjKind { CF, ObjC, AnyObj }
 Determines the object kind of a tracked object. More...

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, bool isAllocated=false)
static RetEffect MakeNotOwned (ObjKind o)
static RetEffect MakeGCNotOwned ()
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 107 of file ObjCRetainCount.h.


Member Enumeration Documentation

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.

OwnedAllocatedSymbol 

Indicates that the returned value is an owned (+1) symbol and that it should be treated as freshly allocated.

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.

GCNotOwnedSymbol 

Indicates that the object is not owned and controlled by the Garbage collector.

OwnedWhenTrackedReceiver 

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

NoRetHard 

Definition at line 109 of file ObjCRetainCount.h.

Determines the object kind of a tracked object.

Enumerator:
CF 

Indicates that the tracked object is a CF object. This is important between GC and non-GC code.

ObjC 

Indicates that the tracked object is an Objective-C object.

AnyObj 

Indicates that the tracked object could be a CF or Objective-C object.

Definition at line 136 of file ObjCRetainCount.h.


Member Function Documentation

Definition at line 153 of file ObjCRetainCount.h.

Referenced by llvm::FoldingSetTrait< RetEffect >::Profile().

Definition at line 155 of file ObjCRetainCount.h.

Referenced by llvm::FoldingSetTrait< RetEffect >::Profile().

Definition at line 157 of file ObjCRetainCount.h.

References OwnedAllocatedSymbol, OwnedSymbol, and OwnedWhenTrackedReceiver.

Definition at line 180 of file ObjCRetainCount.h.

References GCNotOwnedSymbol, and ObjC.

Definition at line 183 of file ObjCRetainCount.h.

References NoRet.

Definition at line 186 of file ObjCRetainCount.h.

References NoRetHard.

Definition at line 177 of file ObjCRetainCount.h.

References NotOwnedSymbol.

static RetEffect clang::ento::objc_retain::RetEffect::MakeOwned ( ObjKind  o,
bool  isAllocated = false 
) [inline, static]

Definition at line 174 of file ObjCRetainCount.h.

References OwnedAllocatedSymbol, and OwnedSymbol.

Definition at line 170 of file ObjCRetainCount.h.

References ObjC, and OwnedWhenTrackedReceiver.

Definition at line 162 of file ObjCRetainCount.h.

References NotOwnedSymbol.

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

Definition at line 166 of file ObjCRetainCount.h.


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