kokkos-execution 0.0.1
Loading...
Searching...
No Matches
type_traits.hpp File Reference
#include <type_traits>
#include <utility>
#include "Kokkos_Macros.hpp"

Go to the source code of this file.

Namespaces

namespace  Kokkos
namespace  Kokkos::Execution
namespace  Kokkos::Execution::Impl

Macros

#define KOKKOS_EXECUTION_IMPL_MEMBER_CVREF_T(_Self_, _member_)
 Yields the type of member _member_ as accessed from expression _Self_, preserving the cv and ref qualifiers of _Self_.
#define KOKKOS_EXECUTION_IMPL_FORWARD_THIS(_Self_, _self_)
 Equivalent to std::forward<_Self_>(_self_).

Macro Definition Documentation

◆ KOKKOS_EXECUTION_IMPL_FORWARD_THIS

#define KOKKOS_EXECUTION_IMPL_FORWARD_THIS ( _Self_,
_self_ )
Value:
static_cast<_Self_&&>(_self_)

Equivalent to std::forward<_Self_>(_self_).

Avoids clang-tidy bugprone-use-after-move heuristic issues.

Definition at line 24 of file type_traits.hpp.

◆ KOKKOS_EXECUTION_IMPL_MEMBER_CVREF_T

#define KOKKOS_EXECUTION_IMPL_MEMBER_CVREF_T ( _Self_,
_member_ )
Value:
decltype((std::declval<_Self_>()._member_))

Yields the type of member _member_ as accessed from expression _Self_, preserving the cv and ref qualifiers of _Self_.

Useful for propagating value category from a deducing-this parameter to one of its members.

Definition at line 17 of file type_traits.hpp.