SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
serif::operators::detail Namespace Reference

Classes

struct  AsKeyList
 
struct  AsKeyList< utils::types::TypeList< T... > >
 
struct  Columns
 
struct  Columns< utils::types::TypeList< O... > >
 
struct  ContributionChildren
 
struct  ContributionOperands
 
struct  ContributionOperands< std::tuple< C... > >
 
struct  CouplingForm
 
struct  Join
 

Functions

template<typename EquationT>
auto bind_contributions (std::shared_ptr< const EquationT > equation, double coefficient)
 Flatten equation arithmetic while preserving every generated tuple and borrowed parent.
 
template<typename EquationT, typename FunctionT>
void visit_contributions (const EquationT &equation, FunctionT &function, std::size_t &index, double coefficient)
 Visit arithmetic leaves without retaining them beyond the supplied callback.
 

Function Documentation

◆ bind_contributions()

template<typename EquationT>
auto serif::operators::detail::bind_contributions ( std::shared_ptr< const EquationT > equation,
double coefficient )
nodiscard

Flatten equation arithmetic while preserving every generated tuple and borrowed parent.

◆ visit_contributions()

template<typename EquationT, typename FunctionT>
void serif::operators::detail::visit_contributions ( const EquationT & equation,
FunctionT & function,
std::size_t & index,
double coefficient )

Visit arithmetic leaves without retaining them beyond the supplied callback.