.TH "serif::operators::EquationRegistry< EquationTs >" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*- .ad l .nh .SH NAME serif::operators::EquationRegistry< EquationTs > \- A compile-time registry of equations\&. .SH SYNOPSIS .br .PP .PP \fR#include \fP .SS "Public Types" .in +1c .ti -1c .RI "using \fBEquations\fP = \fButils::types::TypeList\fP" .br .RI "The equation types in the registry\&. " .ti -1c .RI "using \fBRows\fP = \fButils::types::TypeList\fP<\fBdiscretization::forms::Operand\fP\&.\&.\&.>" .br .RI "The residual row types in the registry\&. " .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBEquationRegistry\fP (EquationTs\&.\&.\&. equations)" .br .RI "Construct an equation registry with the given equations\&. " .ti -1c .RI "template void \fBfor_each\fP (FunctionT &&function) const" .br .RI "Apply some function to every type in the registry\&. " .ti -1c .RI "template const EquationT & \fBget\fP () const" .br .RI "Get the equation of a given type from the registry\&. " .in -1c .SS "Private Attributes" .in +1c .ti -1c .RI "std::tuple< EquationTs\&.\&.\&. > \fBm_equations\fP" .br .RI "The equations in the registry, stored as a tuple\&. " .in -1c .SH "Detailed Description" .PP .SS "template .br class serif::operators::EquationRegistry< EquationTs >"A compile-time registry of equations\&. .PP \fBTemplate Parameters\fP .RS 4 \fIEquationTs\fP Pack of equation types to register\&. .RE .PP Requirements .PD 0 .IP "\(bu" 2 There must be at least one equation type in the pack\&. .IP "\(bu" 2 Each residual row must be defined exactly once\&. .PP .SH "Member Typedef Documentation" .PP .SS "template using \fBserif::equations::EquationRegistry\fP< EquationTs >::Equations = \fButils::types::TypeList\fP" .PP The equation types in the registry\&. .SS "template using \fBserif::equations::EquationRegistry\fP< EquationTs >::Rows = \fButils::types::TypeList\fP<\fBdiscretization::forms::Operand\fP\&.\&.\&.>" .PP The residual row types in the registry\&. .SH "Constructor & Destructor Documentation" .PP .SS "template \fBserif::equations::EquationRegistry\fP< EquationTs >::EquationRegistry (EquationTs\&.\&.\&. equations)\fR [inline]\fP, \fR [explicit]\fP" .PP Construct an equation registry with the given equations\&. .PP \fBParameters\fP .RS 4 \fIequations\fP The equations to register\&. .RE .PP .SH "Member Function Documentation" .PP .SS "template template void \fBserif::equations::EquationRegistry\fP< EquationTs >::for_each (FunctionT && function) const\fR [inline]\fP" .PP Apply some function to every type in the registry\&. .PP \fBTemplate Parameters\fP .RS 4 \fIFunctionT\fP The type of the function to apply\&. The function must have the signature \fRvoid(const EquationT&)\fP where \fREquationT\fP is the type of the equation in the registry\&. .RE .PP \fBParameters\fP .RS 4 \fIfunction\fP The function to apply to each equation in the registry\&. .RE .PP .SS "template template const EquationT & \fBserif::equations::EquationRegistry\fP< EquationTs >::get () const\fR [inline]\fP, \fR [nodiscard]\fP" .PP Get the equation of a given type from the registry\&. .PP \fBTemplate Parameters\fP .RS 4 \fIEquationT\fP The type of the equation to get\&. .RE .PP \fBReturns\fP .RS 4 The equation of the given type\&. .RE .PP .SH "Member Data Documentation" .PP .SS "template std::tuple \fBserif::equations::EquationRegistry\fP< EquationTs >::m_equations\fR [private]\fP" .PP The equations in the registry, stored as a tuple\&. .SH "Author" .PP Generated automatically by Doxygen for SERiF from the source code\&.