\hypertarget{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4}{}\doxysection{kblib\+::default\+\_\+extract\texorpdfstring{$<$}{<} Key\+Elem\mbox{[}\mbox{]}, void\+\_\+if\+\_\+t\texorpdfstring{$<$}{<} std\+::is\+\_\+integral\+\_\+v\texorpdfstring{$<$}{<} Key\+Elem \texorpdfstring{$>$}{>} \texorpdfstring{$>$}{>} \texorpdfstring{$>$}{>} Struct Template Reference} \label{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4}\index{kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}} {\ttfamily \#include $<$kblib/trie.\+h$>$} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item using \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a3ae95b0106f1978de28eab8f7c5963c2}{value\+\_\+type}} = Key\+Elem \end{DoxyCompactItemize} \doxysubsection*{Static Public Member Functions} \begin{DoxyCompactItemize} \item {\footnotesize template$<$std\+::size\+\_\+t Size$>$ }\\static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_aa12784d0ba3248cc70f678c5fd49ad16}{begin}} (Key\+Elem(\&key)\mbox{[}Size\mbox{]}) noexcept(noexcept(std\+::begin(key))) -\/$>$ decltype(auto) \item {\footnotesize template$<$std\+::size\+\_\+t Size$>$ }\\static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a63f34812e8e043cd2f180d92c89bed28}{end}} (Key\+Elem(\&key)\mbox{[}Size\mbox{]}) noexcept(noexcept(std\+::end(key))) -\/$>$ decltype(auto) \item {\footnotesize template$<$std\+::size\+\_\+t Size$>$ }\\static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_afcc85dda23116e129368c4a40b627998}{index}} (Key\+Elem(\&key)\mbox{[}Size\mbox{]}, 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_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a183d200b24a79708ffdb2f1cf7311308}{key\+\_\+cardinality}} = static\+\_\+cast$<$\mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a3ae95b0106f1978de28eab8f7c5963c2}{value\+\_\+type}}$>$(\mbox{\hyperlink{namespacekblib_1_1nums_a64067ecc4167ce1cfe32860ef5c1dc47}{max}}) + std\+::size\+\_\+t\{1\} \end{DoxyCompactItemize} \doxysubsection{Detailed Description} \subsubsection*{template$<$typename Key\+Elem$>$\newline struct kblib\+::default\+\_\+extract$<$ Key\+Elem\mbox{[}$\,$\mbox{]}, void\+\_\+if\+\_\+t$<$ std\+::is\+\_\+integral\+\_\+v$<$ Key\+Elem $>$ $>$ $>$} Definition at line \mbox{\hyperlink{trie_8h_source_l00169}{169}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}. \doxysubsection{Member Typedef Documentation} \mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a3ae95b0106f1978de28eab8f7c5963c2}\label{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a3ae95b0106f1978de28eab8f7c5963c2}} \index{kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}!value\_type@{value\_type}} \index{value\_type@{value\_type}!kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}} \doxysubsubsection{\texorpdfstring{value\_type}{value\_type}} {\footnotesize\ttfamily template$<$typename Key\+Elem $>$ \\ using \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key\+Elem\mbox{[}$\,$\mbox{]}, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ std\+::is\+\_\+integral\+\_\+v$<$ Key\+Elem $>$ $>$ $>$\+::value\+\_\+type = Key\+Elem} Definition at line \mbox{\hyperlink{trie_8h_source_l00170}{170}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}. \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_aa12784d0ba3248cc70f678c5fd49ad16}\label{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_aa12784d0ba3248cc70f678c5fd49ad16}} \index{kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}!begin@{begin}} \index{begin@{begin}!kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}} \doxysubsubsection{\texorpdfstring{begin()}{begin()}} {\footnotesize\ttfamily template$<$typename Key\+Elem $>$ \\ template$<$std\+::size\+\_\+t Size$>$ \\ static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key\+Elem\mbox{[}$\,$\mbox{]}, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ std\+::is\+\_\+integral\+\_\+v$<$ Key\+Elem $>$ $>$ $>$\+::begin (\begin{DoxyParamCaption}\item[{Key\+Elem(\&)}]{key\mbox{[}\+Size\mbox{]} }\end{DoxyParamCaption}) -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}} Definition at line \mbox{\hyperlink{trie_8h_source_l00180}{180}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}. \mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a63f34812e8e043cd2f180d92c89bed28}\label{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a63f34812e8e043cd2f180d92c89bed28}} \index{kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}!end@{end}} \index{end@{end}!kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}} \doxysubsubsection{\texorpdfstring{end()}{end()}} {\footnotesize\ttfamily template$<$typename Key\+Elem $>$ \\ template$<$std\+::size\+\_\+t Size$>$ \\ static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key\+Elem\mbox{[}$\,$\mbox{]}, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ std\+::is\+\_\+integral\+\_\+v$<$ Key\+Elem $>$ $>$ $>$\+::end (\begin{DoxyParamCaption}\item[{Key\+Elem(\&)}]{key\mbox{[}\+Size\mbox{]} }\end{DoxyParamCaption}) -\/$>$ decltype(auto) \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}, {\ttfamily [constexpr]}, {\ttfamily [noexcept]}} Definition at line \mbox{\hyperlink{trie_8h_source_l00185}{185}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}. \mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_afcc85dda23116e129368c4a40b627998}\label{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_afcc85dda23116e129368c4a40b627998}} \index{kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}!index@{index}} \index{index@{index}!kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}} \doxysubsubsection{\texorpdfstring{index()}{index()}} {\footnotesize\ttfamily template$<$typename Key\+Elem $>$ \\ template$<$std\+::size\+\_\+t Size$>$ \\ static constexpr auto \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key\+Elem\mbox{[}$\,$\mbox{]}, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ std\+::is\+\_\+integral\+\_\+v$<$ Key\+Elem $>$ $>$ $>$\+::index (\begin{DoxyParamCaption}\item[{Key\+Elem(\&)}]{key\mbox{[}\+Size\mbox{]}, }\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_l00190}{190}} of file \mbox{\hyperlink{trie_8h_source}{trie.\+h}}. \doxysubsection{Member Data Documentation} \mbox{\Hypertarget{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a183d200b24a79708ffdb2f1cf7311308}\label{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a183d200b24a79708ffdb2f1cf7311308}} \index{kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}!key\_cardinality@{key\_cardinality}} \index{key\_cardinality@{key\_cardinality}!kblib::default\_extract$<$ KeyElem\mbox{[}\mbox{]}, void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$@{kblib::default\_extract$<$ KeyElem[], void\_if\_t$<$ std::is\_integral\_v$<$ KeyElem $>$ $>$ $>$}} \doxysubsubsection{\texorpdfstring{key\_cardinality}{key\_cardinality}} {\footnotesize\ttfamily template$<$typename Key\+Elem $>$ \\ \mbox{\hyperlink{tdecl_8h_ab79256916a9652cd2d1771ae9a38799f}{KBLIB\+\_\+\+CONSTANT\+\_\+M}} std\+::size\+\_\+t \mbox{\hyperlink{structkblib_1_1default__extract}{kblib\+::default\+\_\+extract}}$<$ Key\+Elem\mbox{[}$\,$\mbox{]}, \mbox{\hyperlink{namespacekblib_ab3cc24416f0b9a6504e1c6a437ed6230}{void\+\_\+if\+\_\+t}}$<$ std\+::is\+\_\+integral\+\_\+v$<$ Key\+Elem $>$ $>$ $>$\+::key\+\_\+cardinality = static\+\_\+cast$<$\mbox{\hyperlink{structkblib_1_1default__extract_3_01_key_elem_0f_0e_00_01void__if__t_3_01std_1_1is__integral__v_3_01_key_elem_01_4_01_4_01_4_a3ae95b0106f1978de28eab8f7c5963c2}{value\+\_\+type}}$>$(\mbox{\hyperlink{namespacekblib_1_1nums_a64067ecc4167ce1cfe32860ef5c1dc47}{max}}) + std\+::size\+\_\+t\{1\}} Definition at line \mbox{\hyperlink{trie_8h_source_l00174}{174}} 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}