di 0.1.0
|
Go to the source code of this file.
Classes | |
struct | di::meta::ListV< vs > |
struct | di::meta::TypeConstant< T > |
Namespaces | |
namespace | di |
namespace | di::meta |
namespace | di::concepts |
Concepts | |
concept | di::concepts::Trait |
concept | di::concepts::AlwaysFalse |
This concept is used with static_assert() to cause the static assert to fail only when the template has been instantiated. | |
concept | di::concepts::AlwaysTrue |
This concept is used with static_assert() to stop compilation if any provided type is not well-formed. | |
concept | di::concepts::SameAs |
concept | di::concepts::OneOf |
concept | di::concepts::LanguageVoid |
concept | di::concepts::InstanceOf |
concept | di::concepts::InstanceOfV |
concept | di::concepts::InstanceOfT |
concept | di::concepts::TypeList |
Typedefs | |
template<concepts::Trait T> | |
using | di::meta::Type = T::Type |
template<typename T> | |
using | di::meta::TypeIdentity = Type<TypeConstant<T>> |
This is a helper template to prevent C++ from deducing the type of template argument. | |
template<typename T> | |
using | di::meta::RemoveConst = Type<detail::RemoveConstHelper<T>> |
template<typename T> | |
using | di::meta::RemoveVolatile = Type<detail::RemoveVolatile<T>> |
template<typename T> | |
using | di::meta::RemoveCV = RemoveConst<RemoveVolatile<T>> |
template<typename T> | |
using | di::meta::RemoveReference = Type<detail::RemoveReferenceHelper<T>> |
template<typename T> | |
using | di::meta::RemoveCVRef = RemoveCV<RemoveReference<T>> |
template<bool value, typename T, typename U> | |
using | di::meta::Conditional = detail::ConditionalHelper<value, T, U>::Type |