\hypertarget{classXrlAtom}{
\section{XrlAtom Class Reference}
\label{classXrlAtom}\index{XrlAtom@{XrlAtom}}
}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structXrlAtom_1_1BadName}{BadName}
\item 
struct \hyperlink{structXrlAtom_1_1NoData}{NoData}
\item 
struct \hyperlink{structXrlAtom_1_1WrongType}{WrongType}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlAtom_ab11086b15c9f4e957c98980bfaadf1cd}{
{\bfseries XrlAtom} (XrlAtomType t)}
\label{classXrlAtom_ab11086b15c9f4e957c98980bfaadf1cd}

\item 
\hypertarget{classXrlAtom_a8922b6190018bf39450d3bd612a98932}{
{\bfseries XrlAtom} (const string \&name, XrlAtomType t)  throw (BadName)}
\label{classXrlAtom_a8922b6190018bf39450d3bd612a98932}

\item 
\hypertarget{classXrlAtom_a5decd0cabe99607ac329544e905b3db8}{
{\bfseries XrlAtom} (const char $\ast$name, XrlAtomType t)  throw (BadName)}
\label{classXrlAtom_a5decd0cabe99607ac329544e905b3db8}

\item 
\hypertarget{classXrlAtom_a49c4167b9ddd4d876086ce1a5ff0762c}{
{\bfseries XrlAtom} (const string \&name, XrlAtomType t, const string \&serialized\_\-data)  throw (InvalidString)}
\label{classXrlAtom_a49c4167b9ddd4d876086ce1a5ff0762c}

\item 
\hypertarget{classXrlAtom_aad493d1adbe89d63d657fed51af73f08}{
{\bfseries XrlAtom} (const char $\ast$name, XrlAtomType t, const string \&serialized\_\-data)  throw (InvalidString)}
\label{classXrlAtom_aad493d1adbe89d63d657fed51af73f08}

\item 
\hyperlink{classXrlAtom_a7203ba235ca4fee03f0d463afc75618d}{XrlAtom} (const char $\ast$)  throw (InvalidString, BadName)
\begin{DoxyCompactList}\small\item\em Construct an \hyperlink{classXrlAtom}{XrlAtom} from it's serialized character representation. \item\end{DoxyCompactList}\item 
\hypertarget{classXrlAtom_a9c389f42c61a0759b73c754954f57bf9}{
{\bfseries XrlAtom} (const int32\_\-t \&value)}
\label{classXrlAtom_a9c389f42c61a0759b73c754954f57bf9}

\item 
\hypertarget{classXrlAtom_acc047c79e8321630419bcf2d088f5cf5}{
{\bfseries XrlAtom} (const char $\ast$name, int32\_\-t value)  throw (BadName)}
\label{classXrlAtom_acc047c79e8321630419bcf2d088f5cf5}

\item 
\hypertarget{classXrlAtom_ac9da8cbbc3d8b9127b07b94019012961}{
{\bfseries XrlAtom} (const bool \&value)}
\label{classXrlAtom_ac9da8cbbc3d8b9127b07b94019012961}

\item 
\hypertarget{classXrlAtom_afc84fcd3dc60ecbc2a1eb291df82f0c0}{
{\bfseries XrlAtom} (const char $\ast$name, bool value)  throw (BadName)}
\label{classXrlAtom_afc84fcd3dc60ecbc2a1eb291df82f0c0}

\item 
\hypertarget{classXrlAtom_a9f5af25f52c44be7cbfe80254d468180}{
{\bfseries XrlAtom} (const uint32\_\-t \&value)}
\label{classXrlAtom_a9f5af25f52c44be7cbfe80254d468180}

\item 
\hypertarget{classXrlAtom_ab85579316100cf0b65c891c3ac347a2a}{
{\bfseries XrlAtom} (const char $\ast$name, uint32\_\-t value)  throw (BadName)}
\label{classXrlAtom_ab85579316100cf0b65c891c3ac347a2a}

\item 
\hypertarget{classXrlAtom_aea18407b38a81ed2b458a13fd0fb9e46}{
{\bfseries XrlAtom} (const \hyperlink{classIPv4}{IPv4} \&addr)}
\label{classXrlAtom_aea18407b38a81ed2b458a13fd0fb9e46}

\item 
\hypertarget{classXrlAtom_aac4b82b60ee0e71779cac107547b6453}{
{\bfseries XrlAtom} (const char $\ast$name, const \hyperlink{classIPv4}{IPv4} \&addr)  throw (BadName)}
\label{classXrlAtom_aac4b82b60ee0e71779cac107547b6453}

\item 
\hypertarget{classXrlAtom_a1463093b7fe7ed0dad8c7915dc773d7d}{
{\bfseries XrlAtom} (const \hyperlink{classIPNet}{IPv4Net} \&subnet)}
\label{classXrlAtom_a1463093b7fe7ed0dad8c7915dc773d7d}

\item 
\hypertarget{classXrlAtom_ac2e70a8d7b6ab8ffa9c1e23af838d85b}{
{\bfseries XrlAtom} (const char $\ast$name, const \hyperlink{classIPNet}{IPv4Net} \&subnet)  throw (BadName)}
\label{classXrlAtom_ac2e70a8d7b6ab8ffa9c1e23af838d85b}

\item 
\hypertarget{classXrlAtom_a6c965f3e7c3df1beb54b8207d78aa765}{
{\bfseries XrlAtom} (const \hyperlink{classIPv6}{IPv6} \&addr)}
\label{classXrlAtom_a6c965f3e7c3df1beb54b8207d78aa765}

\item 
\hypertarget{classXrlAtom_a002ed5f2c117c98c312e8e6cab502a49}{
{\bfseries XrlAtom} (const char $\ast$name, const \hyperlink{classIPv6}{IPv6} \&addr)  throw (BadName)}
\label{classXrlAtom_a002ed5f2c117c98c312e8e6cab502a49}

\item 
\hypertarget{classXrlAtom_a51fa4b2cc477d5bacfe004c53c5c60fc}{
{\bfseries XrlAtom} (const \hyperlink{classIPNet}{IPv6Net} \&subnet)}
\label{classXrlAtom_a51fa4b2cc477d5bacfe004c53c5c60fc}

\item 
\hypertarget{classXrlAtom_a678943cd1b369ee2063fc492143946f9}{
{\bfseries XrlAtom} (const char $\ast$name, const \hyperlink{classIPNet}{IPv6Net} \&subnet)  throw (BadName)}
\label{classXrlAtom_a678943cd1b369ee2063fc492143946f9}

\item 
\hypertarget{classXrlAtom_a682faa700df6e8d8232b546faba0ed32}{
{\bfseries XrlAtom} (const char $\ast$name, const \hyperlink{classIPvX}{IPvX} \&ipvx)  throw (BadName)}
\label{classXrlAtom_a682faa700df6e8d8232b546faba0ed32}

\item 
\hypertarget{classXrlAtom_aa4aeecbfb019343ac3fdeb896252aedd}{
{\bfseries XrlAtom} (const char $\ast$name, const \hyperlink{classIPvXNet}{IPvXNet} \&ipvxnet)  throw (BadName)}
\label{classXrlAtom_aa4aeecbfb019343ac3fdeb896252aedd}

\item 
\hypertarget{classXrlAtom_a58bebaf515b2361d4067fb2397c26198}{
{\bfseries XrlAtom} (const \hyperlink{classMac}{Mac} \&mac)}
\label{classXrlAtom_a58bebaf515b2361d4067fb2397c26198}

\item 
\hypertarget{classXrlAtom_a40beb3724ecc8b0c27bccd82eefbe0cd}{
{\bfseries XrlAtom} (const char $\ast$name, const \hyperlink{classMac}{Mac} \&mac)  throw (BadName)}
\label{classXrlAtom_a40beb3724ecc8b0c27bccd82eefbe0cd}

\item 
\hypertarget{classXrlAtom_aba87ae15bcec42f7032200cf5653fc66}{
{\bfseries XrlAtom} (const string \&txt)}
\label{classXrlAtom_aba87ae15bcec42f7032200cf5653fc66}

\item 
\hypertarget{classXrlAtom_a14f1957ec48cef56012276c1860ce9bc}{
{\bfseries XrlAtom} (const char $\ast$name, const string \&txt)  throw (BadName)}
\label{classXrlAtom_a14f1957ec48cef56012276c1860ce9bc}

\item 
\hypertarget{classXrlAtom_a88920287c0432704b49eb7b1fe80c749}{
{\bfseries XrlAtom} (const \hyperlink{classXrlAtomList}{XrlAtomList} \&l)}
\label{classXrlAtom_a88920287c0432704b49eb7b1fe80c749}

\item 
\hypertarget{classXrlAtom_a921c81aa73c329788fc7eb08f4f93c68}{
{\bfseries XrlAtom} (const char $\ast$name, const \hyperlink{classXrlAtomList}{XrlAtomList} \&l)  throw (BadName)}
\label{classXrlAtom_a921c81aa73c329788fc7eb08f4f93c68}

\item 
\hypertarget{classXrlAtom_a4ee3de1f879d9f67ea8dd0b5bd34e5f7}{
{\bfseries XrlAtom} (const char $\ast$name, const vector$<$ uint8\_\-t $>$ \&data)}
\label{classXrlAtom_a4ee3de1f879d9f67ea8dd0b5bd34e5f7}

\item 
\hypertarget{classXrlAtom_aba4efcee55ac3e7635b70838e18089a5}{
{\bfseries XrlAtom} (const char $\ast$name, const uint8\_\-t $\ast$data, size\_\-t data\_\-bytes)}
\label{classXrlAtom_aba4efcee55ac3e7635b70838e18089a5}

\item 
\hypertarget{classXrlAtom_a8ea208aaa3a92cde04d38e4ae05a9e5f}{
{\bfseries XrlAtom} (const vector$<$ uint8\_\-t $>$ \&data)}
\label{classXrlAtom_a8ea208aaa3a92cde04d38e4ae05a9e5f}

\item 
\hypertarget{classXrlAtom_aa675f5bf6c3d5714478423c1feb871cc}{
{\bfseries XrlAtom} (const uint8\_\-t $\ast$data, size\_\-t data\_\-bytes)}
\label{classXrlAtom_aa675f5bf6c3d5714478423c1feb871cc}

\item 
\hypertarget{classXrlAtom_af9efb4c32ebc3a5872fbd91cdadfc3af}{
{\bfseries XrlAtom} (const int64\_\-t \&value)}
\label{classXrlAtom_af9efb4c32ebc3a5872fbd91cdadfc3af}

\item 
\hypertarget{classXrlAtom_a72d7290adff677f9f0c7a9d3cd09cf24}{
{\bfseries XrlAtom} (const char $\ast$name, int64\_\-t value)  throw (BadName)}
\label{classXrlAtom_a72d7290adff677f9f0c7a9d3cd09cf24}

\item 
\hypertarget{classXrlAtom_a9725145978241c8a3f0f57413faed6f9}{
{\bfseries XrlAtom} (const uint64\_\-t \&value)}
\label{classXrlAtom_a9725145978241c8a3f0f57413faed6f9}

\item 
\hypertarget{classXrlAtom_ad26a9e2888649432484bfa4d42053a95}{
{\bfseries XrlAtom} (const char $\ast$name, uint64\_\-t value)  throw (BadName)}
\label{classXrlAtom_ad26a9e2888649432484bfa4d42053a95}

\item 
\hypertarget{classXrlAtom_a30fb4dbcd3a51529f6e6971c8bef3bf4}{
{\bfseries XrlAtom} (const fp64\_\-t \&value)}
\label{classXrlAtom_a30fb4dbcd3a51529f6e6971c8bef3bf4}

\item 
\hypertarget{classXrlAtom_ae973ef687a4d9c4bd9f8e585359d4494}{
{\bfseries XrlAtom} (const char $\ast$name, fp64\_\-t value)  throw (BadName)}
\label{classXrlAtom_ae973ef687a4d9c4bd9f8e585359d4494}

\item 
\hypertarget{classXrlAtom_a20a9bf93e1f09ee48d061038e7d7bc2e}{
{\bfseries XrlAtom} (const \hyperlink{classXrlAtom}{XrlAtom} \&x)}
\label{classXrlAtom_a20a9bf93e1f09ee48d061038e7d7bc2e}

\item 
\hypertarget{classXrlAtom_aa3cf08163745134fb2ea4701fbfad8f8}{
\hyperlink{classXrlAtom}{XrlAtom} \& {\bfseries operator=} (const \hyperlink{classXrlAtom}{XrlAtom} \&x)}
\label{classXrlAtom_aa3cf08163745134fb2ea4701fbfad8f8}

\item 
\hypertarget{classXrlAtom_a8b9807823962fabd2b290385b3c1395b}{
void {\bfseries copy} (const \hyperlink{classXrlAtom}{XrlAtom} \&x)}
\label{classXrlAtom_a8b9807823962fabd2b290385b3c1395b}

\item 
\hypertarget{classXrlAtom_a56c60f2a095c8cfdc2f990d1711e0012}{
const string \& {\bfseries name} () const }
\label{classXrlAtom_a56c60f2a095c8cfdc2f990d1711e0012}

\item 
\hypertarget{classXrlAtom_a63f3e42c79172427b02976a6a180c90c}{
void {\bfseries set\_\-name} (const string \&n)  throw (BadName)}
\label{classXrlAtom_a63f3e42c79172427b02976a6a180c90c}

\item 
\hypertarget{classXrlAtom_a6b5f3848941667c5088ec922e495ab29}{
string {\bfseries str} () const }
\label{classXrlAtom_a6b5f3848941667c5088ec922e495ab29}

\item 
\hypertarget{classXrlAtom_aa7802566604cf0b25caac87e8c58d27b}{
const char $\ast$ {\bfseries type\_\-name} () const }
\label{classXrlAtom_aa7802566604cf0b25caac87e8c58d27b}

\item 
\hypertarget{classXrlAtom_a631f8e77e69a179a365bc325140457a8}{
const string {\bfseries value} () const }
\label{classXrlAtom_a631f8e77e69a179a365bc325140457a8}

\item 
\hypertarget{classXrlAtom_a0898192bef3e2d7d0f1c487cb1ab34db}{
const bool \& {\bfseries has\_\-data} () const }
\label{classXrlAtom_a0898192bef3e2d7d0f1c487cb1ab34db}

\item 
\hypertarget{classXrlAtom_a3b975c0f02e27f45a09ae4a57cca5d2b}{
const XrlAtomType \& {\bfseries type} () const }
\label{classXrlAtom_a3b975c0f02e27f45a09ae4a57cca5d2b}

\item 
\hypertarget{classXrlAtom_aa1f9272537406bc9758955f29114dd07}{
const bool \& {\bfseries boolean} () const   throw (NoData, WrongType)}
\label{classXrlAtom_aa1f9272537406bc9758955f29114dd07}

\item 
\hypertarget{classXrlAtom_add5e22d8e6097a7a0b204829e1deb6f8}{
const int32\_\-t \& {\bfseries int32} () const   throw (NoData, WrongType)}
\label{classXrlAtom_add5e22d8e6097a7a0b204829e1deb6f8}

\item 
\hypertarget{classXrlAtom_a0f8f4a417c8c7e42e2b7069108165306}{
const uint32\_\-t \& {\bfseries uint32} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a0f8f4a417c8c7e42e2b7069108165306}

\item 
\hypertarget{classXrlAtom_ad96d681b3d3bae2330db14ef777c128f}{
const \hyperlink{classIPv4}{IPv4} \& {\bfseries ipv4} () const   throw (NoData, WrongType)}
\label{classXrlAtom_ad96d681b3d3bae2330db14ef777c128f}

\item 
\hypertarget{classXrlAtom_a7368448c3195af9335cc3b6107646d00}{
const \hyperlink{classIPNet}{IPv4Net} \& {\bfseries ipv4net} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a7368448c3195af9335cc3b6107646d00}

\item 
\hypertarget{classXrlAtom_a64311b5733a755bd402d33410828a490}{
const \hyperlink{classIPv6}{IPv6} \& {\bfseries ipv6} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a64311b5733a755bd402d33410828a490}

\item 
\hypertarget{classXrlAtom_a0c5fe7c488375348d5fad33e6364c25c}{
const \hyperlink{classIPNet}{IPv6Net} \& {\bfseries ipv6net} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a0c5fe7c488375348d5fad33e6364c25c}

\item 
\hypertarget{classXrlAtom_a6f302b60befbd13c2fc75c331b304d63}{
const \hyperlink{classIPvX}{IPvX} {\bfseries ipvx} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a6f302b60befbd13c2fc75c331b304d63}

\item 
\hypertarget{classXrlAtom_a49632b0adc0bf17ea3a4311e0f370202}{
const \hyperlink{classIPvXNet}{IPvXNet} {\bfseries ipvxnet} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a49632b0adc0bf17ea3a4311e0f370202}

\item 
\hypertarget{classXrlAtom_a99602a6f8563412fef5b4b261577ba4e}{
const \hyperlink{classMac}{Mac} \& {\bfseries mac} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a99602a6f8563412fef5b4b261577ba4e}

\item 
\hypertarget{classXrlAtom_a6a16f59db6f75b420a7630bd849e21d7}{
const string \& {\bfseries text} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a6a16f59db6f75b420a7630bd849e21d7}

\item 
\hypertarget{classXrlAtom_a582530a70f8d060db02f8e664947eb74}{
const \hyperlink{classXrlAtomList}{XrlAtomList} \& {\bfseries list} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a582530a70f8d060db02f8e664947eb74}

\item 
\hypertarget{classXrlAtom_a0efff83912f82e372ed80fbb42a37449}{
const vector$<$ uint8\_\-t $>$ \& {\bfseries binary} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a0efff83912f82e372ed80fbb42a37449}

\item 
\hypertarget{classXrlAtom_a9ac4ac009e7f48b20234e8ac26d0fcf6}{
const int64\_\-t \& {\bfseries int64} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a9ac4ac009e7f48b20234e8ac26d0fcf6}

\item 
\hypertarget{classXrlAtom_a811f23149ce3e512331d36d6c86a1a92}{
const uint64\_\-t \& {\bfseries uint64} () const   throw (NoData, WrongType)}
\label{classXrlAtom_a811f23149ce3e512331d36d6c86a1a92}

\item 
\hypertarget{classXrlAtom_affeafc529309eeb92293ee539a9179a0}{
const fp64\_\-t \& {\bfseries fp64} () const   throw (NoData, WrongType)}
\label{classXrlAtom_affeafc529309eeb92293ee539a9179a0}

\item 
\hypertarget{classXrlAtom_a7aafd22e682e620f72a68dfd77eddf4c}{
{\bfseries SET} (vector$<$ uint8\_\-t $>$, \_\-binary,\&)}
\label{classXrlAtom_a7aafd22e682e620f72a68dfd77eddf4c}

\item 
\hypertarget{classXrlAtom_a2f355fc2fd089461649c6ab802c71c63}{
void {\bfseries set} (const \hyperlink{classIPv4}{IPv4} \&v)}
\label{classXrlAtom_a2f355fc2fd089461649c6ab802c71c63}

\item 
\hypertarget{classXrlAtom_a7fa71fabffb2711be16e2a7ccb37bc0c}{
void {\bfseries set} (const \hyperlink{classIPNet}{IPv4Net} \&v)}
\label{classXrlAtom_a7fa71fabffb2711be16e2a7ccb37bc0c}

\item 
\hypertarget{classXrlAtom_a1a268a7c5e760f952629dca3f8b5af85}{
bool {\bfseries operator==} (const \hyperlink{classXrlAtom}{XrlAtom} \&x) const }
\label{classXrlAtom_a1a268a7c5e760f952629dca3f8b5af85}

\item 
bool \hyperlink{classXrlAtom_ae715ec386c71158680e936286c04e429}{packed\_\-bytes\_\-fixed} () const 
\item 
\hypertarget{classXrlAtom_ab4f3e25ab8af76b4cf9eb65da89964a2}{
size\_\-t {\bfseries packed\_\-bytes} () const }
\label{classXrlAtom_ab4f3e25ab8af76b4cf9eb65da89964a2}

\item 
\hypertarget{classXrlAtom_aee56455c03dd827fa136440a753e60d6}{
size\_\-t {\bfseries pack} (uint8\_\-t $\ast$buffer, size\_\-t bytes\_\-available) const }
\label{classXrlAtom_aee56455c03dd827fa136440a753e60d6}

\item 
\hypertarget{classXrlAtom_a0d4812b4fecd1adc8826108e7d97eae2}{
size\_\-t {\bfseries unpack} (const uint8\_\-t $\ast$buffer, size\_\-t buffer\_\-bytes)}
\label{classXrlAtom_a0d4812b4fecd1adc8826108e7d97eae2}

\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlAtom_a680d1d4a798101fab93fcb38b5c97b02}{
static bool {\bfseries valid\_\-type} (const string \&s)}
\label{classXrlAtom_a680d1d4a798101fab93fcb38b5c97b02}

\item 
\hypertarget{classXrlAtom_a6474f04714b4a8db12b68477a60fa0d9}{
static bool {\bfseries valid\_\-name} (const string \&s)}
\label{classXrlAtom_a6474f04714b4a8db12b68477a60fa0d9}

\item 
\hypertarget{classXrlAtom_a07566a89f3ace1e76b7707ac9e03d085}{
static XrlAtomType {\bfseries lookup\_\-type} (const string \&s)}
\label{classXrlAtom_a07566a89f3ace1e76b7707ac9e03d085}

\item 
\hypertarget{classXrlAtom_a8efdf3e7f13d524308bcc7c5cfbb1da1}{
static size\_\-t {\bfseries peek\_\-text} (const char $\ast$\&t, uint32\_\-t \&tl, const uint8\_\-t $\ast$buf, size\_\-t len)}
\label{classXrlAtom_a8efdf3e7f13d524308bcc7c5cfbb1da1}

\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlAtom_a9e7af6762dd095a24ee5b80c7fe7e0cb}{
void {\bfseries discard\_\-dynamic} ()}
\label{classXrlAtom_a9e7af6762dd095a24ee5b80c7fe7e0cb}

\item 
\hypertarget{classXrlAtom_a60490b9c04bb62c21aa59ae637187469}{
void {\bfseries abandon\_\-data} ()}
\label{classXrlAtom_a60490b9c04bb62c21aa59ae637187469}

\item 
\hypertarget{classXrlAtom_a1d421d8520cca2d71e34312834405a26}{
void {\bfseries type\_\-and\_\-data\_\-okay} (const XrlAtomType \&t) const   throw (NoData, WrongType)}
\label{classXrlAtom_a1d421d8520cca2d71e34312834405a26}

\item 
\hypertarget{classXrlAtom_a0dd0725a7a5ea2e005eb492912ddb9ce}{
void {\bfseries set\_\-name} (const char $\ast$n)  throw (BadName)}
\label{classXrlAtom_a0dd0725a7a5ea2e005eb492912ddb9ce}

\item 
\hypertarget{classXrlAtom_ab8366880d375601bb56a1353f0077d7d}{
ssize\_\-t {\bfseries data\_\-from\_\-c\_\-str} (const char $\ast$c\_\-str)}
\label{classXrlAtom_ab8366880d375601bb56a1353f0077d7d}

\item 
\hypertarget{classXrlAtom_a92bcc8eeaf951d937c4acc6de3a9d61c}{
size\_\-t {\bfseries pack\_\-name} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a92bcc8eeaf951d937c4acc6de3a9d61c}

\item 
\hypertarget{classXrlAtom_a2a0e062fadc5be873757838b1e4fca6b}{
size\_\-t {\bfseries pack\_\-boolean} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a2a0e062fadc5be873757838b1e4fca6b}

\item 
\hypertarget{classXrlAtom_abf305209c70d6c00dba46448c32c41d6}{
size\_\-t {\bfseries pack\_\-uint32} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_abf305209c70d6c00dba46448c32c41d6}

\item 
\hypertarget{classXrlAtom_a225d624ce1e965f6625a82e8ad21d01b}{
size\_\-t {\bfseries pack\_\-ipv4} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a225d624ce1e965f6625a82e8ad21d01b}

\item 
\hypertarget{classXrlAtom_a8f31ba4c08ed87e38b366078a440a21f}{
size\_\-t {\bfseries pack\_\-ipv4net} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a8f31ba4c08ed87e38b366078a440a21f}

\item 
\hypertarget{classXrlAtom_a5c90add668cb21ee5d5ba2755a37c7a5}{
size\_\-t {\bfseries pack\_\-ipv6} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a5c90add668cb21ee5d5ba2755a37c7a5}

\item 
\hypertarget{classXrlAtom_a6887806f476cf0f76f5cede42ffd8bbe}{
size\_\-t {\bfseries pack\_\-ipv6net} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a6887806f476cf0f76f5cede42ffd8bbe}

\item 
\hypertarget{classXrlAtom_a72e57425d0400589a854f886913acfae}{
size\_\-t {\bfseries pack\_\-mac} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a72e57425d0400589a854f886913acfae}

\item 
\hypertarget{classXrlAtom_aa82939174f77fb2af6191e9b58a5f835}{
size\_\-t {\bfseries pack\_\-text} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_aa82939174f77fb2af6191e9b58a5f835}

\item 
\hypertarget{classXrlAtom_a141725a95160bf6f3e5b0ba8a5d0ade5}{
size\_\-t {\bfseries pack\_\-list} (uint8\_\-t $\ast$buffer, size\_\-t buffer\_\-bytes) const }
\label{classXrlAtom_a141725a95160bf6f3e5b0ba8a5d0ade5}

\item 
\hypertarget{classXrlAtom_a180a69399e016bd6b3b840f6b92a7089}{
size\_\-t {\bfseries pack\_\-binary} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a180a69399e016bd6b3b840f6b92a7089}

\item 
\hypertarget{classXrlAtom_a1271e742f9398801d07a695f3889eaa5}{
size\_\-t {\bfseries pack\_\-uint64} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_a1271e742f9398801d07a695f3889eaa5}

\item 
\hypertarget{classXrlAtom_ac2e4090baab77cc78f532622f9b9b630}{
size\_\-t {\bfseries pack\_\-fp64} (uint8\_\-t $\ast$buffer) const }
\label{classXrlAtom_ac2e4090baab77cc78f532622f9b9b630}

\item 
\hypertarget{classXrlAtom_a88ce69f96d86957a79dd604f0c9ecc47}{
size\_\-t {\bfseries unpack\_\-name} (const uint8\_\-t $\ast$buffer, size\_\-t buffer\_\-bytes)  throw (BadName)}
\label{classXrlAtom_a88ce69f96d86957a79dd604f0c9ecc47}

\item 
\hypertarget{classXrlAtom_a25ad14afd85a04fce35364f0d8a41d0e}{
size\_\-t {\bfseries unpack\_\-boolean} (const uint8\_\-t $\ast$buffer)}
\label{classXrlAtom_a25ad14afd85a04fce35364f0d8a41d0e}

\item 
\hypertarget{classXrlAtom_aef61005d110f4089b8d0d6046e856029}{
size\_\-t {\bfseries unpack\_\-uint32} (const uint8\_\-t $\ast$buffer)}
\label{classXrlAtom_aef61005d110f4089b8d0d6046e856029}

\item 
\hypertarget{classXrlAtom_ad03c18470ed112bbdac1d23be948b19e}{
size\_\-t {\bfseries unpack\_\-ipv4} (const uint8\_\-t $\ast$buffer)}
\label{classXrlAtom_ad03c18470ed112bbdac1d23be948b19e}

\item 
\hypertarget{classXrlAtom_a00c02d2063e4bc84595f51549a056dc0}{
size\_\-t {\bfseries unpack\_\-ipv4net} (const uint8\_\-t $\ast$buffer)}
\label{classXrlAtom_a00c02d2063e4bc84595f51549a056dc0}

\item 
\hypertarget{classXrlAtom_a09fc0d59038326b75a64cb049f9916a5}{
size\_\-t {\bfseries unpack\_\-ipv6} (const uint8\_\-t $\ast$buffer)}
\label{classXrlAtom_a09fc0d59038326b75a64cb049f9916a5}

\item 
\hypertarget{classXrlAtom_a66901c7bb150145c45de5692f3f3fc5b}{
size\_\-t {\bfseries unpack\_\-ipv6net} (const uint8\_\-t $\ast$buffer)}
\label{classXrlAtom_a66901c7bb150145c45de5692f3f3fc5b}

\item 
\hypertarget{classXrlAtom_a0feecf2c703c7e45deb143407b12b06f}{
size\_\-t {\bfseries unpack\_\-mac} (const uint8\_\-t $\ast$buffer, size\_\-t buffer\_\-bytes)}
\label{classXrlAtom_a0feecf2c703c7e45deb143407b12b06f}

\item 
\hypertarget{classXrlAtom_a528e5367a4398f9b08954ba401ae611f}{
size\_\-t {\bfseries unpack\_\-text} (const uint8\_\-t $\ast$buffer, size\_\-t buffer\_\-bytes)}
\label{classXrlAtom_a528e5367a4398f9b08954ba401ae611f}

\item 
\hypertarget{classXrlAtom_a5b6ba550bc8ebdee519f1f9c1e3c9521}{
size\_\-t {\bfseries unpack\_\-list} (const uint8\_\-t $\ast$buffer, size\_\-t buffer\_\-bytes)}
\label{classXrlAtom_a5b6ba550bc8ebdee519f1f9c1e3c9521}

\item 
\hypertarget{classXrlAtom_a1111abcbfc04898e526d19cb0f98704f}{
size\_\-t {\bfseries unpack\_\-binary} (const uint8\_\-t $\ast$buffer, size\_\-t buffer\_\-bytes)}
\label{classXrlAtom_a1111abcbfc04898e526d19cb0f98704f}

\item 
\hypertarget{classXrlAtom_ad7efe51ed1654be47fea60423264b472}{
size\_\-t {\bfseries unpack\_\-uint64} (const uint8\_\-t $\ast$buffer)}
\label{classXrlAtom_ad7efe51ed1654be47fea60423264b472}

\item 
\hypertarget{classXrlAtom_a1e84af0fde2e4c911fedf7725ab53250}{
size\_\-t {\bfseries unpack\_\-fp64} (const uint8\_\-t $\ast$buffer)}
\label{classXrlAtom_a1e84af0fde2e4c911fedf7725ab53250}

\end{DoxyCompactItemize}
\subsection*{Static Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlAtom_a7a4150c0ba3739aa853a3b4b2a10a4c1}{
static XrlAtomType {\bfseries resolve\_\-type\_\-c\_\-str} (const char $\ast$)}
\label{classXrlAtom_a7a4150c0ba3739aa853a3b4b2a10a4c1}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlAtom_a959a8ad4df2e194615f9c4e83b96c446}{
XrlAtomType {\bfseries \_\-type}}
\label{classXrlAtom_a959a8ad4df2e194615f9c4e83b96c446}

\item 
\hypertarget{classXrlAtom_a0076fc13ad6865e5396d440d95d912cc}{
bool {\bfseries \_\-have\_\-data}}
\label{classXrlAtom_a0076fc13ad6865e5396d440d95d912cc}

\item 
\hypertarget{classXrlAtom_a06ecc48563e4e2b192fc676a5b0a093b}{
string {\bfseries \_\-atom\_\-name}}
\label{classXrlAtom_a06ecc48563e4e2b192fc676a5b0a093b}

\item 
\hypertarget{classXrlAtom_adee9db8bb7e68d48d95ddcd634726b91}{
bool {\bfseries \_\-own}}
\label{classXrlAtom_adee9db8bb7e68d48d95ddcd634726b91}

\item 
\hypertarget{classXrlAtom_aca582c553115712e38f2b2f6edf47a05}{
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
union \{\\
\>bool {\bfseries \_boolean}\\
\>int32\_t {\bfseries \_i32val}\\
\>uint32\_t {\bfseries \_u32val}\\
\>\hyperlink{classIPv6}{IPv6} $\ast$ {\bfseries \_ipv6}\\
\>\hyperlink{classIPNet}{IPv6Net} $\ast$ {\bfseries \_ipv6net}\\
\>\hyperlink{classMac}{Mac} $\ast$ {\bfseries \_mac}\\
\>string $\ast$ {\bfseries \_text}\\
\>\hyperlink{classXrlAtomList}{XrlAtomList} $\ast$ {\bfseries \_list}\\
\>vector$<$ uint8\_t $>$ $\ast$ {\bfseries \_binary}\\
\>int64\_t {\bfseries \_i64val}\\
\>uint64\_t {\bfseries \_u64val}\\
\>fp64\_t {\bfseries \_fp64val}\\
\}; }
\label{classXrlAtom_aca582c553115712e38f2b2f6edf47a05}
\\

\end{tabbing}\item 
\hypertarget{classXrlAtom_a60dcfae3748b0f5b96dea23dba5c6878}{
\hyperlink{classIPv4}{IPv4} {\bfseries \_\-ipv4}}
\label{classXrlAtom_a60dcfae3748b0f5b96dea23dba5c6878}

\item 
\hypertarget{classXrlAtom_a42dffbc97b0c2ea30c98a9ef59b28087}{
\hyperlink{classIPNet}{IPv4Net} {\bfseries \_\-ipv4net}}
\label{classXrlAtom_a42dffbc97b0c2ea30c98a9ef59b28087}

\end{DoxyCompactItemize}


\subsection{Constructor \& Destructor Documentation}
\hypertarget{classXrlAtom_a7203ba235ca4fee03f0d463afc75618d}{
\index{XrlAtom@{XrlAtom}!XrlAtom@{XrlAtom}}
\index{XrlAtom@{XrlAtom}!XrlAtom@{XrlAtom}}
\subsubsection[{XrlAtom}]{\setlength{\rightskip}{0pt plus 5cm}XrlAtom::XrlAtom (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{serialized}
\end{DoxyParamCaption}
)  throw ({\bf InvalidString}, {\bf BadName})\hspace{0.3cm}{\ttfamily  \mbox{[}explicit\mbox{]}}}}
\label{classXrlAtom_a7203ba235ca4fee03f0d463afc75618d}


Construct an \hyperlink{classXrlAtom}{XrlAtom} from it's serialized character representation. 

Be careful not confuse this with \hyperlink{protocolthe-p}{the} unnamed string atom constructor XrlAtom(const string\&). 

\subsection{Member Function Documentation}
\hypertarget{classXrlAtom_ae715ec386c71158680e936286c04e429}{
\index{XrlAtom@{XrlAtom}!packed\_\-bytes\_\-fixed@{packed\_\-bytes\_\-fixed}}
\index{packed\_\-bytes\_\-fixed@{packed\_\-bytes\_\-fixed}!XrlAtom@{XrlAtom}}
\subsubsection[{packed\_\-bytes\_\-fixed}]{\setlength{\rightskip}{0pt plus 5cm}bool XrlAtom::packed\_\-bytes\_\-fixed (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classXrlAtom_ae715ec386c71158680e936286c04e429}
\begin{DoxyReturn}{Returns}
true if packed size of atom type is fixed, false if depends packed size depends on data content (eg list, text, binary) 
\end{DoxyReturn}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/libxipc/xrl\_\-atom.hh\item 
/home/greearb/git/xorp.ct.github/xorp/libxipc/xrl\_\-atom.cc\end{DoxyCompactItemize}
