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)
606 lines
64 KiB
TeX
606 lines
64 KiB
TeX
\doxysection{serif\+::utils\+::serialize Namespace Reference}
|
|
\hypertarget{namespaceserif_1_1utils_1_1serialize}{}\label{namespaceserif_1_1utils_1_1serialize}\index{serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection*{Namespaces}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_1_1detail}{detail}}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Classes}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_entry}{Entry}}
|
|
\begin{DoxyCompactList}\small\item\em The ledger locates each independent field without decoding the rest of the archive. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_enum_serializer}{Enum\+Serializer}}
|
|
\begin{DoxyCompactList}\small\item\em Encode enumerations by declared stable spellings, never compiler-\/dependent integers. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_error}{Error}}
|
|
\begin{DoxyCompactList}\small\item\em Identify the component or field that could not be saved or reconstructed. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_field}{Field}}
|
|
\begin{DoxyCompactList}\small\item\em Associate a field name with an already encoded child. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_member}{Member}}
|
|
\begin{DoxyCompactList}\small\item\em Name a typed field expected by a component\textquotesingle{}s loader. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_named_member}{Named\+Member}}
|
|
\begin{DoxyCompactList}\small\item\em Name a plain configuration member without adding persistence methods to its owner. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}}
|
|
\begin{DoxyCompactList}\small\item\em A named component owns its fields, stable schema identifier, and schema version. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_pack}{Pack}}
|
|
\begin{DoxyCompactList}\small\item\em A pack owns its data immediately, so subsequent model changes cannot alter a pending write. \end{DoxyCompactList}\item
|
|
class \mbox{\hyperlink{classserif_1_1utils_1_1serialize_1_1_reader}{Reader}}
|
|
\begin{DoxyCompactList}\small\item\em Inspect the ledger first, then seek directly to whichever components are actually needed. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_read_options}{Read\+Options}}
|
|
\begin{DoxyCompactList}\small\item\em Bound resource use when inspecting an unfamiliar archive; limits may be raised explicitly. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_recipe_serializer}{Recipe\+Serializer}}
|
|
\begin{DoxyCompactList}\small\item\em Preserve the selected equation/unknown identities in every composed inverse. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_schema_serializer}{Schema\+Serializer}}
|
|
\begin{DoxyCompactList}\small\item\em Reconstruct stateless typed numerical declarations only when all their identities match. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer}{Serializer}}
|
|
\begin{DoxyCompactList}\small\item\em Specialize this protocol beside a component without adding I/O methods to the component itself. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01char_0f_size_0e_4}{Serializer$<$ char\mbox{[}\+Size\mbox{]}$>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01dependencies_1_1_binding_3_01_key_00_01_target_01_4_01_4}{Serializer$<$ dependencies\+::\+Binding$<$ Key, Target $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01dependencies_1_1_bindings_3_01_bindings_8_8_8_01_4_01_4}{Serializer$<$ dependencies\+::\+Bindings$<$ Bindings... $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01dependencies_1_1_dependency_context_3_01_resources_8_8_8_01_4_01_4}{Serializer$<$ dependencies\+::\+Dependency\+Context$<$ Resources... $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01dependencies_1_1_dependency_context_3_4_01_4}{Serializer$<$ dependencies\+::\+Dependency\+Context$<$$>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01dependencies_1_1_key_list_3_01_terms_8_8_8_01_4_01_4}{Serializer$<$ dependencies\+::\+Key\+List$<$ Terms... $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01dependencies_1_1_resource_3_01_key_00_01_storage_00_01_policy_01_4_01_4}{Serializer$<$ dependencies\+::\+Resource$<$ Key, Storage, Policy $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01dependencies_1_1_value_snapshot_01_4}{Serializer$<$ dependencies\+::\+Value\+Snapshot $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01dimensions_1_1_quantity_value_3_01_quantity_01_4_01_4}{Serializer$<$ dimensions\+::\+Quantity\+Value$<$ Quantity $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01discretization_1_1blocks_1_1_system_layout_0ff134e806ae8fabb2824d65ab96ab41}{Serializer$<$ discretization\+::blocks\+::\+System\+Layout$<$ Values, Residuals $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01discretization_1_1quadrature_1_1_policy_01_4}{Serializer$<$ discretization\+::quadrature\+::\+Policy $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01discretization_1_1quadrature_1_1_rule_control_01_4}{Serializer$<$ discretization\+::quadrature\+::\+Rule\+Control $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01discretization_1_1quadrature_1_1_rule_set_01_4}{Serializer$<$ discretization\+::quadrature\+::\+Rule\+Set $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01eos_1_1models_1_1_polytrope_01_4}{Serializer$<$ eos\+::models\+::\+Polytrope $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01equations_1_1_angular_momentum_constraint_01_4}{Serializer$<$ equations\+::\+Angular\+Momentum\+Constraint $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01equations_1_1_barotropic_density_balance_3_01_e_o_s_01_4_01_4}{Serializer$<$ equations\+::\+Barotropic\+Density\+Balance$<$ EOS $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01equations_1_1_barycenter_constraint_3_01_axis_00_01_row_01_4_01_4}{Serializer$<$ equations\+::\+Barycenter\+Constraint$<$ Axis, Row $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01equations_1_1_equation_registry_3_01_equations_8_8_8_01_4_01_4}{Serializer$<$ equations\+::\+Equation\+Registry$<$ Equations... $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01equations_1_1_mass_normalization_01_4}{Serializer$<$ equations\+::\+Mass\+Normalization $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01equations_1_1_point_mass_companion_01_4}{Serializer$<$ equations\+::\+Point\+Mass\+Companion $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01equations_1_1_primal_poisson_balance_01_4}{Serializer$<$ equations\+::\+Primal\+Poisson\+Balance $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01equations_1_1_surface_potential_balance_01_4}{Serializer$<$ equations\+::\+Surface\+Potential\+Balance $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01geometry_1_1deformation_1_1_domain_deformatfca458f28e7e3e0b42d8a4d880ba00cb}{Serializer$<$ geometry\+::deformation\+::\+Domain\+Deformation$<$ Surface, Interior, Vacuum $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01geometry_1_1deformation_1_1_fixed_infinity_radial_extension_01_4}{Serializer$<$ geometry\+::deformation\+::\+Fixed\+Infinity\+Radial\+Extension $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01geometry_1_1deformation_1_1_geometry_step_limit_01_4}{Serializer$<$ geometry\+::deformation\+::\+Geometry\+Step\+Limit $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Store bounded numerical history as named data, without runtime operators or graph caches. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01geometry_1_1deformation_1_1keys_1_1_surface_metric_01_4}{Serializer$<$ geometry\+::deformation\+::keys\+::\+Surface\+Metric $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01geometry_1_1deformation_1_1_nodal_radial_surface_01_4}{Serializer$<$ geometry\+::deformation\+::\+Nodal\+Radial\+Surface $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01geometry_1_1deformation_1_1_power_law_radial_extension_01_4}{Serializer$<$ geometry\+::deformation\+::\+Power\+Law\+Radial\+Extension $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01geometry_1_1deformation_1_1_spherical_harmonic_surface_01_4}{Serializer$<$ geometry\+::deformation\+::\+Spherical\+Harmonic\+Surface $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01geometry_1_1surface_1_1_isobaric_surface_01_4}{Serializer$<$ geometry\+::surface\+::\+Isobaric\+Surface $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01laneemden_1_1_integration_options_01_4}{Serializer$<$ laneemden\+::\+Integration\+Options $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1backend_1_1mfem_1_1_stellar_discree159e3517b28c4c8168613dfca6fe92a}{Serializer$<$ model\+::backend\+::mfem\+::\+Stellar\+Discretization$<$ Owner, Bindings, Deformation $>$ $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Integrate native discretizations into packs while keeping application-\/owner reconstruction explicit. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_discretization_options_3_01_model6067d6d29d8c7435c40c1c6cda543675}{Serializer$<$ model\+::\+Discretization\+Options$<$ Model, Finite\+Elements, Normalization, Preconditioner $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_eos_reference_3_01_e_o_s_01_4_01_4}{Serializer$<$ model\+::\+Eos\+Reference$<$ EOS $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_equilibrium_equations_3_01_interif5348cc482fa0837731ef29e43caf9e1}{Serializer$<$ model\+::\+Equilibrium\+Equations$<$ Interior, Shape, Surface $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_fixed_angular_momentum_01_4}{Serializer$<$ model\+::\+Fixed\+Angular\+Momentum $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_fixed_total_mass_01_4}{Serializer$<$ model\+::\+Fixed\+Total\+Mass $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1normalization_1_1_surface_rows_01_4}{Serializer$<$ model\+::normalization\+::\+Surface\+Rows $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_no_shape_force_01_4}{Serializer$<$ model\+::\+No\+Shape\+Force $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_no_surface_condition_01_4}{Serializer$<$ model\+::\+No\+Surface\+Condition $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1preconditioning_1_1_none_01_4}{Serializer$<$ model\+::preconditioning\+::\+None $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_stellar_model_3_01_e_o_s_00_01_de66a561ce84ebc1ad4f2655cbafe05d29}{Serializer$<$ model\+::\+Stellar\+Model$<$ EOS, Definition, types\+::\+Type\+List$<$ Specifications... $>$ $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01model_1_1_stellar_state_3_01_layout_01_4_01_4}{Serializer$<$ model\+::\+Stellar\+State$<$ Layout $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01_node_01_4}{Serializer$<$ Node $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Preserve a raw component when inspection, rather than typed reconstruction, is wanted. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01operators_1_1backend_1_1mfem_1_1_volume_options_01_4}{Serializer$<$ operators\+::backend\+::mfem\+::\+Volume\+Options $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Preserve quadrature and contraction choices separately from physical coefficients. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_backtracking_01_4}{Serializer$<$ solver\+::\+Backtracking $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1linear_1_1_control_01_4}{Serializer$<$ solver\+::linear\+::\+Control $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1linear_1_1_f_g_m_r_e_s_01_4}{Serializer$<$ solver\+::linear\+::\+FGMRES $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1linear_1_1_report_01_4}{Serializer$<$ solver\+::linear\+::\+Report $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Store bounded numerical history as named data, without runtime operators or graph caches. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1linear_1_1_status_01_4}{Serializer$<$ solver\+::linear\+::\+Status $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Preserve stable termination names independently of enum storage or declaration order. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_metric_evaluation_01_4}{Serializer$<$ solver\+::\+Metric\+Evaluation $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Store bounded numerical history as named data, without runtime operators or graph caches. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_newton_01_4}{Serializer$<$ solver\+::\+Newton $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_newton_checkpoint_3_01_state_01_4_01_4}{Serializer$<$ solver\+::\+Newton\+Checkpoint$<$ State $>$ $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Save a portable accepted physical state together with its complete supported Newton history. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_newton_progress_01_4}{Serializer$<$ solver\+::\+Newton\+Progress $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Store bounded numerical history as named data, without runtime operators or graph caches. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_automatic_plan_01_4}{Serializer$<$ solver\+::normalization\+::\+Automatic\+Plan $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_diagonal_normalization_01_4}{Serializer$<$ solver\+::normalization\+::\+Diagonal\+Normalization $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_dimensionless_01_4}{Serializer$<$ solver\+::normalization\+::\+Dimensionless $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_dimensionless_r5cccab2fd1f566ce0d4cd0c4272c0de8}{Serializer$<$ solver\+::normalization\+::\+Dimensionless\+Riesz\+Coordinate$<$ Quantity, Metric, Geometry $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_from_model_01_4}{Serializer$<$ solver\+::normalization\+::\+From\+Model $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_identity_coordinate_01_4}{Serializer$<$ solver\+::normalization\+::\+Identity\+Coordinate $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_lane_emden_appr280bda78ea4050d0ff8b72e64d00b94a}{Serializer$<$ solver\+::normalization\+::\+Lane\+Emden\+Approximation$<$ Mass, Density $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_normalization_o6acc76af4c0fbc1dccb396f0a7cb69c5}{Serializer$<$ solver\+::normalization\+::\+Normalization\+Options$<$ Scheme, Coordinates, Plan, Sources, Computations $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_normalization_p405753c19e233a35f6ab15d812b35123}{Serializer$<$ solver\+::normalization\+::\+Normalization\+Plan$<$ Values, Residuals $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_physical_riesz_adabf6970471703d441b80d61686d40f}{Serializer$<$ solver\+::normalization\+::\+Physical\+Riesz\+Coordinate$<$ Quantity, Metric $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_reference_volume_metric_3_01_term_01_4_01_4}{Serializer$<$ solver\+::normalization\+::\+Reference\+Volume\+Metric$<$ Term $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_stellar_reference_scales_01_4}{Serializer$<$ solver\+::normalization\+::\+Stellar\+Reference\+Scales $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_unit_metric_01_4}{Serializer$<$ solver\+::normalization\+::\+Unit\+Metric $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1normalization_1_1_with_point_rows7f253a21848d4633f0a601821f4c7a4e}{Serializer$<$ solver\+::normalization\+::\+With\+Point\+Rows$<$ Volume, Quantity, Selection $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_normalized_residual_metric_01_4}{Serializer$<$ solver\+::\+Normalized\+Residual\+Metric $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1preconditioner_1_1_block_precondi8332ef5e96df07be9da235c2e3175838}{Serializer$<$ solver\+::preconditioner\+::\+Block\+Preconditioner$<$ Row, Field, Strategy $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1preconditioner_1_1_bordered_preco61576a59daf50c7dd924da92bf2d3074}{Serializer$<$ solver\+::preconditioner\+::\+Bordered\+Preconditioner$<$ Fields, Constraints $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1preconditioner_1_1_coupled_precon5f86489d6a54160e4f32d710885530a8}{Serializer$<$ solver\+::preconditioner\+::\+Coupled\+Preconditioner$<$ First, Second, Policy $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1preconditioner_1_1strategies_1_1c749e8d76ab33c4221418ab091a95767f}{Serializer$<$ solver\+::preconditioner\+::strategies\+::coupling\+::\+Second\+Then\+First $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1preconditioner_1_1strategies_1_1inverse_1_1_dense_direct_01_4}{Serializer$<$ solver\+::preconditioner\+::strategies\+::inverse\+::\+Dense\+Direct $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1preconditioner_1_1strategies_1_1inverse_1_1_diagonal_01_4}{Serializer$<$ solver\+::preconditioner\+::strategies\+::inverse\+::\+Diagonal $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1preconditioner_1_1strategies_1_1inverse_1_1_fixed_a_m_g_01_4}{Serializer$<$ solver\+::preconditioner\+::strategies\+::inverse\+::\+Fixed\+AMG $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1preconditioner_1_1strategies_1_1inverse_1_1_sparse_direct_01_4}{Serializer$<$ solver\+::preconditioner\+::strategies\+::inverse\+::\+Sparse\+Direct $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_solve_diagnostics_01_4}{Serializer$<$ solver\+::\+Solve\+Diagnostics $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Store bounded numerical history as named data, without runtime operators or graph caches. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_solve_result_3_01_state_00_01_system_00_01_model_01_4_01_4}{Serializer$<$ solver\+::\+Solve\+Result$<$ State, System, Model $>$ $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Export scientific results and supported restart data without pretending frozen operators are persistent. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_solver_options_3_01_metric_00_013ca3bdcad21963925dfd88948dd19ab4}{Serializer$<$ solver\+::\+Solver\+Options$<$ Metric, Strategies, Linear $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_solve_status_01_4}{Serializer$<$ solver\+::\+Solve\+Status $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Preserve stable termination names independently of enum storage or declaration order. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01solver_1_1_standard_newton_01_4}{Serializer$<$ solver\+::\+Standard\+Newton $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01std_1_1array_3_01_t_00_01_size_01_4_01_4}{Serializer$<$ std\+::array$<$ T, Size $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01std_1_1optional_3_01_t_01_4_01_4}{Serializer$<$ std\+::optional$<$ T $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01std_1_1string_01_4}{Serializer$<$ std\+::string $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01std_1_1string__view_01_4}{Serializer$<$ std\+::string\+\_\+view $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01std_1_1tuple_3_01_t_8_8_8_01_4_01_4}{Serializer$<$ std\+::tuple$<$ T... $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01std_1_1vector_3_01_t_01_4_01_4}{Serializer$<$ std\+::vector$<$ T $>$ $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Arrays of coefficients are contiguous payloads, while compound values retain named children. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_serializer_3_01_t_01_4}{Serializer$<$ T $>$}}
|
|
\begin{DoxyCompactList}\small\item\em Store numeric values using explicit portable widths. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_struct_serializer}{Struct\+Serializer}}
|
|
\begin{DoxyCompactList}\small\item\em Compose an explicitly listed aggregate; the field list is also its constructor order. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity}{Term\+Identity}}
|
|
\begin{DoxyCompactList}\small\item\em Register stable coordinate identities separately from compiler-\/generated display names. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01discretization_1_1blocks_1_1barotropic__89bc695dfd6145b8157982b62f74f600}{Term\+Identity$<$ discretization\+::blocks\+::barotropic\+\_\+constant\+::mass\+\_\+normalization $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01discretization_1_1blocks_1_1density_1_1mass_01_4}{Term\+Identity$<$ discretization\+::blocks\+::density\+::mass $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01discretization_1_1blocks_1_1displacement_1_1vector_01_4}{Term\+Identity$<$ discretization\+::blocks\+::displacement\+::vector $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01discretization_1_1blocks_1_1gravity_1_1potential_01_4}{Term\+Identity$<$ discretization\+::blocks\+::gravity\+::potential $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01discretization_1_1blocks_1_1rotation_1_1angular__velocity_01_4}{Term\+Identity$<$ discretization\+::blocks\+::rotation\+::angular\+\_\+velocity $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01discretization_1_1blocks_1_1surface__deformation_1_1coefficients_01_4}{Term\+Identity$<$ discretization\+::blocks\+::surface\+\_\+deformation\+::coefficients $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01discretization_1_1blocks_1_1surface__def9d4d4c300051a0fc97927e0b7b8e5806}{Term\+Identity$<$ discretization\+::blocks\+::surface\+\_\+deformation\+::shape\+\_\+equilibrium $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01model_1_1_constraint_of_3_01_specification_01_4_01_4}{Term\+Identity$<$ model\+::\+Constraint\+Of$<$ Specification $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_term_identity_3_01model_1_1_generated_coordinate_of_3_01_specification_01_4_01_4}{Term\+Identity$<$ model\+::\+Generated\+Coordinate\+Of$<$ Specification $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_options}{Top\+Export\+Options}}
|
|
\begin{DoxyCompactList}\small\item\em Sampling and admissibility limits for TOP\textquotesingle{}s single-\/domain polytrope reader. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_report}{Top\+Export\+Report}}
|
|
\begin{DoxyCompactList}\small\item\em Export scales and sampled projection defects; these do not certify oscillation accuracy. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_polytrope_source}{Top\+Polytrope\+Source}}
|
|
\begin{DoxyCompactList}\small\item\em Physical samples in a centered frame whose polar axis is the rotation axis. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_write_options}{Write\+Options}}
|
|
\begin{DoxyCompactList}\small\item\em Annotations belong to the written observation, not to the stellar physics. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Typedefs}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
{\footnotesize template$<$typename Original\+Model$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af0afd5aacbd77b40205164c3ec2cf423}{Restored\+Stellar\+Model}} = \mbox{\hyperlink{classserif_1_1model_1_1_stellar_model}{model\+::\+Stellar\+Model}}$<$typename Original\+Model\+::\+Equation\+Of\+State, \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_1_1detail_a331361f70fa27188f1a1679faa827273}{detail\+::\+Owned\+Equations}}$<$Original\+Model$>$, typename Original\+Model\+::\+Specification\+Types$>$
|
|
\begin{DoxyCompactList}\small\item\em Restore current physics as an explicit composition, without pretending to regenerate a deferred program. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename T$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}} = std\+::expected$<$T, \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_error}{Error}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{Value}}
|
|
\begin{DoxyCompactList}\small\item\em Portable scientific data; runtime pointers and computational caches have no representation here. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Enumerations}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
enum class \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99}{Format}} \{ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99a9d7183f16acce70658f686ae7f1a4d20}{binary}}
|
|
, \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99a1cb251ec0d568de6a929b520c4aed8d1}{text}}
|
|
\}
|
|
\begin{DoxyCompactList}\small\item\em Both encodings share the same component schemas and indexed, sectioned file layout. \end{DoxyCompactList}\item
|
|
enum class \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279}{Version\+Tolerance}} \{ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279ae79a3672fcb675134bb57abd3e0dfae3}{same\+\_\+major}}
|
|
, \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279a3b7efa09444a31c5d58596e5bbf87d47}{exact}}
|
|
, \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279a100b8cad7cf2a56f6df78f171f97a1ec}{any}}
|
|
\}
|
|
\begin{DoxyCompactList}\small\item\em Application-\/version compatibility is separate from file-\/format and component-\/schema compatibility. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
{\footnotesize template$<$model\+::\+Stellar\+Model\+Type Model, typename Finite\+Elements, typename State$>$ }\\\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_report}{Top\+Export\+Report}} $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ac247352aee3417238eda1bf573f1b197}{export\+\_\+top}} (const std\+::filesystem\+::path \&directory, const Model \&stellar\+\_\+model, const Finite\+Elements \&finite\+\_\+elements, const State \&state, const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_options}{Top\+Export\+Options}} \&options=\{\})
|
|
\begin{DoxyCompactList}\small\item\em Export the accepted density and FE surface of a uniformly rotating vacuum polytrope to TOP. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename Finite\+Elements, typename Solution$>$ \newline
|
|
requires requires(const Solution\& solution) \{ solution.\+has\+\_\+state(); solution.\+model(); solution.\+state(); \}}\\\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_report}{Top\+Export\+Report}} $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_aa5efebebb4fcf770cef7679e0e924627}{export\+\_\+top}} (const std\+::filesystem\+::path \&directory, const Finite\+Elements \&finite\+\_\+elements, const Solution \&solution, const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_options}{Top\+Export\+Options}} \&options=\{\})
|
|
\begin{DoxyCompactList}\small\item\em Export a solver result with the separately owned FE resources that interpret its accepted state. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename T$>$ }\\\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_field}{Field}} \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ab93715bd271d15568badc8f1d5423271}{named}} (std\+::string name, const T \&value)
|
|
\begin{DoxyCompactList}\small\item\em Assign an explicit top-\/level name, for example when storing two stars in the same archive. \end{DoxyCompactList}\item
|
|
void \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a7f4727c3a8f5b10ed46c149785bd8c82}{add\+\_\+component}} (\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_pack}{Pack}} \&\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ad8a45ed21a6cf9a7ca63582a18526f9b}{pack}}, \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_field}{Field}} component)
|
|
\begin{DoxyCompactList}\small\item\em Insert a component while rejecting conflicting definitions of the same named object. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename... T$>$ }\\\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_pack}{Pack}} \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ad8a45ed21a6cf9a7ca63582a18526f9b}{pack}} (const T \&... values)
|
|
\begin{DoxyCompactList}\small\item\em Capture every supplied component; unregistered nested types remain visible as unsupported entries. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ void $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a53de7b4a0d01bed188ef53fbeb4c3e7e}{write}} (const std\+::filesystem\+::path \&path, const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_pack}{Pack}} \&contents, const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_write_options}{Write\+Options}} \&options=\{\})
|
|
\begin{DoxyCompactList}\small\item\em Write a complete temporary file and atomically replace the destination only after it closes successfully. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename Owner, typename \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{Value}}$>$ }\\constexpr auto \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a57bf01379dd9f09662f2eca940c2287a}{member\+\_\+field}} (std\+::string\+\_\+view name, \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{Value}} Owner\+::\texorpdfstring{$\ast$}{*}pointer)
|
|
\begin{DoxyCompactList}\small\item\em Deduce a member\textquotesingle{}s stored type from its ordinary C++ declaration. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename Term$>$ }\\\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a2467d2dec6186bb040f634a1320c279a}{term\+\_\+schema}} ()
|
|
\begin{DoxyCompactList}\small\item\em Expose the physical meaning and FE representation of one compiled coordinate. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ void $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ab00ec68c8966b7783b811342ba3202a5}{validate\+\_\+schema}} (const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&saved, const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&expected)
|
|
\begin{DoxyCompactList}\small\item\em A compiled identity must match and must have an explicit persistence registration. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename Original\+Model$>$ }\\\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af0afd5aacbd77b40205164c3ec2cf423}{Restored\+Stellar\+Model}}$<$ Original\+Model $>$ $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ad8c80c4dc17552d1b312b26428b20ccd}{restore\+\_\+stellar\+\_\+model}} (const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&node)
|
|
\begin{DoxyCompactList}\small\item\em Reconstruct resolved physics; future changes requiring the original callback remain a separate capability. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename T$>$ }\\\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a4ea480fabb9d06528d01b26691fa80ec}{encode}} (const T \&value)
|
|
\begin{DoxyCompactList}\small\item\em Produce data when a serializer exists, otherwise record the missing capability explicitly. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename T$>$ }\\\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ T $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_abb3b906587e8c2950b461d615bba7606}{decode}} (const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&node)
|
|
\begin{DoxyCompactList}\small\item\em Translate invalid saved parameters into a value error at the reconstruction boundary. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename T$>$ }\\\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_field}{Field}} \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a73c789fd95f83d2f547facf07bc3ea79}{field}} (std\+::string name, const T \&value)
|
|
\begin{DoxyCompactList}\small\item\em Encode one named field of a component. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename... Fields$>$ }\\\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_accd9d8a1543b90311f64896a155c6e1c}{object}} (std\+::string\+\_\+view type, Fields... fields)
|
|
\begin{DoxyCompactList}\small\item\em Compose a component from its independently serialized fields. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename T$>$ }\\\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_member}{Member}}$<$ T $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a019c595419bddb41b7a05042e2f6d611}{member}} (std\+::string\+\_\+view name)
|
|
\begin{DoxyCompactList}\small\item\em Describe one field to read\+\_\+object without a separate temporary variable. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename T$>$ }\\\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ T $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a21172de2e2f37c8797a238eb0bdaea30}{read\+\_\+field}} (const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&node, std\+::string\+\_\+view name)
|
|
\begin{DoxyCompactList}\small\item\em Read a required field and retain its full path in any diagnostic. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename Construct, typename... Members$>$ }\\auto \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_adb5114bee6aa1ea6612b96babf0ae8c2}{read\+\_\+object}} (const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&node, std\+::string\+\_\+view type, Construct construct, Members... members) -\/$>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ std\+::invoke\+\_\+result\+\_\+t$<$ Construct, typename Members\+::\+Type... $>$ $>$
|
|
\begin{DoxyCompactList}\small\item\em Construct a component only after every required field has decoded successfully. \end{DoxyCompactList}\item
|
|
std\+::string \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ad1fa896c36b9c32ff4b8bdb8660cba33}{fingerprint}} (std\+::string\+\_\+view bytes)
|
|
\begin{DoxyCompactList}\small\item\em Versioned content identity for accidental corruption and resource matching; not a cryptographic signature. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_report}{Top\+Export\+Report}} $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a2e0edf5820600e4b31b47f2a0a3fe183}{export\+\_\+top}} (const std\+::filesystem\+::path \&path, const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_polytrope_source}{Top\+Polytrope\+Source}} \&source, const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_options}{Top\+Export\+Options}} \&options=\{\})
|
|
\begin{DoxyCompactList}\small\item\em Atomically publish a new TOP model directory, refusing to overwrite any destination. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
|
|
|
|
\doxysubsection{Typedef Documentation}
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_af0afd5aacbd77b40205164c3ec2cf423}\index{serif::utils::serialize@{serif::utils::serialize}!RestoredStellarModel@{RestoredStellarModel}}
|
|
\index{RestoredStellarModel@{RestoredStellarModel}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{RestoredStellarModel}{RestoredStellarModel}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_af0afd5aacbd77b40205164c3ec2cf423}
|
|
template$<$typename Original\+Model$>$ \\
|
|
using \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af0afd5aacbd77b40205164c3ec2cf423}{serif\+::utils\+::serialize\+::\+Restored\+Stellar\+Model}} = \mbox{\hyperlink{classserif_1_1model_1_1_stellar_model}{model\+::\+Stellar\+Model}}$<$typename Original\+Model\+::\+Equation\+Of\+State, \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_1_1detail_a331361f70fa27188f1a1679faa827273}{detail\+::\+Owned\+Equations}}$<$Original\+Model$>$, typename Original\+Model\+::\+Specification\+Types$>$}
|
|
|
|
|
|
|
|
Restore current physics as an explicit composition, without pretending to regenerate a deferred program.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}\index{serif::utils::serialize@{serif::utils::serialize}!Result@{Result}}
|
|
\index{Result@{Result}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{Result}{Result}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}
|
|
template$<$typename T$>$ \\
|
|
using \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{serif\+::utils\+::serialize\+::\+Result}} = std\+::expected$<$T, \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_error}{Error}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}\index{serif::utils::serialize@{serif::utils::serialize}!Value@{Value}}
|
|
\index{Value@{Value}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{Value}{Value}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}
|
|
using \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{serif\+::utils\+::serialize\+::\+Value}}}
|
|
|
|
{\bfseries Initial value\+:}
|
|
\begin{DoxyCode}{0}
|
|
\DoxyCodeLine{\ std::variant<std::monostate,\ bool,\ std::int64\_t,\ std::uint64\_t,\ double,\ std::string,}
|
|
\DoxyCodeLine{\ \ \ \ \ \ \ \ std::vector<double>,\ std::vector<std::int64\_t>,\ std::vector<std::uint64\_t>>}
|
|
|
|
\end{DoxyCode}
|
|
|
|
|
|
Portable scientific data; runtime pointers and computational caches have no representation here.
|
|
|
|
|
|
|
|
\doxysubsection{Enumeration Type Documentation}
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99}\index{serif::utils::serialize@{serif::utils::serialize}!Format@{Format}}
|
|
\index{Format@{Format}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{Format}{Format}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99}
|
|
enum class \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99}{serif\+::utils\+::serialize\+::\+Format}}\hspace{0.3cm}{\ttfamily [strong]}}
|
|
|
|
|
|
|
|
Both encodings share the same component schemas and indexed, sectioned file layout.
|
|
|
|
\begin{DoxyEnumFields}[2]{Enumerator}
|
|
\raisebox{\heightof{T}}[0pt][0pt]{\index{binary@{binary}!serif::utils::serialize@{serif::utils::serialize}}\index{serif::utils::serialize@{serif::utils::serialize}!binary@{binary}}}\Hypertarget{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99a9d7183f16acce70658f686ae7f1a4d20}\label{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99a9d7183f16acce70658f686ae7f1a4d20}
|
|
binary&\\
|
|
\hline
|
|
|
|
\raisebox{\heightof{T}}[0pt][0pt]{\index{text@{text}!serif::utils::serialize@{serif::utils::serialize}}\index{serif::utils::serialize@{serif::utils::serialize}!text@{text}}}\Hypertarget{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99a1cb251ec0d568de6a929b520c4aed8d1}\label{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99a1cb251ec0d568de6a929b520c4aed8d1}
|
|
text&\\
|
|
\hline
|
|
|
|
\end{DoxyEnumFields}
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279}\index{serif::utils::serialize@{serif::utils::serialize}!VersionTolerance@{VersionTolerance}}
|
|
\index{VersionTolerance@{VersionTolerance}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{VersionTolerance}{VersionTolerance}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279}
|
|
enum class \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279}{serif\+::utils\+::serialize\+::\+Version\+Tolerance}}\hspace{0.3cm}{\ttfamily [strong]}}
|
|
|
|
|
|
|
|
Application-\/version compatibility is separate from file-\/format and component-\/schema compatibility.
|
|
|
|
\begin{DoxyEnumFields}[2]{Enumerator}
|
|
\raisebox{\heightof{T}}[0pt][0pt]{\index{same\_major@{same\_major}!serif::utils::serialize@{serif::utils::serialize}}\index{serif::utils::serialize@{serif::utils::serialize}!same\_major@{same\_major}}}\Hypertarget{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279ae79a3672fcb675134bb57abd3e0dfae3}\label{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279ae79a3672fcb675134bb57abd3e0dfae3}
|
|
same\+\_\+major&\\
|
|
\hline
|
|
|
|
\raisebox{\heightof{T}}[0pt][0pt]{\index{exact@{exact}!serif::utils::serialize@{serif::utils::serialize}}\index{serif::utils::serialize@{serif::utils::serialize}!exact@{exact}}}\Hypertarget{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279a3b7efa09444a31c5d58596e5bbf87d47}\label{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279a3b7efa09444a31c5d58596e5bbf87d47}
|
|
exact&\\
|
|
\hline
|
|
|
|
\raisebox{\heightof{T}}[0pt][0pt]{\index{any@{any}!serif::utils::serialize@{serif::utils::serialize}}\index{serif::utils::serialize@{serif::utils::serialize}!any@{any}}}\Hypertarget{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279a100b8cad7cf2a56f6df78f171f97a1ec}\label{namespaceserif_1_1utils_1_1serialize_a02674e30cfb576e300d365827de17279a100b8cad7cf2a56f6df78f171f97a1ec}
|
|
any&\\
|
|
\hline
|
|
|
|
\end{DoxyEnumFields}
|
|
|
|
|
|
\doxysubsection{Function Documentation}
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a7f4727c3a8f5b10ed46c149785bd8c82}\index{serif::utils::serialize@{serif::utils::serialize}!add\_component@{add\_component}}
|
|
\index{add\_component@{add\_component}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{add\_component()}{add\_component()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a7f4727c3a8f5b10ed46c149785bd8c82}
|
|
void serif\+::utils\+::serialize\+::add\+\_\+component (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_pack}{Pack}} \&}]{pack}{, }\item[{\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_field}{Field}}}]{component}{}\end{DoxyParamCaption})}
|
|
|
|
|
|
|
|
Insert a component while rejecting conflicting definitions of the same named object.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_abb3b906587e8c2950b461d615bba7606}\index{serif::utils::serialize@{serif::utils::serialize}!decode@{decode}}
|
|
\index{decode@{decode}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{decode()}{decode()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_abb3b906587e8c2950b461d615bba7606}
|
|
template$<$typename T$>$ \\
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ T $>$ serif\+::utils\+::serialize\+::decode (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&}]{node}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Translate invalid saved parameters into a value error at the reconstruction boundary.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a4ea480fabb9d06528d01b26691fa80ec}\index{serif::utils::serialize@{serif::utils::serialize}!encode@{encode}}
|
|
\index{encode@{encode}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{encode()}{encode()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a4ea480fabb9d06528d01b26691fa80ec}
|
|
template$<$typename T$>$ \\
|
|
\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} serif\+::utils\+::serialize\+::encode (\begin{DoxyParamCaption}\item[{const T \&}]{value}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Produce data when a serializer exists, otherwise record the missing capability explicitly.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_aa5efebebb4fcf770cef7679e0e924627}\index{serif::utils::serialize@{serif::utils::serialize}!export\_top@{export\_top}}
|
|
\index{export\_top@{export\_top}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{export\_top()}{export\_top()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_aa5efebebb4fcf770cef7679e0e924627}
|
|
template$<$typename Finite\+Elements, typename Solution$>$ \newline
|
|
requires requires(const Solution\& solution) \{ solution.\+has\+\_\+state(); solution.\+model(); solution.\+state(); \}\\
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_report}{Top\+Export\+Report}} $>$ serif\+::utils\+::serialize\+::export\+\_\+top (\begin{DoxyParamCaption}\item[{const std\+::filesystem\+::path \&}]{directory}{, }\item[{const Finite\+Elements \&}]{finite\+\_\+elements}{, }\item[{const Solution \&}]{solution}{, }\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_options}{Top\+Export\+Options}} \&}]{options}{ = {\ttfamily \{\}}}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Export a solver result with the separately owned FE resources that interpret its accepted state.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_ac247352aee3417238eda1bf573f1b197}\index{serif::utils::serialize@{serif::utils::serialize}!export\_top@{export\_top}}
|
|
\index{export\_top@{export\_top}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{export\_top()}{export\_top()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_ac247352aee3417238eda1bf573f1b197}
|
|
template$<$model\+::\+Stellar\+Model\+Type Model, typename Finite\+Elements, typename State$>$ \\
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_report}{Top\+Export\+Report}} $>$ serif\+::utils\+::serialize\+::export\+\_\+top (\begin{DoxyParamCaption}\item[{const std\+::filesystem\+::path \&}]{directory}{, }\item[{const Model \&}]{stellar\+\_\+model}{, }\item[{const Finite\+Elements \&}]{finite\+\_\+elements}{, }\item[{const State \&}]{state}{, }\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_options}{Top\+Export\+Options}} \&}]{options}{ = {\ttfamily \{\}}}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Export the accepted density and FE surface of a uniformly rotating vacuum polytrope to TOP.
|
|
|
|
\begin{DoxyNote}{Note}
|
|
Stellar\+Model owns physics, while finite\+\_\+elements and state supply its numerical realization. Enthalpy is derived only for this external file format; it is not introduced as a SERiF unknown. The native TOP polytrope reader does not represent general EOS or finite-\/pressure surfaces.
|
|
\end{DoxyNote}
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a2e0edf5820600e4b31b47f2a0a3fe183}\index{serif::utils::serialize@{serif::utils::serialize}!export\_top@{export\_top}}
|
|
\index{export\_top@{export\_top}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{export\_top()}{export\_top()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a2e0edf5820600e4b31b47f2a0a3fe183}
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_report}{Top\+Export\+Report}} $>$ serif\+::utils\+::serialize\+::export\+\_\+top (\begin{DoxyParamCaption}\item[{const std\+::filesystem\+::path \&}]{path}{, }\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_polytrope_source}{Top\+Polytrope\+Source}} \&}]{source}{, }\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_top_export_options}{Top\+Export\+Options}} \&}]{options}{ = {\ttfamily \{\}}}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Atomically publish a new TOP model directory, refusing to overwrite any destination.
|
|
|
|
\begin{DoxyNote}{Note}
|
|
Projects the source surface and pressure-\/derived enthalpy at common surface-\/fitted zeta coordinates. Only equatorially symmetric axisymmetric vacuum polytropes with n\texorpdfstring{$>$}{>}=1 are supported. TOP chooses Gamma1 in its equation set, separately from these files.
|
|
\end{DoxyNote}
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a73c789fd95f83d2f547facf07bc3ea79}\index{serif::utils::serialize@{serif::utils::serialize}!field@{field}}
|
|
\index{field@{field}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{field()}{field()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a73c789fd95f83d2f547facf07bc3ea79}
|
|
template$<$typename T$>$ \\
|
|
\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_field}{Field}} serif\+::utils\+::serialize\+::field (\begin{DoxyParamCaption}\item[{std\+::string}]{name}{, }\item[{const T \&}]{value}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Encode one named field of a component.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_ad1fa896c36b9c32ff4b8bdb8660cba33}\index{serif::utils::serialize@{serif::utils::serialize}!fingerprint@{fingerprint}}
|
|
\index{fingerprint@{fingerprint}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{fingerprint()}{fingerprint()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_ad1fa896c36b9c32ff4b8bdb8660cba33}
|
|
std\+::string serif\+::utils\+::serialize\+::fingerprint (\begin{DoxyParamCaption}\item[{std\+::string\+\_\+view}]{bytes}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Versioned content identity for accidental corruption and resource matching; not a cryptographic signature.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a019c595419bddb41b7a05042e2f6d611}\index{serif::utils::serialize@{serif::utils::serialize}!member@{member}}
|
|
\index{member@{member}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{member()}{member()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a019c595419bddb41b7a05042e2f6d611}
|
|
template$<$typename T$>$ \\
|
|
\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_member}{Member}}$<$ T $>$ serif\+::utils\+::serialize\+::member (\begin{DoxyParamCaption}\item[{std\+::string\+\_\+view}]{name}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Describe one field to read\+\_\+object without a separate temporary variable.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a57bf01379dd9f09662f2eca940c2287a}\index{serif::utils::serialize@{serif::utils::serialize}!member\_field@{member\_field}}
|
|
\index{member\_field@{member\_field}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{member\_field()}{member\_field()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a57bf01379dd9f09662f2eca940c2287a}
|
|
template$<$typename Owner, typename \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{Value}}$>$ \\
|
|
auto serif\+::utils\+::serialize\+::member\+\_\+field (\begin{DoxyParamCaption}\item[{std\+::string\+\_\+view}]{name}{, }\item[{\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{Value}} Owner\+::\texorpdfstring{$\ast$}{*}}]{pointer}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}, {\ttfamily [constexpr]}}
|
|
|
|
|
|
|
|
Deduce a member\textquotesingle{}s stored type from its ordinary C++ declaration.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_ab93715bd271d15568badc8f1d5423271}\index{serif::utils::serialize@{serif::utils::serialize}!named@{named}}
|
|
\index{named@{named}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{named()}{named()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_ab93715bd271d15568badc8f1d5423271}
|
|
template$<$typename T$>$ \\
|
|
\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_field}{Field}} serif\+::utils\+::serialize\+::named (\begin{DoxyParamCaption}\item[{std\+::string}]{name}{, }\item[{const T \&}]{value}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Assign an explicit top-\/level name, for example when storing two stars in the same archive.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_accd9d8a1543b90311f64896a155c6e1c}\index{serif::utils::serialize@{serif::utils::serialize}!object@{object}}
|
|
\index{object@{object}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{object()}{object()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_accd9d8a1543b90311f64896a155c6e1c}
|
|
template$<$typename... Fields$>$ \\
|
|
\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} serif\+::utils\+::serialize\+::object (\begin{DoxyParamCaption}\item[{std\+::string\+\_\+view}]{type}{, }\item[{Fields...}]{fields}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Compose a component from its independently serialized fields.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_ad8a45ed21a6cf9a7ca63582a18526f9b}\index{serif::utils::serialize@{serif::utils::serialize}!pack@{pack}}
|
|
\index{pack@{pack}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{pack()}{pack()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_ad8a45ed21a6cf9a7ca63582a18526f9b}
|
|
template$<$typename... T$>$ \\
|
|
\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_pack}{Pack}} serif\+::utils\+::serialize\+::pack (\begin{DoxyParamCaption}\item[{const T \&...}]{values}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Capture every supplied component; unregistered nested types remain visible as unsupported entries.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a21172de2e2f37c8797a238eb0bdaea30}\index{serif::utils::serialize@{serif::utils::serialize}!read\_field@{read\_field}}
|
|
\index{read\_field@{read\_field}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{read\_field()}{read\_field()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a21172de2e2f37c8797a238eb0bdaea30}
|
|
template$<$typename T$>$ \\
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ T $>$ serif\+::utils\+::serialize\+::read\+\_\+field (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&}]{node}{, }\item[{std\+::string\+\_\+view}]{name}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Read a required field and retain its full path in any diagnostic.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_adb5114bee6aa1ea6612b96babf0ae8c2}\index{serif::utils::serialize@{serif::utils::serialize}!read\_object@{read\_object}}
|
|
\index{read\_object@{read\_object}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{read\_object()}{read\_object()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_adb5114bee6aa1ea6612b96babf0ae8c2}
|
|
template$<$typename Construct, typename... Members$>$ \\
|
|
auto serif\+::utils\+::serialize\+::read\+\_\+object (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&}]{node}{, }\item[{std\+::string\+\_\+view}]{type}{, }\item[{Construct}]{construct}{, }\item[{Members...}]{members}{}\end{DoxyParamCaption}) -\/$>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$std\+::invoke\+\_\+result\+\_\+t$<$Construct, typename Members\+::\+Type...$>$$>$ \hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Construct a component only after every required field has decoded successfully.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_ad8c80c4dc17552d1b312b26428b20ccd}\index{serif::utils::serialize@{serif::utils::serialize}!restore\_stellar\_model@{restore\_stellar\_model}}
|
|
\index{restore\_stellar\_model@{restore\_stellar\_model}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{restore\_stellar\_model()}{restore\_stellar\_model()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_ad8c80c4dc17552d1b312b26428b20ccd}
|
|
template$<$typename Original\+Model$>$ \\
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af0afd5aacbd77b40205164c3ec2cf423}{Restored\+Stellar\+Model}}$<$ Original\+Model $>$ $>$ serif\+::utils\+::serialize\+::restore\+\_\+stellar\+\_\+model (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&}]{node}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Reconstruct resolved physics; future changes requiring the original callback remain a separate capability.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a2467d2dec6186bb040f634a1320c279a}\index{serif::utils::serialize@{serif::utils::serialize}!term\_schema@{term\_schema}}
|
|
\index{term\_schema@{term\_schema}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{term\_schema()}{term\_schema()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a2467d2dec6186bb040f634a1320c279a}
|
|
template$<$typename Term$>$ \\
|
|
\mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} serif\+::utils\+::serialize\+::term\+\_\+schema (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Expose the physical meaning and FE representation of one compiled coordinate.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_ab00ec68c8966b7783b811342ba3202a5}\index{serif::utils::serialize@{serif::utils::serialize}!validate\_schema@{validate\_schema}}
|
|
\index{validate\_schema@{validate\_schema}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{validate\_schema()}{validate\_schema()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_ab00ec68c8966b7783b811342ba3202a5}
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ void $>$ serif\+::utils\+::serialize\+::validate\+\_\+schema (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&}]{saved}{, }\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_node}{Node}} \&}]{expected}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
A compiled identity must match and must have an explicit persistence registration.
|
|
|
|
\Hypertarget{namespaceserif_1_1utils_1_1serialize_a53de7b4a0d01bed188ef53fbeb4c3e7e}\index{serif::utils::serialize@{serif::utils::serialize}!write@{write}}
|
|
\index{write@{write}!serif::utils::serialize@{serif::utils::serialize}}
|
|
\doxysubsubsection{\texorpdfstring{write()}{write()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1utils_1_1serialize_a53de7b4a0d01bed188ef53fbeb4c3e7e}
|
|
\mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ void $>$ serif\+::utils\+::serialize\+::write (\begin{DoxyParamCaption}\item[{const std\+::filesystem\+::path \&}]{path}{, }\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_pack}{Pack}} \&}]{contents}{, }\item[{const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_write_options}{Write\+Options}} \&}]{options}{ = {\ttfamily \{\}}}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Write a complete temporary file and atomically replace the destination only after it closes successfully.
|
|
|