//@HEADER // ************************************************************************ // // Kokkos v. 4.0 // Copyright (2022) National Technology & Engineering // Solutions of Sandia, LLC (NTESS). // // Under the terms of Contract DE-NA0003525 with NTESS, // the U.S. Government retains certain rights in this software. // // Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions. // See https://kokkos.org/LICENSE for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //@HEADER #ifndef KOKKOS_KOKKOS_GRAPHKERNELTRAIT_HPP #define KOKKOS_KOKKOS_GRAPHKERNELTRAIT_HPP #include #include #include // IsGraphKernelTag #include #include namespace Kokkos { namespace Impl { //============================================================================== // {{{1 struct GraphKernelTrait : TraitSpecificationBase { struct base_traits { using is_graph_kernel = std::false_type; KOKKOS_IMPL_MSVC_NVCC_EBO_WORKAROUND }; template struct mixin_matching_trait : AnalyzeNextTrait { using base_t = AnalyzeNextTrait; using base_t::base_t; using is_graph_kernel = std::true_type; }; template using trait_matches_specification = std::is_same; }; // end trait specification }}}1 //============================================================================== } // end namespace Impl } // end namespace Kokkos #endif // KOKKOS_KOKKOS_GRAPHKERNELTRAIT_HPP