\hypertarget{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3}{}\doxysection{kblib\+::detail\+\_\+poly\+::kblib\+\_\+erased\+\_\+hash\+\_\+t\texorpdfstring{$<$}{<} T, void\+\_\+t\texorpdfstring{$<$}{<} fakestd\+::invoke\+\_\+result\+\_\+t\texorpdfstring{$<$}{<} std\+::hash\texorpdfstring{$<$}{<} T \texorpdfstring{$>$}{>}, T \texorpdfstring{$>$}{>} \texorpdfstring{$>$}{>} \texorpdfstring{$>$}{>} Struct Template Reference}
\label{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3}\index{kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$@{kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$}}


{\ttfamily \#include $<$kblib/poly\+\_\+obj.\+h$>$}

\doxysubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static auto \mbox{\hyperlink{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3_a826f00a7f36fdbcb22675b785fc8b9f8}{default\+\_\+hash}} (void $\ast$obj) -\/$>$ std\+::size\+\_\+t
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{namespacekblib_a8fe1791c4dfe674d145963ab5b3121ae}{alias}}$<$ std\+::size\+\_\+t($\ast$)(void $\ast$)$>$ \mbox{\hyperlink{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3_adb7b81147b605ef169f85d872ac1d7c0}{hash}} = \&\mbox{\hyperlink{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3_a826f00a7f36fdbcb22675b785fc8b9f8}{default\+\_\+hash}}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename T$>$\newline
struct kblib\+::detail\+\_\+poly\+::kblib\+\_\+erased\+\_\+hash\+\_\+t$<$ T, void\+\_\+t$<$ fakestd\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$}


Definition at line \mbox{\hyperlink{poly__obj_8h_source_l00199}{199}} of file \mbox{\hyperlink{poly__obj_8h_source}{poly\+\_\+obj.\+h}}.



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3_a826f00a7f36fdbcb22675b785fc8b9f8}\label{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3_a826f00a7f36fdbcb22675b785fc8b9f8}} 
\index{kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$@{kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$}!default\_hash@{default\_hash}}
\index{default\_hash@{default\_hash}!kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$@{kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$}}
\doxysubsubsection{\texorpdfstring{default\_hash()}{default\_hash()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
static auto \mbox{\hyperlink{structkblib_1_1detail__poly_1_1kblib__erased__hash__t}{kblib\+::detail\+\_\+poly\+::kblib\+\_\+erased\+\_\+hash\+\_\+t}}$<$ T, void\+\_\+t$<$ \mbox{\hyperlink{namespacekblib_1_1fakestd_a2641177fb1c17f887061308f2b8b6cae}{fakestd\+::invoke\+\_\+result\+\_\+t}}$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$\+::default\+\_\+hash (\begin{DoxyParamCaption}\item[{void $\ast$}]{obj }\end{DoxyParamCaption}) -\/$>$ std\+::size\+\_\+t \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Definition at line \mbox{\hyperlink{poly__obj_8h_source_l00201}{201}} of file \mbox{\hyperlink{poly__obj_8h_source}{poly\+\_\+obj.\+h}}.



\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3_adb7b81147b605ef169f85d872ac1d7c0}\label{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3_adb7b81147b605ef169f85d872ac1d7c0}} 
\index{kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$@{kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$}!hash@{hash}}
\index{hash@{hash}!kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$@{kblib::detail\_poly::kblib\_erased\_hash\_t$<$ T, void\_t$<$ fakestd::invoke\_result\_t$<$ std::hash$<$ T $>$, T $>$ $>$ $>$}}
\doxysubsubsection{\texorpdfstring{hash}{hash}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\mbox{\hyperlink{namespacekblib_a8fe1791c4dfe674d145963ab5b3121ae}{alias}}$<$std\+::size\+\_\+t ($\ast$)(void$\ast$)$>$ \mbox{\hyperlink{structkblib_1_1detail__poly_1_1kblib__erased__hash__t}{kblib\+::detail\+\_\+poly\+::kblib\+\_\+erased\+\_\+hash\+\_\+t}}$<$ T, void\+\_\+t$<$ \mbox{\hyperlink{namespacekblib_1_1fakestd_a2641177fb1c17f887061308f2b8b6cae}{fakestd\+::invoke\+\_\+result\+\_\+t}}$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$\+::hash = \&\mbox{\hyperlink{structkblib_1_1detail__poly_1_1kblib__erased__hash__t_3_01_t_00_01void__t_3_01fakestd_1_1invoke_55adc4f6ef833cf6a377ac3d9da5a8e3_a826f00a7f36fdbcb22675b785fc8b9f8}{default\+\_\+hash}}}



Definition at line \mbox{\hyperlink{poly__obj_8h_source_l00205}{205}} of file \mbox{\hyperlink{poly__obj_8h_source}{poly\+\_\+obj.\+h}}.



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