class ResultHasInvalidateMethod
Declaration
template <typename IRUnitT, typename ResultT>
class ResultHasInvalidateMethod { /* full declaration omitted */ };
Description
SFINAE metafunction for computing whether \c ResultT provides an\c invalidate member function.
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:147
Templates
- IRUnitT
- ResultT
Method Overview
- private template <typename T, typename U>static llvm::detail::ResultHasInvalidateMethod::DisabledType NonceFunction(T U::*)
- private template <typename T>static typename Nonce<decltype(std::declval<T>().invalidate(std::declval<IRUnitT &>(), std::declval<PreservedAnalyses>()))>::Type check(rank<2>)
- private template <typename T>static decltype(NonceFunction(& Checker<T>::invalidate)) check(rank<1>)
- private template <typename T>static llvm::detail::ResultHasInvalidateMethod::EnabledType check(rank<0>)
Methods
¶template <typename T, typename U>
static llvm::detail::ResultHasInvalidateMethod::
DisabledType
NonceFunction(T U::*)
template <typename T, typename U>
static llvm::detail::ResultHasInvalidateMethod::
DisabledType
NonceFunction(T U::*)
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:166
Templates
- T
- U
Parameters
- T U::*
¶template <typename T>
static typename Nonce<
decltype(std::declval<T>().invalidate(
std::declval<IRUnitT&>(),
std::declval<PreservedAnalyses>()))>::Type
check(rank<2>)
template <typename T>
static typename Nonce<
decltype(std::declval<T>().invalidate(
std::declval<IRUnitT&>(),
std::declval<PreservedAnalyses>()))>::Type
check(rank<2>)
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:160
Templates
- T
Parameters
- rank<2>
¶template <typename T>
static decltype(NonceFunction(
&Checker<T>::invalidate))
check(rank<1>)
template <typename T>
static decltype(NonceFunction(
&Checker<T>::invalidate))
check(rank<1>)
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:170
Templates
- T
Parameters
- rank<1>
¶template <typename T>
static llvm::detail::ResultHasInvalidateMethod::
EnabledType
check(rank<0>)
template <typename T>
static llvm::detail::ResultHasInvalidateMethod::
EnabledType
check(rank<0>)
Declared at: llvm/include/llvm/IR/PassManagerInternal.h:175
Templates
- T
Parameters
- rank<0>