Files
MeanField_SERiF/docs/man/man3/serif_operators_EquationRegistry.3
Emily Boudreaux 6b57738330 docs(docs): built docs
Note for now much of the docs is LLM written. This was done to save time and focus on code development. The docs have been LOOSLEY reviewed. However, the code itself has been either fully written by hand or fully reviewed. Therefore, the docs should at the moment be seen as a loose resource rather than authoratiative (and this is on top of the general ability for docs to drift)
2026-11-09 14:09:44 -05:00

137 lines
3.9 KiB
Groff

.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 <registry\&.hpp>\fP
.SS "Public Types"
.in +1c
.ti -1c
.RI "using \fBEquations\fP = \fButils::types::TypeList\fP<EquationTs\&.\&.\&.>"
.br
.RI "The equation types in the registry\&. "
.ti -1c
.RI "using \fBRows\fP = \fButils::types::TypeList\fP<\fBdiscretization::forms::Operand\fP<typename EquationTs::Test>\&.\&.\&.>"
.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<typename FunctionT> void \fBfor_each\fP (FunctionT &&function) const"
.br
.RI "Apply some function to every type in the registry\&. "
.ti -1c
.RI "template<Equation EquationT> 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<Equation\&.\&.\&. EquationTs>
.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<Equation\&.\&.\&. EquationTs> using \fBserif::equations::EquationRegistry\fP< EquationTs >::Equations = \fButils::types::TypeList\fP<EquationTs\&.\&.\&.>"
.PP
The equation types in the registry\&.
.SS "template<Equation\&.\&.\&. EquationTs> using \fBserif::equations::EquationRegistry\fP< EquationTs >::Rows = \fButils::types::TypeList\fP<\fBdiscretization::forms::Operand\fP<typename EquationTs::Test>\&.\&.\&.>"
.PP
The residual row types in the registry\&.
.SH "Constructor & Destructor Documentation"
.PP
.SS "template<Equation\&.\&.\&. EquationTs> \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<Equation\&.\&.\&. EquationTs> template<typename FunctionT> 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<Equation\&.\&.\&. EquationTs> template<Equation EquationT> 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<Equation\&.\&.\&. EquationTs> std::tuple<EquationTs\&.\&.\&.> \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\&.