Template Struct TypeInfo#
Defined in File traits.hpp
Inheritance Relationships#
Derived Types#
public librapid::typetraits::TypeInfo< T & >
(Template Struct TypeInfo< T & >)public librapid::typetraits::TypeInfo< T && >
(Template Struct TypeInfo< T && >)public librapid::typetraits::TypeInfo< T * >
(Template Struct TypeInfo< T * >)public librapid::typetraits::TypeInfo< T[]>
(Template Struct TypeInfo< T[] >)public librapid::typetraits::TypeInfo< const T * >
(Template Struct TypeInfo< const T * >)public librapid::typetraits::TypeInfo< const T >
(Template Struct TypeInfo< const T >)public librapid::typetraits::TypeInfo< const volatile T * >
(Template Struct TypeInfo< const volatile T * >)public librapid::typetraits::TypeInfo< const volatile T >
(Template Struct TypeInfo< const volatile T >)public librapid::typetraits::TypeInfo< volatile T * >
(Template Struct TypeInfo< volatile T * >)public librapid::typetraits::TypeInfo< volatile T >
(Template Struct TypeInfo< volatile T >)
Struct Documentation#
-
template<typename T>
struct TypeInfo# Provides compile-time information about a data type, allowing for easier function switching and compile-time evaluation
- Template Parameters
T – The type to get information about
Subclassed by librapid::typetraits::TypeInfo< T & >, librapid::typetraits::TypeInfo< T && >, librapid::typetraits::TypeInfo< T * >, librapid::typetraits::TypeInfo< T[]>, librapid::typetraits::TypeInfo< const T * >, librapid::typetraits::TypeInfo< const T >, librapid::typetraits::TypeInfo< const volatile T * >, librapid::typetraits::TypeInfo< const volatile T >, librapid::typetraits::TypeInfo< volatile T * >, librapid::typetraits::TypeInfo< volatile T >
Public Static Functions
-
static inline constexpr auto min() noexcept#
-
static inline constexpr auto max() noexcept#
-
static inline constexpr auto epsilon() noexcept#
-
static inline constexpr auto roundError() noexcept#
-
static inline constexpr auto denormMin() noexcept#
-
static inline constexpr auto infinity() noexcept#
-
static inline constexpr auto quietNaN() noexcept#
-
static inline constexpr auto signalingNaN() noexcept#
Public Static Attributes
-
static constexpr detail::LibRapidType type = detail::LibRapidType::Scalar#
-
static constexpr int64_t packetWidth = 1#
-
static constexpr char name[] = "[ NO DEFINED TYPE ]"#
-
static constexpr bool supportsArithmetic = true#
-
static constexpr bool supportsLogical = true#
-
static constexpr bool supportsBinary = true#
-
static constexpr bool allowVectorisation = false#
-
static constexpr cudaDataType_t CudaType = cudaDataType_t::CUDA_R_64F#
-
static constexpr int64_t cudaPacketWidth = 1#
-
static constexpr bool canAlign = true#
-
static constexpr bool canMemcpy = true#