MLIR
21.0.0git
|
#include "mlir/Support/TypeID.h"
Public Types | |
template<typename U > | |
using | is_fully_resolved_trait = decltype(sizeof(U)) |
Trait to check if U is fully resolved. More... | |
template<typename U > | |
using | is_fully_resolved = llvm::is_detected< is_fully_resolved_trait, U > |
Static Public Attributes | |
static constexpr bool | value = is_fully_resolved<T>::value |
using mlir::detail::is_fully_resolved_t< T >::is_fully_resolved = llvm::is_detected<is_fully_resolved_trait, U> |
using mlir::detail::is_fully_resolved_t< T >::is_fully_resolved_trait = decltype(sizeof(U)) |
Trait to check if U
is fully resolved.
We use this to verify that T
is fully resolved when trying to resolve a TypeID. We don't technically need to have the full definition of T
for the fallback, but it does help prevent situations where a forward declared type uses this fallback even though there is a strong definition for the TypeID in the location where T
is defined.
|
staticconstexpr |