SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
serif::discretization::backend::mfem::OwnedBindings< Context, utils::dependencies::KeyList< Keys... > > Struct Template Reference

Keep typed bindings alive beside the resources they borrow; neither copying a configuration nor restoring it copies these resources. More...

#include <resources.hpp>

Collaboration diagram for serif::discretization::backend::mfem::OwnedBindings< Context, utils::dependencies::KeyList< Keys... > >:
[legend]

Public Types

template<typename Key>
using Binding = std::remove_cvref_t<decltype(std::declval<Context>().template get<Key>())>
 

Public Member Functions

auto context () const
 Borrow each stable binding through the existing computational-graph input vocabulary.
 

Public Attributes

Resources resources
 
std::tuple< std::unique_ptr< Binding< Keys > >... > bindings
 

Detailed Description

template<typename Context, typename... Keys>
struct serif::discretization::backend::mfem::OwnedBindings< Context, utils::dependencies::KeyList< Keys... > >

Keep typed bindings alive beside the resources they borrow; neither copying a configuration nor restoring it copies these resources.

Member Typedef Documentation

◆ Binding

template<typename Context, typename... Keys>
template<typename Key>
using serif::discretization::backend::mfem::OwnedBindings< Context, utils::dependencies::KeyList< Keys... > >::Binding = std::remove_cvref_t<decltype(std::declval<Context>().template get<Key>())>

Member Function Documentation

◆ context()

template<typename Context, typename... Keys>
auto serif::discretization::backend::mfem::OwnedBindings< Context, utils::dependencies::KeyList< Keys... > >::context ( ) const
inlinenodiscard

Borrow each stable binding through the existing computational-graph input vocabulary.

Member Data Documentation

◆ bindings

template<typename Context, typename... Keys>
std::tuple<std::unique_ptr<Binding<Keys> >...> serif::discretization::backend::mfem::OwnedBindings< Context, utils::dependencies::KeyList< Keys... > >::bindings

◆ resources

template<typename Context, typename... Keys>
Resources serif::discretization::backend::mfem::OwnedBindings< Context, utils::dependencies::KeyList< Keys... > >::resources

The documentation for this struct was generated from the following file: