alpaka
Abstraction Library for Parallel Kernel Acceleration
Loading...
Searching...
No Matches
trait.hpp File Reference
#include "alpaka/utility.hpp"
#include "alpaka/vecConcepts.hpp"
#include <concepts>
#include <cstdint>
#include <limits>

Go to the source code of this file.

Classes

struct  alpaka::NotRequired
 This type is used in cases where a template type parameter is not required and can optionally be passed to a trait or concept. More...
struct  alpaka::trait::GetDim< T >
struct  alpaka::trait::GetDim< T >
struct  alpaka::trait::GetValueType< T >
struct  alpaka::trait::GetValueType< T >
struct  alpaka::trait::IsKernelArgumentTriviallyCopyable< T, typename >
 Check if a type used as kernel argument is trivially copyable. More...
struct  alpaka::trait::IsKernelTriviallyCopyable< T, typename >
 Check if the kernel type is trivially copyable. More...

Namespaces

namespace  alpaka
 main alpaka namespace.
namespace  alpaka::concepts
namespace  alpaka::trait

Concepts

concept  alpaka::concepts::KernelArg
 Concept to check for a kernel argument object.
concept  alpaka::concepts::KernelFn
 Concept to check for a kernel function object.

Typedefs

template<typename T>
using alpaka::trait::GetValueType_t = typename GetValueType<T>::type

Functions

template<typename T>
consteval uint32_t alpaka::getDim (T const &any)

Variables

template<typename T>
constexpr uint32_t alpaka::trait::getDim_v = GetDim<T>::value
template<typename T_From, typename T_To>
constexpr bool alpaka::isConvertible_v = concepts::Convertible<T_From, T_To>
template<typename T>
constexpr bool alpaka::isKernelArgumentTriviallyCopyable_v = trait::IsKernelArgumentTriviallyCopyable<T>::value
template<typename T>
constexpr bool alpaka::isKernelTriviallyCopyable_v = trait::IsKernelTriviallyCopyable<T>::value
template<typename T_From, typename T_To>
constexpr bool alpaka::isLosslesslyConvertible_v = concepts::LosslesslyConvertible<T_From, T_To>
constexpr uint32_t alpaka::notRequiredDim = std::numeric_limits<uint32_t>::max()
constexpr uint32_t alpaka::notRequiredWidth = notRequiredDim