SpECTRE Documentation Coverage Report
Current view: top level - Parallel/Protocols - ArrayElementsAllocator.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            0 : namespace Parallel::protocols {
      11              : /*!
      12              :  * \brief Conforming types implement a strategy to create elements for array
      13              :  * parallel components
      14              :  *
      15              :  * Conforming classes must provide the following type aliases:
      16              :  *
      17              :  * - `array_allocation_tags<ParallelComponent>`: A `tmpl::list` of tags that are
      18              :  *   needed to perform the allocation. These tags will be parsed from input-file
      19              :  *   options (see \ref dev_guide_parallelization_parallel_components). The array
      20              :  *   parallel component will be passed in as a template parameter.
      21              :  *
      22              :  * Conforming classes must implement the following static member functions:
      23              :  *
      24              :  * - `apply<ParallelComponent>`: This function is responsible for creating the
      25              :  *   array elements. It has the same signature as the `allocate_array` function
      26              :  *   (see \ref dev_guide_parallelization_parallel_components), but takes the
      27              :  *   array parallel component as an additional first template parameter.
      28              :  *
      29              :  * See `elliptic::DefaultElementsAllocator` for an example implementation of
      30              :  * this protocol.
      31              :  */
      32            1 : struct ArrayElementsAllocator {
      33              :   template <typename ConformingType>
      34            0 :   struct test {};
      35              : };
      36              : }  // namespace Parallel::protocols
        

Generated by: LCOV version 2.0-1