\hypertarget{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4}{}\doxysection{kblib\+::default\+\_\+extract\texorpdfstring{$<$}{<} Key, void\+\_\+if\+\_\+t\texorpdfstring{$<$}{<} is\+\_\+linear\+\_\+container\+\_\+v\texorpdfstring{$<$}{<} Key \texorpdfstring{$>$}{>} \texorpdfstring{$>$}{>} \texorpdfstring{$>$}{>} Struct Template Reference}
\label{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4}\index{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}}


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

\doxysubsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
using \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a0226eeae5adde861f761efcdd1f80a78}{value\+\_\+type}} = typename Key\+::value\+\_\+type
\end{DoxyCompactItemize}
\doxysubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ab50c62522c6cd0c2f55151b92b5b6fb9}{begin}} (Key \&key) noexcept(noexcept(key.\+begin())) -\/$>$ decltype(auto)
\item 
static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_abef2014be3076cd2242fcc4f2c9a45b5}{end}} (Key \&key) noexcept(noexcept(key.\+end())) -\/$>$ decltype(auto)
\item 
static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ad7a00f68c930abe7572484b05c73c456}{index}} (Key \&key, std\+::size\+\_\+t idx) noexcept(noexcept(key\mbox{[}idx\mbox{]})) -\/$>$ decltype(auto)
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{tdecl_8h_ab79256916a9652cd2d1771ae9a38799f}{KBLIB\+\_\+\+CONSTANT\+\_\+M}} std\+::size\+\_\+t \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ade2d31af20d2c2563d568e216d1a06b0}{key\+\_\+cardinality}} = static\+\_\+cast$<$\mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a0226eeae5adde861f761efcdd1f80a78}{value\+\_\+type}}$>$(\mbox{\hyperlink{namespacekblib_1_1nums_a64067ecc4167ce1cfe32860ef5c1dc47}{max}}) + std\+::size\+\_\+t\{1\}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename Key$>$\newline
struct kblib\+::default\+\_\+extract$<$ Key, void\+\_\+if\+\_\+t$<$ is\+\_\+linear\+\_\+container\+\_\+v$<$ Key $>$ $>$ $>$}


Definition at line \mbox{\hyperlink{trie_8h_source_l00143}{143}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}.



\doxysubsection{Member Typedef Documentation}
\mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a0226eeae5adde861f761efcdd1f80a78}\label{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a0226eeae5adde861f761efcdd1f80a78}} 
\index{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!value\_type@{value\_type}}
\index{value\_type@{value\_type}!kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}}
\doxysubsubsection{\texorpdfstring{value\_type}{value\_type}}
{\footnotesize\ttfamily template$<$typename Key $>$ \\
using \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ is\+\_\+linear\+\_\+container\+\_\+v$<$ Key $>$ $>$ $>$\+::value\+\_\+type =  typename Key\+::value\+\_\+type}



Definition at line \mbox{\hyperlink{trie_8h_source_l00144}{144}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}.



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ab50c62522c6cd0c2f55151b92b5b6fb9}\label{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ab50c62522c6cd0c2f55151b92b5b6fb9}} 
\index{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!begin@{begin}}
\index{begin@{begin}!kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}}
\doxysubsubsection{\texorpdfstring{begin()}{begin()}}
{\footnotesize\ttfamily template$<$typename Key $>$ \\
static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ is\+\_\+linear\+\_\+container\+\_\+v$<$ Key $>$ $>$ $>$\+::begin (\begin{DoxyParamCaption}\item[{Key \&}]{key }\end{DoxyParamCaption}) -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{trie_8h_source_l00153}{153}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}.

\mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_abef2014be3076cd2242fcc4f2c9a45b5}\label{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_abef2014be3076cd2242fcc4f2c9a45b5}} 
\index{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!end@{end}}
\index{end@{end}!kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}}
\doxysubsubsection{\texorpdfstring{end()}{end()}}
{\footnotesize\ttfamily template$<$typename Key $>$ \\
static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ is\+\_\+linear\+\_\+container\+\_\+v$<$ Key $>$ $>$ $>$\+::end (\begin{DoxyParamCaption}\item[{Key \&}]{key }\end{DoxyParamCaption}) -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{trie_8h_source_l00157}{157}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}.

\mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ad7a00f68c930abe7572484b05c73c456}\label{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ad7a00f68c930abe7572484b05c73c456}} 
\index{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!index@{index}}
\index{index@{index}!kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}}
\doxysubsubsection{\texorpdfstring{index()}{index()}}
{\footnotesize\ttfamily template$<$typename Key $>$ \\
static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ is\+\_\+linear\+\_\+container\+\_\+v$<$ Key $>$ $>$ $>$\+::index (\begin{DoxyParamCaption}\item[{Key \&}]{key,  }\item[{std\+::size\+\_\+t}]{idx }\end{DoxyParamCaption}) -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}}



Definition at line \mbox{\hyperlink{trie_8h_source_l00161}{161}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}.



\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ade2d31af20d2c2563d568e216d1a06b0}\label{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_ade2d31af20d2c2563d568e216d1a06b0}} 
\index{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!key\_cardinality@{key\_cardinality}}
\index{key\_cardinality@{key\_cardinality}!kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{kblib::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}}
\doxysubsubsection{\texorpdfstring{key\_cardinality}{key\_cardinality}}
{\footnotesize\ttfamily template$<$typename Key $>$ \\
\mbox{\hyperlink{tdecl_8h_ab79256916a9652cd2d1771ae9a38799f}{KBLIB\+\_\+\+CONSTANT\+\_\+M}} std\+::size\+\_\+t \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ is\+\_\+linear\+\_\+container\+\_\+v$<$ Key $>$ $>$ $>$\+::key\+\_\+cardinality = static\+\_\+cast$<$\mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a0226eeae5adde861f761efcdd1f80a78}{value\+\_\+type}}$>$(\mbox{\hyperlink{namespacekblib_1_1nums_a64067ecc4167ce1cfe32860ef5c1dc47}{max}}) + std\+::size\+\_\+t\{1\}}



Definition at line \mbox{\hyperlink{trie_8h_source_l00148}{148}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}.



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