\doxysection{src/lib/serif/utils/serialize/format.cpp File Reference} \hypertarget{format_8cpp}{}\label{format_8cpp}\index{src/lib/serif/utils/serialize/format.cpp@{src/lib/serif/utils/serialize/format.cpp}} {\ttfamily \#include "{}format.\+hpp"{}}\newline {\ttfamily \#include $<$bit$>$}\newline {\ttfamily \#include $<$charconv$>$}\newline {\ttfamily \#include $<$cmath$>$}\newline {\ttfamily \#include $<$iomanip$>$}\newline {\ttfamily \#include $<$limits$>$}\newline {\ttfamily \#include $<$locale$>$}\newline {\ttfamily \#include $<$sstream$>$}\newline {\ttfamily \#include $<$type\+\_\+traits$>$}\newline Include dependency graph for format.\+cpp\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{format_8cpp__incl} \end{center} \end{figure} \doxysubsubsection*{Namespaces} \begin{DoxyCompactItemize} \item namespace \mbox{\hyperlink{namespaceserif}{serif}} \item namespace \mbox{\hyperlink{namespaceserif_1_1utils}{serif\+::utils}} \item namespace \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize}{serif\+::utils\+::serialize}} \item namespace \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_1_1detail}{serif\+::utils\+::serialize\+::detail}} \end{DoxyCompactItemize} \doxysubsubsection*{Functions} \begin{DoxyCompactItemize} \item std\+::string \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ad1fa896c36b9c32ff4b8bdb8660cba33}{serif\+::utils\+::serialize\+::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 std\+::uint64\+\_\+t \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_1_1detail_a6b8ecbf6a1b1680d881241875b43488e}{serif\+::utils\+::serialize\+::detail\+::value\+\_\+count}} (const \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{Value}} \&value) \begin{DoxyCompactList}\small\item\em Scalar types have one value; numerical arrays and strings carry their explicit extent. \end{DoxyCompactList}\item std\+::string \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_1_1detail_af621eb0ecffdecef1a018de7d74b3ce7}{serif\+::utils\+::serialize\+::detail\+::encode\+\_\+value}} (const \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{Value}} \&value, \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99}{Format}} format) \begin{DoxyCompactList}\small\item\em Encode one indexed payload without relying on native object layout or byte order. \end{DoxyCompactList}\item \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_ace9e0af29889a767ef1c95a09a4b7265}{Result}}$<$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_a76d9829ffc510737a78d63b06f115861}{Value}} $>$ \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_1_1detail_a0febbf9af0cb2b22a8fc8de9453ca775}{serif\+::utils\+::serialize\+::detail\+::decode\+\_\+value}} (std\+::string\+\_\+view bytes, const \mbox{\hyperlink{structserif_1_1utils_1_1serialize_1_1_entry}{Entry}} \&entry, \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_af59ceea5df9600e1e8c0e762e6b08c99}{Format}} format) \begin{DoxyCompactList}\small\item\em Validate the extent and representation of an independently read payload. \end{DoxyCompactList}\item bool \mbox{\hyperlink{namespaceserif_1_1utils_1_1serialize_1_1detail_a381f0c148d12660ac214e622efde1294}{serif\+::utils\+::serialize\+::detail\+::valid\+\_\+path}} (std\+::string\+\_\+view path) \begin{DoxyCompactList}\small\item\em Restrict field names so path separators and line breaks cannot corrupt the ledger. \end{DoxyCompactList}\end{DoxyCompactItemize}