\hypertarget{struct_k_b_l_i_b___n_s_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\+\_\+\+NS\+::default\+\_\+extract\texorpdfstring{$<$}{<} Key, void\+\_\+if\+\_\+t\texorpdfstring{$<$}{<} is\+\_\+linear\+\_\+container\+\_\+v\texorpdfstring{$<$}{<} Key \texorpdfstring{$>$}{>} \texorpdfstring{$>$}{>} \texorpdfstring{$>$}{>} Struct Template Reference}
\label{struct_k_b_l_i_b___n_s_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\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::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{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a4ed56cb7ce655fb65880eb0e79e7b919}{value\+\_\+type}} = typename Key\+::value\+\_\+type
\end{DoxyCompactItemize}
\doxysubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a78b42ea96f2a773b2f5c6dd25f1511c2}{begin}} (Key \&key) noexcept(noexcept(key.\+begin())) -\/$>$ decltype(auto)
\item 
static constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a767081e12bcb8bc77ff731494584cd86}{end}} (Key \&key) noexcept(noexcept(key.\+end())) -\/$>$ decltype(auto)
\item 
static constexpr auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a61569791ce98e3ae325601c44fda5cfc}{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{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a1c278408edcbcff762b0e4a9627d42c9}{key\+\_\+cardinality}} = static\+\_\+cast$<$\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a4ed56cb7ce655fb65880eb0e79e7b919}{value\+\_\+type}}$>$(\mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1nums_a8f5e5a9f72912486d090c7f2727d2ca0}{max}}) + std\+::size\+\_\+t\{1\}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename Key$>$\newline
struct KBLIB\+\_\+\+NS\+::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{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a4ed56cb7ce655fb65880eb0e79e7b919}\label{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a4ed56cb7ce655fb65880eb0e79e7b919}} 
\index{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!value\_type@{value\_type}}
\index{value\_type@{value\_type}!KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::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{struct_k_b_l_i_b___n_s_1_1default__extract}{KBLIB\+\_\+\+NS\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a0091fb16bc1767a3e5e1cff5aa8dff53}{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{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a78b42ea96f2a773b2f5c6dd25f1511c2}\label{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a78b42ea96f2a773b2f5c6dd25f1511c2}} 
\index{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!begin@{begin}}
\index{begin@{begin}!KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::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{struct_k_b_l_i_b___n_s_1_1default__extract}{KBLIB\+\_\+\+NS\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a0091fb16bc1767a3e5e1cff5aa8dff53}{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{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a767081e12bcb8bc77ff731494584cd86}\label{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a767081e12bcb8bc77ff731494584cd86}} 
\index{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!end@{end}}
\index{end@{end}!KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::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{struct_k_b_l_i_b___n_s_1_1default__extract}{KBLIB\+\_\+\+NS\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a0091fb16bc1767a3e5e1cff5aa8dff53}{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{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a61569791ce98e3ae325601c44fda5cfc}\label{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a61569791ce98e3ae325601c44fda5cfc}} 
\index{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!index@{index}}
\index{index@{index}!KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::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{struct_k_b_l_i_b___n_s_1_1default__extract}{KBLIB\+\_\+\+NS\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a0091fb16bc1767a3e5e1cff5aa8dff53}{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{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a1c278408edcbcff762b0e4a9627d42c9}\label{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a1c278408edcbcff762b0e4a9627d42c9}} 
\index{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$}!key\_cardinality@{key\_cardinality}}
\index{key\_cardinality@{key\_cardinality}!KBLIB\_NS::default\_extract$<$ Key, void\_if\_t$<$ is\_linear\_container\_v$<$ Key $>$ $>$ $>$@{KBLIB\_NS::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{struct_k_b_l_i_b___n_s_1_1default__extract}{KBLIB\+\_\+\+NS\+::default\+\_\+extract}}$<$ Key, \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a0091fb16bc1767a3e5e1cff5aa8dff53}{void\+\_\+if\+\_\+t}}$<$ is\+\_\+linear\+\_\+container\+\_\+v$<$ Key $>$ $>$ $>$\+::key\+\_\+cardinality = static\+\_\+cast$<$\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__extract_3_01_key_00_01void__if__t_3_01is__linear__container__v_3_01_key_01_4_01_4_01_4_a4ed56cb7ce655fb65880eb0e79e7b919}{value\+\_\+type}}$>$(\mbox{\hyperlink{namespace_k_b_l_i_b___n_s_1_1nums_a8f5e5a9f72912486d090c7f2727d2ca0}{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}
