\hypertarget{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{}\doxysection{KBLIB\+\_\+\+NS\+::FNV\+\_\+hash\texorpdfstring{$<$}{<} Key, Hash\+Int, typename \texorpdfstring{$>$}{>} Struct Template Reference}
\label{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}\index{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}}


The primary template has to exist, but not be constructible, in order to be compatible with std\+::hash.  




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

\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_abab46f5cf18c73884fc49e1d77853f38}{FNV\+\_\+hash}} ()=delete
\item 
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a3f372c4bc473552147bde83a7a18e67e}{FNV\+\_\+hash}} (const \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}} \&)=delete
\item 
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a6de4addeec588ecec4ef01acb50870ab}{FNV\+\_\+hash}} (\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}} \&\&)=delete
\item 
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}} \& \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a5115ae33290230951aae342943bc17c4}{operator=}} (const \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}} \&)=delete
\item 
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}} \& \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a2539681dfa36063af5999b8377e225ff}{operator=}} (\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}} \&\&)=delete
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename Key = void, typename Hash\+Int = std\+::size\+\_\+t, typename = void$>$\newline
struct KBLIB\+\_\+\+NS\+::\+FNV\+\_\+hash$<$ Key, Hash\+Int, typename $>$}
The primary template has to exist, but not be constructible, in order to be compatible with std\+::hash. 

Definition at line \mbox{\hyperlink{hash_8h_source_l00334}{334}} of file \mbox{\hyperlink{hash_8h_source}{hash.\+h}}.



\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_abab46f5cf18c73884fc49e1d77853f38}\label{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_abab46f5cf18c73884fc49e1d77853f38}} 
\index{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}!FNV\_hash@{FNV\_hash}}
\index{FNV\_hash@{FNV\_hash}!KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}}
\doxysubsubsection{\texorpdfstring{FNV\_hash()}{FNV\_hash()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
{\footnotesize\ttfamily template$<$typename Key  = void, typename Hash\+Int  = std\+::size\+\_\+t, typename  = void$>$ \\
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{KBLIB\+\_\+\+NS\+::\+FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$\+::\+FNV\+\_\+hash (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}}

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a3f372c4bc473552147bde83a7a18e67e}\label{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a3f372c4bc473552147bde83a7a18e67e}} 
\index{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}!FNV\_hash@{FNV\_hash}}
\index{FNV\_hash@{FNV\_hash}!KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}}
\doxysubsubsection{\texorpdfstring{FNV\_hash()}{FNV\_hash()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
{\footnotesize\ttfamily template$<$typename Key  = void, typename Hash\+Int  = std\+::size\+\_\+t, typename  = void$>$ \\
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{KBLIB\+\_\+\+NS\+::\+FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$\+::\+FNV\+\_\+hash (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$ \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}}

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a6de4addeec588ecec4ef01acb50870ab}\label{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a6de4addeec588ecec4ef01acb50870ab}} 
\index{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}!FNV\_hash@{FNV\_hash}}
\index{FNV\_hash@{FNV\_hash}!KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}}
\doxysubsubsection{\texorpdfstring{FNV\_hash()}{FNV\_hash()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
{\footnotesize\ttfamily template$<$typename Key  = void, typename Hash\+Int  = std\+::size\+\_\+t, typename  = void$>$ \\
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{KBLIB\+\_\+\+NS\+::\+FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$\+::\+FNV\+\_\+hash (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$ \&\&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}}



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a5115ae33290230951aae342943bc17c4}\label{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a5115ae33290230951aae342943bc17c4}} 
\index{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}!operator=@{operator=}}
\index{operator=@{operator=}!KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}}
\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$typename Key  = void, typename Hash\+Int  = std\+::size\+\_\+t, typename  = void$>$ \\
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}} \& \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{KBLIB\+\_\+\+NS\+::\+FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$ \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}}

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a2539681dfa36063af5999b8377e225ff}\label{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash_a2539681dfa36063af5999b8377e225ff}} 
\index{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}!operator=@{operator=}}
\index{operator=@{operator=}!KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$@{KBLIB\_NS::FNV\_hash$<$ Key, HashInt, typename $>$}}
\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$typename Key  = void, typename Hash\+Int  = std\+::size\+\_\+t, typename  = void$>$ \\
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}} \& \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{KBLIB\+\_\+\+NS\+::\+FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$\+::operator= (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1_f_n_v__hash}{FNV\+\_\+hash}}$<$ Key, Hash\+Int, typename $>$ \&\&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}}



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