\hypertarget{struct_k_b_l_i_b___n_s_1_1punner}{}\doxysection{KBLIB\+\_\+\+NS\+::punner\texorpdfstring{$<$}{<} Types \texorpdfstring{$>$}{>} Struct Template Reference}
\label{struct_k_b_l_i_b___n_s_1_1punner}\index{KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}}


{\ttfamily \#include $<$kblib/bits.\+h$>$}



Inheritance diagram for KBLIB\+\_\+\+NS\+::punner\texorpdfstring{$<$}{<} Types \texorpdfstring{$>$}{>}\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_k_b_l_i_b___n_s_1_1punner__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for KBLIB\+\_\+\+NS\+::punner\texorpdfstring{$<$}{<} Types \texorpdfstring{$>$}{>}\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_k_b_l_i_b___n_s_1_1punner__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$std\+::size\+\_\+t I$>$ }\\using \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner_a7be1f3b32150a8ec681ec1a7c179a42a}{base\+\_\+t}} = \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1pun__el}{detail\+\_\+bits\+::pun\+\_\+el}}$<$ \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1punner__impl}{impl\+\_\+t}}, r\+\_\+element\+\_\+t$<$ I $>$, storage\+\_\+size, I $>$
\item 
{\footnotesize template$<$std\+::size\+\_\+t I$>$ }\\using \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner_a1bbfdf46b303b512e3b0bcd1a3ead16d}{element\+\_\+t}} = typename \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner_a7be1f3b32150a8ec681ec1a7c179a42a}{base\+\_\+t}}$<$ I $>$\+::type
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$std\+::size\+\_\+t I$>$ }\\auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner_a377422d5ed08606348129a4312249509}{get}} () \&noexcept -\/$>$ decltype(auto)
\item 
{\footnotesize template$<$std\+::size\+\_\+t I$>$ }\\auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner_a26114c57d24a66148fa83e83225885a1}{get}} () const \&noexcept -\/$>$ decltype(auto)
\item 
{\footnotesize template$<$std\+::size\+\_\+t I$>$ }\\auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner_a1ccb2f37da561e24b140c0fba0aa6b4e}{get}} () \&\&noexcept -\/$>$ decltype(auto)
\item 
{\footnotesize template$<$std\+::size\+\_\+t I$>$ }\\auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner_a89897ac3182059973373951826678a54}{get}} () const \&\&noexcept -\/$>$ decltype(auto)
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename... Types$>$\newline
struct KBLIB\+\_\+\+NS\+::punner$<$ Types $>$}


Definition at line \mbox{\hyperlink{bits_8h_source_l00679}{679}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.



\doxysubsection{Member Typedef Documentation}
\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1punner_a7be1f3b32150a8ec681ec1a7c179a42a}\label{struct_k_b_l_i_b___n_s_1_1punner_a7be1f3b32150a8ec681ec1a7c179a42a}} 
\index{KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}!base\_t@{base\_t}}
\index{base\_t@{base\_t}!KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}}
\doxysubsubsection{\texorpdfstring{base\_t}{base\_t}}
{\footnotesize\ttfamily template$<$typename... Types$>$ \\
template$<$std\+::size\+\_\+t I$>$ \\
using \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner}{KBLIB\+\_\+\+NS\+::punner}}$<$ Types $>$\+::base\+\_\+t =  \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1pun__el}{detail\+\_\+bits\+::pun\+\_\+el}}$<$\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1detail__bits_1_1punner__impl}{impl\+\_\+t}}, r\+\_\+element\+\_\+t$<$I$>$, storage\+\_\+size, I$>$}



Definition at line \mbox{\hyperlink{bits_8h_source_l00696}{696}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1punner_a1bbfdf46b303b512e3b0bcd1a3ead16d}\label{struct_k_b_l_i_b___n_s_1_1punner_a1bbfdf46b303b512e3b0bcd1a3ead16d}} 
\index{KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}!element\_t@{element\_t}}
\index{element\_t@{element\_t}!KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}}
\doxysubsubsection{\texorpdfstring{element\_t}{element\_t}}
{\footnotesize\ttfamily template$<$typename... Types$>$ \\
template$<$std\+::size\+\_\+t I$>$ \\
using \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner}{KBLIB\+\_\+\+NS\+::punner}}$<$ Types $>$\+::element\+\_\+t =  typename \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner_a7be1f3b32150a8ec681ec1a7c179a42a}{base\+\_\+t}}$<$I$>$\+::type}



Definition at line \mbox{\hyperlink{bits_8h_source_l00698}{698}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1punner_a1ccb2f37da561e24b140c0fba0aa6b4e}\label{struct_k_b_l_i_b___n_s_1_1punner_a1ccb2f37da561e24b140c0fba0aa6b4e}} 
\index{KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}!get@{get}}
\index{get@{get}!KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}}
\doxysubsubsection{\texorpdfstring{get()}{get()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
{\footnotesize\ttfamily template$<$typename... Types$>$ \\
template$<$std\+::size\+\_\+t I$>$ \\
auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner}{KBLIB\+\_\+\+NS\+::punner}}$<$ Types $>$\+::get (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) \&\& -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{bits_8h_source_l00710}{710}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1punner_a377422d5ed08606348129a4312249509}\label{struct_k_b_l_i_b___n_s_1_1punner_a377422d5ed08606348129a4312249509}} 
\index{KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}!get@{get}}
\index{get@{get}!KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}}
\doxysubsubsection{\texorpdfstring{get()}{get()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
{\footnotesize\ttfamily template$<$typename... Types$>$ \\
template$<$std\+::size\+\_\+t I$>$ \\
auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner}{KBLIB\+\_\+\+NS\+::punner}}$<$ Types $>$\+::get (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) \& -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{bits_8h_source_l00701}{701}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1punner_a89897ac3182059973373951826678a54}\label{struct_k_b_l_i_b___n_s_1_1punner_a89897ac3182059973373951826678a54}} 
\index{KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}!get@{get}}
\index{get@{get}!KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}}
\doxysubsubsection{\texorpdfstring{get()}{get()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
{\footnotesize\ttfamily template$<$typename... Types$>$ \\
template$<$std\+::size\+\_\+t I$>$ \\
auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner}{KBLIB\+\_\+\+NS\+::punner}}$<$ Types $>$\+::get (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const \&\& -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{bits_8h_source_l00714}{714}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1punner_a26114c57d24a66148fa83e83225885a1}\label{struct_k_b_l_i_b___n_s_1_1punner_a26114c57d24a66148fa83e83225885a1}} 
\index{KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}!get@{get}}
\index{get@{get}!KBLIB\_NS::punner$<$ Types $>$@{KBLIB\_NS::punner$<$ Types $>$}}
\doxysubsubsection{\texorpdfstring{get()}{get()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
{\footnotesize\ttfamily template$<$typename... Types$>$ \\
template$<$std\+::size\+\_\+t I$>$ \\
auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1punner}{KBLIB\+\_\+\+NS\+::punner}}$<$ Types $>$\+::get (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const \& -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{bits_8h_source_l00706}{706}} of file \mbox{\hyperlink{bits_8h_source}{bits.\+h}}.



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
kblib/\mbox{\hyperlink{bits_8h}{bits.\+h}}\end{DoxyCompactItemize}
