45 #ifndef KOKKOS_ANONYMOUSSPACE_HPP 46 #define KOKKOS_ANONYMOUSSPACE_HPP 48 #include <Kokkos_Core_fwd.hpp> 49 #include <Kokkos_Concepts.hpp> 56 class AnonymousSpace {
59 using memory_space = AnonymousSpace;
60 using execution_space = Kokkos::DefaultExecutionSpace;
61 using size_type = size_t;
64 using device_type = Kokkos::Device<execution_space, memory_space>;
67 AnonymousSpace() =
default;
68 AnonymousSpace(AnonymousSpace &&rhs) =
default;
69 AnonymousSpace(
const AnonymousSpace &rhs) =
default;
70 AnonymousSpace &operator=(AnonymousSpace &&) =
default;
71 AnonymousSpace &operator=(
const AnonymousSpace &) =
default;
72 ~AnonymousSpace() =
default;
75 static constexpr
const char *name() {
return "Anonymous"; }
86 template <
typename OtherSpace>
87 struct MemorySpaceAccess<
Kokkos::AnonymousSpace, OtherSpace> {
88 enum :
bool { assignable =
true };
89 enum :
bool { accessible =
true };
90 enum :
bool { deepcopy =
true };
93 template <
typename OtherSpace>
94 struct MemorySpaceAccess<OtherSpace,
Kokkos::AnonymousSpace> {
95 enum :
bool { assignable =
true };
96 enum :
bool { accessible =
true };
97 enum :
bool { deepcopy =
true };
101 struct MemorySpaceAccess<
Kokkos::AnonymousSpace, Kokkos::AnonymousSpace> {
102 enum :
bool { assignable =
true };
103 enum :
bool { accessible =
true };
104 enum :
bool { deepcopy =
true };
111 #endif // #define KOKKOS_ANONYMOUSSPACE_HPP