LLVM 24.0.0git
llvm::detail::AnalysisResultModel< IRUnitT, PassT, ResultT, InvalidatorT > Struct Template Reference

Wrapper to model the analysis result concept. More...

#include "llvm/IR/PassManagerInternal.h"

Inheritance diagram for llvm::detail::AnalysisResultModel< IRUnitT, PassT, ResultT, InvalidatorT >:
[legend]

Public Types

using AnalysisResultConceptT = AnalysisResultConcept<IRUnitT, InvalidatorT>
Public Types inherited from llvm::detail::AnalysisResultConcept< IRUnitT, InvalidatorT >
using unique_ptr = std::unique_ptr<AnalysisResultConcept, Deleter>

Public Member Functions

template<typename... ExtraArgTs>
 AnalysisResultModel (PassT &Pass, IRUnitT &IR, AnalysisManager< IRUnitT, ExtraArgTs... > &AM, ExtraArgTs &&...ExtraArgs)
Public Member Functions inherited from llvm::detail::AnalysisResultConcept< IRUnitT, InvalidatorT >
bool invalidate (IRUnitT &IR, const PreservedAnalyses &PA, InvalidatorT &Inv)
 Method to try and mark a result as invalid.

Static Public Member Functions

static void destroyImpl (AnalysisResultConceptT &Self)

Public Attributes

ResultT Result

Additional Inherited Members

Protected Member Functions inherited from llvm::detail::AnalysisResultConcept< IRUnitT, InvalidatorT >
 AnalysisResultConcept (DestroyTy Destroy)
Protected Attributes inherited from llvm::detail::AnalysisResultConcept< IRUnitT, InvalidatorT >
DestroyTy Destroy
InvalidateTy Invalidate = nullptr

Detailed Description

template<typename IRUnitT, typename PassT, typename ResultT, typename InvalidatorT>
struct llvm::detail::AnalysisResultModel< IRUnitT, PassT, ResultT, InvalidatorT >

Wrapper to model the analysis result concept.

Definition at line 232 of file PassManagerInternal.h.

Member Typedef Documentation

◆ AnalysisResultConceptT

template<typename IRUnitT, typename PassT, typename ResultT, typename InvalidatorT>
using llvm::detail::AnalysisResultModel< IRUnitT, PassT, ResultT, InvalidatorT >::AnalysisResultConceptT = AnalysisResultConcept<IRUnitT, InvalidatorT>

Definition at line 234 of file PassManagerInternal.h.

Constructor & Destructor Documentation

◆ AnalysisResultModel()

template<typename IRUnitT, typename PassT, typename ResultT, typename InvalidatorT>
template<typename... ExtraArgTs>
llvm::detail::AnalysisResultModel< IRUnitT, PassT, ResultT, InvalidatorT >::AnalysisResultModel ( PassT & Pass,
IRUnitT & IR,
AnalysisManager< IRUnitT, ExtraArgTs... > & AM,
ExtraArgTs &&... ExtraArgs )
inline

Definition at line 243 of file PassManagerInternal.h.

Member Function Documentation

◆ destroyImpl()

template<typename IRUnitT, typename PassT, typename ResultT, typename InvalidatorT>
void llvm::detail::AnalysisResultModel< IRUnitT, PassT, ResultT, InvalidatorT >::destroyImpl ( AnalysisResultConceptT & Self)
inlinestatic

Definition at line 238 of file PassManagerInternal.h.

Member Data Documentation

◆ Result

template<typename IRUnitT, typename PassT, typename ResultT, typename InvalidatorT>
ResultT llvm::detail::AnalysisResultModel< IRUnitT, PassT, ResultT, InvalidatorT >::Result

Definition at line 236 of file PassManagerInternal.h.


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