clang 22.0.0git
clang::ento::RetainSummaryManager Class Reference

#include "clang/Analysis/RetainSummaryManager.h"

Public Types

enum class  BehaviorSummary { NoOp , Identity , IdentityThis , IdentityOrZero }

Public Member Functions

 RetainSummaryManager (ASTContext &ctx, bool trackObjCAndCFObjects, bool trackOSObjects)
std::optional< BehaviorSummarycanEval (const CallExpr *CE, const FunctionDecl *FD, bool &hasTrustedImplementationAnnotation)
bool isTrustedReferenceCountImplementation (const Decl *FD)
const RetainSummarygetSummary (AnyCall C, bool HasNonZeroCallbackArg=false, bool IsReceiverUnconsumedSelf=false, QualType ReceiverType={})
RetEffect getObjAllocRetEffect () const

Static Public Member Functions

static bool isKnownSmartPointer (QualType QT)

Friends

class RetainSummaryTemplate

Detailed Description

Definition at line 450 of file RetainSummaryManager.h.

Member Enumeration Documentation

◆ BehaviorSummary

Enumerator
NoOp 
Identity 
IdentityThis 
IdentityOrZero 

Definition at line 638 of file RetainSummaryManager.h.

Constructor & Destructor Documentation

◆ RetainSummaryManager()

clang::ento::RetainSummaryManager::RetainSummaryManager ( ASTContext & ctx,
bool trackObjCAndCFObjects,
bool trackOSObjects )
inline

Definition at line 625 of file RetainSummaryManager.h.

References clang::ento::ObjC.

Member Function Documentation

◆ canEval()

◆ getObjAllocRetEffect()

RetEffect clang::ento::RetainSummaryManager::getObjAllocRetEffect ( ) const
inline

◆ getSummary()

◆ isKnownSmartPointer()

bool RetainSummaryManager::isKnownSmartPointer ( QualType QT)
static
Returns
Whether the type corresponds to a known smart pointer implementation (that is, everything about it is inlineable).

Definition at line 227 of file RetainSummaryManager.cpp.

References clang::Type::getAsCXXRecordDecl(), clang::QualType::getCanonicalType(), and clang::IdentifierInfo::getName().

Referenced by isSmartPtrField().

◆ isTrustedReferenceCountImplementation()

bool RetainSummaryManager::isTrustedReferenceCountImplementation ( const Decl * FD)

◆ RetainSummaryTemplate

friend class RetainSummaryTemplate
friend

Definition at line 733 of file RetainSummaryManager.h.

References RetainSummaryTemplate.

Referenced by RetainSummaryTemplate.


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