clang 17.0.0git
Public Member Functions | Public Attributes | List of all members
clang::dataflow::AnalysisContext Struct Reference

Holds data structures required for running dataflow analysis. More...

Collaboration diagram for clang::dataflow::AnalysisContext:
Collaboration graph
[legend]

Public Member Functions

 AnalysisContext (const ControlFlowContext &CFCtx, TypeErasedDataflowAnalysis &Analysis, const Environment &InitEnv, llvm::ArrayRef< std::optional< TypeErasedDataflowAnalysisState > > BlockStates)
 
 ~AnalysisContext ()
 

Public Attributes

const ControlFlowContextCFCtx
 Contains the CFG being analyzed.
 
TypeErasedDataflowAnalysisAnalysis
 The analysis to be run.
 
const EnvironmentInitEnv
 Initial state to start the analysis.
 
LoggerLog
 
llvm::ArrayRef< std::optional< TypeErasedDataflowAnalysisState > > BlockStates
 Stores the state of a CFG block if it has been evaluated by the analysis.
 

Detailed Description

Holds data structures required for running dataflow analysis.

Definition at line 164 of file TypeErasedDataflowAnalysis.cpp.

Constructor & Destructor Documentation

◆ AnalysisContext()

clang::dataflow::AnalysisContext::AnalysisContext ( const ControlFlowContext CFCtx,
TypeErasedDataflowAnalysis Analysis,
const Environment InitEnv,
llvm::ArrayRef< std::optional< TypeErasedDataflowAnalysisState > >  BlockStates 
)
inline

◆ ~AnalysisContext()

clang::dataflow::AnalysisContext::~AnalysisContext ( )
inline

Definition at line 174 of file TypeErasedDataflowAnalysis.cpp.

References clang::dataflow::Logger::endAnalysis(), and Log.

Member Data Documentation

◆ Analysis

TypeErasedDataflowAnalysis& clang::dataflow::AnalysisContext::Analysis

◆ BlockStates

llvm::ArrayRef<std::optional<TypeErasedDataflowAnalysisState> > clang::dataflow::AnalysisContext::BlockStates

Stores the state of a CFG block if it has been evaluated by the analysis.

The indices correspond to the block IDs.

Definition at line 185 of file TypeErasedDataflowAnalysis.cpp.

Referenced by clang::dataflow::builtinTransferStatement(), and clang::dataflow::computeBlockInputState().

◆ CFCtx

const ControlFlowContext& clang::dataflow::AnalysisContext::CFCtx

◆ InitEnv

const Environment& clang::dataflow::AnalysisContext::InitEnv

Initial state to start the analysis.

Definition at line 181 of file TypeErasedDataflowAnalysis.cpp.

Referenced by clang::dataflow::computeBlockInputState().

◆ Log

Logger& clang::dataflow::AnalysisContext::Log

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