SpECTRE Documentation Coverage Report
Current view: top level - DataStructures - VariablesTag.hpp Hit Total Coverage
Commit: 3c072f0ce967e2e56649d3fa12aa2a0e4fe2a42e Lines: 0 5 0.0 %
Date: 2024-04-23 20:50:18
Legend: Lines: hit not hit

          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 <string>
       8             : 
       9             : #include "DataStructures/DataBox/Tag.hpp"
      10             : #include "DataStructures/DataBox/TagName.hpp"
      11             : #include "Utilities/TMPL.hpp"
      12             : #include "Utilities/TypeTraits.hpp"
      13             : 
      14             : /// \cond
      15             : template <typename TagsList>
      16             : class Variables;
      17             : /// \endcond
      18             : 
      19             : namespace Tags {
      20             : template <typename TagsList>
      21           0 : struct Variables : db::SimpleTag {
      22             :   static_assert(tt::is_a<tmpl::list, TagsList>::value,
      23             :                 "The TagsList passed to Tags::Variables is not a typelist");
      24           0 :   using tags_list = TagsList;
      25           0 :   using type = ::Variables<TagsList>;
      26           0 :   static std::string name() {
      27             :     std::string tag_name{"Variables("};
      28             :     size_t iter = 0;
      29             :     tmpl::for_each<TagsList>([&tag_name, &iter](auto tag) {
      30             :       tag_name += db::tag_name<tmpl::type_from<decltype(tag)>>();
      31             :       if (iter + 1 != tmpl::size<TagsList>::value) {
      32             :         tag_name += ",";
      33             :       }
      34             :       iter++;
      35             :     });
      36             :     return tag_name + ")";
      37             :   }
      38             : };
      39             : }  // namespace Tags

Generated by: LCOV version 1.14