SpECTRE Documentation Coverage Report
Current view: top level - Elliptic/Systems - GetModifyBoundaryData.hpp Coverage Total Hit
Commit: 0d1d717af84a81fb1284a20c4013708fe85cc2f0 Lines: 25.0 % 4 1
Test Date: 2026-10-22 17:29:42
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 <type_traits>
       7              : 
       8              : #include "Utilities/TMPL.hpp"
       9              : 
      10              : namespace elliptic {
      11              : namespace detail {
      12              : struct NoModifyBoundaryData {
      13              :   using argument_tags = tmpl::list<>;
      14              :   using argument_tags_linearized = tmpl::list<>;
      15              :   using const_global_cache_tags = tmpl::list<>;
      16              : };
      17              : }  // namespace detail
      18              : 
      19              : /// The `argument_tags` of the `System::modify_boundary_data`, or an empty list
      20              : /// if `System::modify_boundary_data` is `void`.
      21              : template <typename System>
      22            1 : using get_modify_boundary_data = tmpl::conditional_t<
      23              :     std::is_same_v<typename System::modify_boundary_data, void>,
      24              :     detail::NoModifyBoundaryData, typename System::modify_boundary_data>;
      25              : 
      26              : template <typename System, bool Linearized>
      27            0 : using get_modify_boundary_data_args_tags = tmpl::conditional_t<
      28              :     Linearized,
      29              :     typename get_modify_boundary_data<System>::argument_tags_linearized,
      30              :     typename get_modify_boundary_data<System>::argument_tags>;
      31              : 
      32              : template <typename System, bool Linearized>
      33            0 : using get_modify_boundary_data_const_global_cache_tags =
      34              :     typename get_modify_boundary_data<System>::const_global_cache_tags;
      35              : 
      36              : }  // namespace elliptic
        

Generated by: LCOV version 2.0-1