clang 22.0.0git
clang::lifetimes::internal::FactManager Class Reference

#include "clang/Analysis/Analyses/LifetimeSafety/Facts.h"

Public Member Functions

void init (const CFG &Cfg)
llvm::ArrayRef< const Fact * > getFacts (const CFGBlock *B) const
void addBlockFacts (const CFGBlock *B, llvm::ArrayRef< Fact * > NewFacts)
template<typename FactType, typename... Args>
FactType * createFact (Args &&...args)
void dump (const CFG &Cfg, AnalysisDeclContext &AC) const
llvm::StringMap< ProgramPointgetTestPoints () const
 Retrieves program points that were specially marked in the source code for testing.
llvm::ArrayRef< const Fact * > getBlockContaining (ProgramPoint P) const
 Retrieves all the facts in the block containing Program Point P.
unsigned getNumFacts () const
LoanManagergetLoanMgr ()
const LoanManagergetLoanMgr () const
OriginManagergetOriginMgr ()
const OriginManagergetOriginMgr () const

Detailed Description

Definition at line 195 of file Facts.h.

Member Function Documentation

◆ addBlockFacts()

void clang::lifetimes::internal::FactManager::addBlockFacts ( const CFGBlock * B,
llvm::ArrayRef< Fact * > NewFacts )
inline

Definition at line 206 of file Facts.h.

References clang::CFGBlock::getBlockID().

◆ createFact()

template<typename FactType, typename... Args>
FactType * clang::lifetimes::internal::FactManager::createFact ( Args &&... args)
inline

Definition at line 212 of file Facts.h.

◆ dump()

void clang::lifetimes::internal::FactManager::dump ( const CFG & Cfg,
AnalysisDeclContext & AC ) const

◆ getBlockContaining()

llvm::ArrayRef< const Fact * > clang::lifetimes::internal::FactManager::getBlockContaining ( ProgramPoint P) const

Retrieves all the facts in the block containing Program Point P.

Note
This is intended for testing only.

Definition at line 99 of file Facts.cpp.

◆ getFacts()

llvm::ArrayRef< const Fact * > clang::lifetimes::internal::FactManager::getFacts ( const CFGBlock * B) const
inline

Definition at line 202 of file Facts.h.

References clang::CFGBlock::getBlockID().

Referenced by clang::lifetimes::internal::computePersistentOrigins(), and dump().

◆ getLoanMgr() [1/2]

LoanManager & clang::lifetimes::internal::FactManager::getLoanMgr ( )
inline

Definition at line 237 of file Facts.h.

Referenced by clang::lifetimes::internal::createLoan().

◆ getLoanMgr() [2/2]

const LoanManager & clang::lifetimes::internal::FactManager::getLoanMgr ( ) const
inline

Definition at line 238 of file Facts.h.

◆ getNumFacts()

unsigned clang::lifetimes::internal::FactManager::getNumFacts ( ) const
inline

Definition at line 235 of file Facts.h.

◆ getOriginMgr() [1/2]

OriginManager & clang::lifetimes::internal::FactManager::getOriginMgr ( )
inline

Definition at line 239 of file Facts.h.

Referenced by clang::lifetimes::internal::computePersistentOrigins().

◆ getOriginMgr() [2/2]

const OriginManager & clang::lifetimes::internal::FactManager::getOriginMgr ( ) const
inline

Definition at line 240 of file Facts.h.

◆ getTestPoints()

llvm::StringMap< ProgramPoint > clang::lifetimes::internal::FactManager::getTestPoints ( ) const

Retrieves program points that were specially marked in the source code for testing.

The analysis recognizes special function calls of the form void("__lifetime_test_point_<name>") as test points. This method returns a map from the annotation string (<name>) to the corresponding ProgramPoint. This allows test harnesses to query the analysis state at user-defined locations in the code.

Note
This is intended for testing only.

Definition at line 65 of file Facts.cpp.

◆ init()

void clang::lifetimes::internal::FactManager::init ( const CFG & Cfg)
inline

Definition at line 197 of file Facts.h.

References clang::CFG::getNumBlockIDs().


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