\hypertarget{class_k_b_l_i_b___n_s_1_1intrusive__dual__map}{}\doxysection{KBLIB\+\_\+\+NS\+::intrusive\+\_\+dual\+\_\+map\texorpdfstring{$<$}{<} Value, Key\+Extract1, Key\+Extract2, Hash1, Hash2, Key\+Equal1, Key\+Equal2 \texorpdfstring{$>$}{>} Class Template Reference}
\label{class_k_b_l_i_b___n_s_1_1intrusive__dual__map}\index{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}}


{\ttfamily \#include $<$kblib/intrusive\+\_\+containers.\+h$>$}

\doxysubsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
using \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a1b43366f116d47264f0914d8fb8448c6}{value\+\_\+type}} = Value
\item 
using \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_ad308e3069314b04d4e03d50fe45173b4}{key\+\_\+type\+\_\+a}} = \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a98c871b73b590b089f642ee077b87f1e}{remove\+\_\+cvref\+\_\+t}}$<$ std\+::invoke\+\_\+result\+\_\+t$<$ decltype(Key\+Extract1), Value \& $>$ $>$
\item 
using \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a0b10873768f5d7719414859765ca1bfd}{key\+\_\+type\+\_\+b}} = \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a98c871b73b590b089f642ee077b87f1e}{remove\+\_\+cvref\+\_\+t}}$<$ std\+::invoke\+\_\+result\+\_\+t$<$ decltype(Key\+Extract2), Value \& $>$ $>$
\item 
using \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a919a4c2508e0818d1de14cd2cdc3caac}{mapped\+\_\+type}} = Value
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$int $>$ }\\auto \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_ac64d02a228e63d7b3c4257771e754c9f}{get}} () -\/$>$ auto
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename Value, auto Key\+Extract1, auto Key\+Extract2, typename Hash1 = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Hash2 = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Key\+Equal1 = std\+::equal\+\_\+to$<$$>$, typename Key\+Equal2 = std\+::equal\+\_\+to$<$$>$$>$\newline
class KBLIB\+\_\+\+NS\+::intrusive\+\_\+dual\+\_\+map$<$ Value, Key\+Extract1, Key\+Extract2, Hash1, Hash2, Key\+Equal1, Key\+Equal2 $>$}


Definition at line \mbox{\hyperlink{intrusive__containers_8h_source_l00084}{84}} of file \mbox{\hyperlink{intrusive__containers_8h_source}{intrusive\+\_\+containers.\+h}}.



\doxysubsection{Member Typedef Documentation}
\mbox{\Hypertarget{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_ad308e3069314b04d4e03d50fe45173b4}\label{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_ad308e3069314b04d4e03d50fe45173b4}} 
\index{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}!key\_type\_a@{key\_type\_a}}
\index{key\_type\_a@{key\_type\_a}!KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}}
\doxysubsubsection{\texorpdfstring{key\_type\_a}{key\_type\_a}}
{\footnotesize\ttfamily template$<$typename Value , auto Key\+Extract1, auto Key\+Extract2, typename Hash1  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Hash2  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Key\+Equal1  = std\+::equal\+\_\+to$<$$>$, typename Key\+Equal2  = std\+::equal\+\_\+to$<$$>$$>$ \\
using \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map}{KBLIB\+\_\+\+NS\+::intrusive\+\_\+dual\+\_\+map}}$<$ Value, Key\+Extract1, Key\+Extract2, Hash1, Hash2, Key\+Equal1, Key\+Equal2 $>$\+::key\+\_\+type\+\_\+a =  \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a98c871b73b590b089f642ee077b87f1e}{remove\+\_\+cvref\+\_\+t}}$<$std\+::invoke\+\_\+result\+\_\+t$<$decltype(Key\+Extract1), Value\&$>$ $>$}



Definition at line \mbox{\hyperlink{intrusive__containers_8h_source_l00087}{87}} of file \mbox{\hyperlink{intrusive__containers_8h_source}{intrusive\+\_\+containers.\+h}}.

\mbox{\Hypertarget{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a0b10873768f5d7719414859765ca1bfd}\label{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a0b10873768f5d7719414859765ca1bfd}} 
\index{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}!key\_type\_b@{key\_type\_b}}
\index{key\_type\_b@{key\_type\_b}!KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}}
\doxysubsubsection{\texorpdfstring{key\_type\_b}{key\_type\_b}}
{\footnotesize\ttfamily template$<$typename Value , auto Key\+Extract1, auto Key\+Extract2, typename Hash1  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Hash2  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Key\+Equal1  = std\+::equal\+\_\+to$<$$>$, typename Key\+Equal2  = std\+::equal\+\_\+to$<$$>$$>$ \\
using \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map}{KBLIB\+\_\+\+NS\+::intrusive\+\_\+dual\+\_\+map}}$<$ Value, Key\+Extract1, Key\+Extract2, Hash1, Hash2, Key\+Equal1, Key\+Equal2 $>$\+::key\+\_\+type\+\_\+b =  \mbox{\hyperlink{namespace_k_b_l_i_b___n_s_a98c871b73b590b089f642ee077b87f1e}{remove\+\_\+cvref\+\_\+t}}$<$std\+::invoke\+\_\+result\+\_\+t$<$decltype(Key\+Extract2), Value\&$>$ $>$}



Definition at line \mbox{\hyperlink{intrusive__containers_8h_source_l00089}{89}} of file \mbox{\hyperlink{intrusive__containers_8h_source}{intrusive\+\_\+containers.\+h}}.

\mbox{\Hypertarget{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a919a4c2508e0818d1de14cd2cdc3caac}\label{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a919a4c2508e0818d1de14cd2cdc3caac}} 
\index{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}!mapped\_type@{mapped\_type}}
\index{mapped\_type@{mapped\_type}!KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}}
\doxysubsubsection{\texorpdfstring{mapped\_type}{mapped\_type}}
{\footnotesize\ttfamily template$<$typename Value , auto Key\+Extract1, auto Key\+Extract2, typename Hash1  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Hash2  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Key\+Equal1  = std\+::equal\+\_\+to$<$$>$, typename Key\+Equal2  = std\+::equal\+\_\+to$<$$>$$>$ \\
using \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map}{KBLIB\+\_\+\+NS\+::intrusive\+\_\+dual\+\_\+map}}$<$ Value, Key\+Extract1, Key\+Extract2, Hash1, Hash2, Key\+Equal1, Key\+Equal2 $>$\+::mapped\+\_\+type =  Value}



Definition at line \mbox{\hyperlink{intrusive__containers_8h_source_l00091}{91}} of file \mbox{\hyperlink{intrusive__containers_8h_source}{intrusive\+\_\+containers.\+h}}.

\mbox{\Hypertarget{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a1b43366f116d47264f0914d8fb8448c6}\label{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_a1b43366f116d47264f0914d8fb8448c6}} 
\index{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}!value\_type@{value\_type}}
\index{value\_type@{value\_type}!KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}}
\doxysubsubsection{\texorpdfstring{value\_type}{value\_type}}
{\footnotesize\ttfamily template$<$typename Value , auto Key\+Extract1, auto Key\+Extract2, typename Hash1  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Hash2  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Key\+Equal1  = std\+::equal\+\_\+to$<$$>$, typename Key\+Equal2  = std\+::equal\+\_\+to$<$$>$$>$ \\
using \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map}{KBLIB\+\_\+\+NS\+::intrusive\+\_\+dual\+\_\+map}}$<$ Value, Key\+Extract1, Key\+Extract2, Hash1, Hash2, Key\+Equal1, Key\+Equal2 $>$\+::value\+\_\+type =  Value}



Definition at line \mbox{\hyperlink{intrusive__containers_8h_source_l00086}{86}} of file \mbox{\hyperlink{intrusive__containers_8h_source}{intrusive\+\_\+containers.\+h}}.



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_ac64d02a228e63d7b3c4257771e754c9f}\label{class_k_b_l_i_b___n_s_1_1intrusive__dual__map_ac64d02a228e63d7b3c4257771e754c9f}} 
\index{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}!get@{get}}
\index{get@{get}!KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$@{KBLIB\_NS::intrusive\_dual\_map$<$ Value, KeyExtract1, KeyExtract2, Hash1, Hash2, KeyEqual1, KeyEqual2 $>$}}
\doxysubsubsection{\texorpdfstring{get()}{get()}}
{\footnotesize\ttfamily template$<$typename Value , auto Key\+Extract1, auto Key\+Extract2, typename Hash1  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Hash2  = kblib\+::\+FNV\+\_\+hash$<$$>$, typename Key\+Equal1  = std\+::equal\+\_\+to$<$$>$, typename Key\+Equal2  = std\+::equal\+\_\+to$<$$>$$>$ \\
template$<$int $>$ \\
auto \mbox{\hyperlink{class_k_b_l_i_b___n_s_1_1intrusive__dual__map}{KBLIB\+\_\+\+NS\+::intrusive\+\_\+dual\+\_\+map}}$<$ Value, Key\+Extract1, Key\+Extract2, Hash1, Hash2, Key\+Equal1, Key\+Equal2 $>$\+::get (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) -\/$>$  auto}



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
kblib/\mbox{\hyperlink{intrusive__containers_8h}{intrusive\+\_\+containers.\+h}}\end{DoxyCompactItemize}
