Line data Source code
1 0 : // Distributed under the MIT License.
2 : // See LICENSE.txt for details.
3 :
4 : #pragma once
5 :
6 : #include <cstddef>
7 : #include <type_traits>
8 :
9 : /// \cond
10 : namespace Parallel {
11 : template <size_t Dim, typename Metavariables, typename PhaseDepActionList>
12 : class DgElementCollection;
13 : } // namespace Parallel
14 : /// \endcond
15 :
16 : namespace Parallel {
17 : /// \brief Is `std::true_type` if `T` is a `Parallel::DgElementCollection`, else
18 : /// is `std::false_type`.
19 : template <typename T>
20 1 : struct is_dg_element_collection : std::false_type {};
21 :
22 : /// \cond
23 : template <size_t Dim, typename Metavariables, typename PhaseDepActionList>
24 : struct is_dg_element_collection<
25 : DgElementCollection<Dim, Metavariables, PhaseDepActionList>>
26 : : std::true_type {};
27 : /// \endcond
28 :
29 : /// \brief Is `true` if `T` is a `Parallel::DgElementCollection`, else is
30 : /// `false`.
31 : template <class T>
32 1 : constexpr bool is_dg_element_collection_v = is_dg_element_collection<T>::value;
33 : } // namespace Parallel
|