|
MLIR 22.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. | |
| 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 |
Definition at line 182 of file TypeID.h.
Referenced by mlir::detail::is_fully_resolved().