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)
66 lines
6.1 KiB
TeX
66 lines
6.1 KiB
TeX
\doxysection{src/include/serif/discretization/domain/relation/validation/validation.hpp File Reference}
|
|
\hypertarget{validation_8hpp}{}\label{validation_8hpp}\index{src/include/serif/discretization/domain/relation/validation/validation.hpp@{src/include/serif/discretization/domain/relation/validation/validation.hpp}}
|
|
|
|
|
|
Compile-\/time validation of relations in the discretization framework. This file provides utilities to check if relations use registered entities based on provided domain and boundary IDs.
|
|
|
|
|
|
{\ttfamily \#include $<$type\+\_\+traits$>$}\newline
|
|
{\ttfamily \#include "{}serif/discretization/domain/concepts.\+hpp"{}}\newline
|
|
{\ttfamily \#include "{}serif/discretization/domain/ids/lists/concepts.\+hpp"{}}\newline
|
|
{\ttfamily \#include "{}serif/discretization/domain/relation/concepts.\+hpp"{}}\newline
|
|
{\ttfamily \#include "{}serif/discretization/domain/relation/lists/concepts.\+hpp"{}}\newline
|
|
{\ttfamily \#include "{}serif/discretization/domain/relation/lists/relation\+\_\+list.\+hpp"{}}\newline
|
|
{\ttfamily \#include "{}serif/discretization/domain/resolver.\+hpp"{}}\newline
|
|
Include dependency graph for validation.\+hpp\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=350pt]{validation_8hpp__incl}
|
|
\end{center}
|
|
\end{figure}
|
|
This graph shows which files directly or indirectly include this file\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=350pt]{validation_8hpp__dep__incl}
|
|
\end{center}
|
|
\end{figure}
|
|
\doxysubsubsection*{Classes}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1discretization_1_1domain_1_1relation_1_1validation_1_1_relation_uses_registered_ea6e10ab4070c2d283a3d1aba54bd0b95}{serif\+::discretization\+::domain\+::relation\+::validation\+::\+Relation\+Uses\+Registered\+Entities$<$ Fully\+Connected$<$ Domain\+T $>$, Domain\+IDs\+T, Boundary\+IDs\+T $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Compile-\/time validation to check if a relation uses registered entities based on provided domain and boundary IDs. This specialization is for the Relation type \doxylink{structserif_1_1discretization_1_1domain_1_1relation_1_1_fully_connected}{Fully\+Connected}. Fully connected only requires a single domain so we only enforce that the domain is registered. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1discretization_1_1domain_1_1relation_1_1validation_1_1_relation_uses_registered_e061a6c8f2519bba1ed81730b07977af0}{serif\+::discretization\+::domain\+::relation\+::validation\+::\+Relation\+Uses\+Registered\+Entities$<$ Inscribed$<$ Inner\+Domain\+T, Outer\+Domain\+T $>$, Domain\+IDs\+T, Boundary\+IDs\+T $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Compile-\/time validation to check if a relation uses registered entities based on provided domain and boundary IDs. This specialization is for the Relation type \doxylink{structserif_1_1discretization_1_1domain_1_1relation_1_1_inscribed}{Inscribed}. \doxylink{structserif_1_1discretization_1_1domain_1_1relation_1_1_inscribed}{Inscribed} requires two domains, an inner and an outer domain, and we enforce that both domains are registered. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1discretization_1_1domain_1_1relation_1_1validation_1_1_relation_uses_registered_e3275c2719d82b353d56c4a3ba2639119}{serif\+::discretization\+::domain\+::relation\+::validation\+::\+Relation\+Uses\+Registered\+Entities$<$ Domain\+Boundary$<$ Boundary\+T, Domain\+Ts... $>$, Domain\+IDs\+T, Boundary\+IDs\+T $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Compile-\/time validation to check if a relation uses registered entities based on provided domain and boundary IDs. This specialization is for the Relation type \doxylink{structserif_1_1discretization_1_1domain_1_1relation_1_1_domain_boundary}{Domain\+Boundary}. \doxylink{structserif_1_1discretization_1_1domain_1_1relation_1_1_domain_boundary}{Domain\+Boundary} requires a boundary and one or more domains, and we enforce that the boundary and all domains are registered. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1discretization_1_1domain_1_1relation_1_1validation_1_1_relations_use_registered_e35398f9ddb35428b81fce4de998872b0}{serif\+::discretization\+::domain\+::relation\+::validation\+::\+Relations\+Use\+Registered\+Entities$<$ Domain\+IDs\+T, Boundary\+IDs\+T, lists\+::\+Relation\+List$<$ Relation\+Ts... $>$ $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Compile time type to check if a list of relations uses the registered entities. This specialization is for the Relation\+List type, which is a variadic template that takes a list of relation types as template parameters. It checks if all relations in the list use registered entities based on the provided domain and boundary IDs. This will distribute to the various specializations of the singular \doxylink{structserif_1_1discretization_1_1domain_1_1relation_1_1validation_1_1_relation_uses_registered_entities}{Relation\+Uses\+Registered\+Entities} struct while folding at compile time. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Namespaces}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
namespace \mbox{\hyperlink{namespaceserif}{serif}}
|
|
\item
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1discretization}{serif\+::discretization}}
|
|
\item
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1discretization_1_1domain}{serif\+::discretization\+::domain}}
|
|
\item
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1discretization_1_1domain_1_1relation}{serif\+::discretization\+::domain\+::relation}}
|
|
\item
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1discretization_1_1domain_1_1relation_1_1validation}{serif\+::discretization\+::domain\+::relation\+::validation}}
|
|
\end{DoxyCompactItemize}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
Compile-\/time validation of relations in the discretization framework. This file provides utilities to check if relations use registered entities based on provided domain and boundary IDs.
|
|
|
|
\begin{DoxyAuthor}{Author}
|
|
Emily M. Boudreaux
|
|
\end{DoxyAuthor}
|
|
\begin{DoxyNote}{Note}
|
|
This header is primarily split into a singular and a plural section. The plural section simply folds over a pack to invoke the singular section.
|
|
\end{DoxyNote}
|