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)
132 lines
4.7 KiB
Groff
132 lines
4.7 KiB
Groff
.TH "serif::utils::serialize::Reader" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*-
|
|
.ad l
|
|
.nh
|
|
.SH NAME
|
|
serif::utils::serialize::Reader \- Inspect the ledger first, then seek directly to whichever components are actually needed\&.
|
|
|
|
.SH SYNOPSIS
|
|
.br
|
|
.PP
|
|
.PP
|
|
\fR#include <archive\&.hpp>\fP
|
|
.SS "Public Member Functions"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "const std::vector< \fBEntry\fP > & \fBledger\fP () const noexcept"
|
|
.br
|
|
.RI "Inspect all available components, including unsupported or incomplete descriptions\&. "
|
|
.ti -1c
|
|
.RI "const std::string & \fBserif_version\fP () const noexcept"
|
|
.br
|
|
.RI "Read the SERiF version reported by the writer\&. "
|
|
.ti -1c
|
|
.RI "\fBFormat\fP \fBformat\fP () const noexcept"
|
|
.br
|
|
.RI "Inspect the on-disk numeric encoding\&. "
|
|
.ti -1c
|
|
.RI "bool \fBcontains\fP (std::string_view path) const"
|
|
.br
|
|
.RI "Check whether a named component or field is present without decoding it\&. "
|
|
.ti -1c
|
|
.RI "\fBResult\fP< \fBNode\fP > \fBnode\fP (std::string_view path) const"
|
|
.br
|
|
.RI "Read a subtree, verifying each selected payload before returning owned data\&. "
|
|
.ti -1c
|
|
.RI "\fBResult\fP< \fBNode\fP > \fBmetadata\fP () const"
|
|
.br
|
|
.RI "Read timestamp, host information, library versions, and user annotations\&. "
|
|
.ti -1c
|
|
.RI "template<typename T> \fBResult\fP< T > \fBread\fP (std::string_view path={}) const"
|
|
.br
|
|
.RI "Decode a component using its registered default name, or an explicit archive path\&. "
|
|
.ti -1c
|
|
.RI "\fBResult\fP< void > \fBvalidate\fP () const"
|
|
.br
|
|
.RI "Check every payload, useful before transferring responsibility for an archive to another researcher\&. "
|
|
.in -1c
|
|
.SS "Static Public Member Functions"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "static \fBResult\fP< \fBReader\fP > \fBopen\fP (const std::filesystem::path &path, \fBReadOptions\fP options={})"
|
|
.br
|
|
.RI "Validate the header, compatibility policy, and index without reading coefficient payloads\&. "
|
|
.in -1c
|
|
.SS "Private Attributes"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "std::ifstream \fBm_file\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "std::vector< \fBEntry\fP > \fBm_entries\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "std::string \fBm_version\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "\fBFormat\fP \fBm_format\fP {\fBFormat::binary\fP}"
|
|
.br
|
|
.ti -1c
|
|
.RI "\fBReadOptions\fP \fBm_options\fP"
|
|
.br
|
|
.in -1c
|
|
.SH "Detailed Description"
|
|
.PP
|
|
Inspect the ledger first, then seek directly to whichever components are actually needed\&.
|
|
.SH "Member Function Documentation"
|
|
.PP
|
|
.SS "bool serif::utils::serialize::Reader::contains (std::string_view path) const\fR [nodiscard]\fP"
|
|
|
|
.PP
|
|
Check whether a named component or field is present without decoding it\&.
|
|
.SS "\fBFormat\fP serif::utils::serialize::Reader::format () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
|
|
|
|
.PP
|
|
Inspect the on-disk numeric encoding\&.
|
|
.SS "const std::vector< \fBEntry\fP > & serif::utils::serialize::Reader::ledger () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
|
|
|
|
.PP
|
|
Inspect all available components, including unsupported or incomplete descriptions\&.
|
|
.SS "\fBResult\fP< \fBNode\fP > serif::utils::serialize::Reader::metadata () const\fR [inline]\fP, \fR [nodiscard]\fP"
|
|
|
|
.PP
|
|
Read timestamp, host information, library versions, and user annotations\&.
|
|
.SS "\fBResult\fP< \fBNode\fP > serif::utils::serialize::Reader::node (std::string_view path) const\fR [nodiscard]\fP"
|
|
|
|
.PP
|
|
Read a subtree, verifying each selected payload before returning owned data\&.
|
|
.SS "\fBResult\fP< \fBReader\fP > serif::utils::serialize::Reader::open (const std::filesystem::path & path, \fBReadOptions\fP options = \fR{}\fP)\fR [static]\fP, \fR [nodiscard]\fP"
|
|
|
|
.PP
|
|
Validate the header, compatibility policy, and index without reading coefficient payloads\&.
|
|
.SS "template<typename T> \fBResult\fP< T > serif::utils::serialize::Reader::read (std::string_view path = \fR{}\fP) const\fR [inline]\fP, \fR [nodiscard]\fP"
|
|
|
|
.PP
|
|
Decode a component using its registered default name, or an explicit archive path\&.
|
|
.SS "const std::string & serif::utils::serialize::Reader::serif_version () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
|
|
|
|
.PP
|
|
Read the SERiF version reported by the writer\&.
|
|
.SS "\fBResult\fP< void > serif::utils::serialize::Reader::validate () const\fR [nodiscard]\fP"
|
|
|
|
.PP
|
|
Check every payload, useful before transferring responsibility for an archive to another researcher\&.
|
|
.SH "Member Data Documentation"
|
|
.PP
|
|
.SS "std::vector<\fBEntry\fP> serif::utils::serialize::Reader::m_entries\fR [private]\fP"
|
|
|
|
.SS "std::ifstream serif::utils::serialize::Reader::m_file\fR [mutable]\fP, \fR [private]\fP"
|
|
|
|
.SS "\fBFormat\fP serif::utils::serialize::Reader::m_format {\fBFormat::binary\fP}\fR [private]\fP"
|
|
|
|
.SS "\fBReadOptions\fP serif::utils::serialize::Reader::m_options\fR [private]\fP"
|
|
|
|
.SS "std::string serif::utils::serialize::Reader::m_version\fR [private]\fP"
|
|
|
|
|
|
.SH "Author"
|
|
.PP
|
|
Generated automatically by Doxygen for SERiF from the source code\&.
|