\hypertarget{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6}{}\section{kblib\+:\+:detail\+:\+:erased\+\_\+hash\+\_\+t$<$ T, std\+:\+:void\+\_\+t$<$ std\+:\+:invoke\+\_\+result\+\_\+t$<$ std\+:\+:hash$<$ T $>$, T $>$ $>$ $>$ Struct Template Reference} \label{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6}\index{kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$@{kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$}} {\ttfamily \#include $<$poly\+\_\+obj.\+h$>$} \subsection*{Static Public Member Functions} \begin{DoxyCompactItemize} \item static auto \hyperlink{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6_ae298245181c83bb7caf98af8b3d72529}{default\+\_\+hash} (void $\ast$obj) -\/$>$ std\+::size\+\_\+t \end{DoxyCompactItemize} \subsection*{Public Attributes} \begin{DoxyCompactItemize} \item \hyperlink{namespacekblib_a8fe1791c4dfe674d145963ab5b3121ae}{alias}$<$ std\+::size\+\_\+t($\ast$)(void $\ast$)$>$ \hyperlink{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6_af782249aa1ffdab4884cf36ed80164d9}{hash} = \&\hyperlink{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6_ae298245181c83bb7caf98af8b3d72529}{default\+\_\+hash} \end{DoxyCompactItemize} \subsection{Detailed Description} \subsubsection*{template$<$typename T$>$\newline struct kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$} Definition at line 155 of file poly\+\_\+obj.\+h. \subsection{Member Function Documentation} \mbox{\Hypertarget{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6_ae298245181c83bb7caf98af8b3d72529}\label{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6_ae298245181c83bb7caf98af8b3d72529}} \index{kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$@{kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$}!default\+\_\+hash@{default\+\_\+hash}} \index{default\+\_\+hash@{default\+\_\+hash}!kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$@{kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$}} \subsubsection{\texorpdfstring{default\+\_\+hash()}{default\_hash()}} {\footnotesize\ttfamily template$<$typename T $>$ \\ static auto \hyperlink{structkblib_1_1detail_1_1erased__hash__t}{kblib\+::detail\+::erased\+\_\+hash\+\_\+t}$<$ T, std\+::void\+\_\+t$<$ std\+::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 156 of file poly\+\_\+obj.\+h. \subsection{Member Data Documentation} \mbox{\Hypertarget{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6_af782249aa1ffdab4884cf36ed80164d9}\label{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6_af782249aa1ffdab4884cf36ed80164d9}} \index{kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$@{kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$}!hash@{hash}} \index{hash@{hash}!kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$@{kblib\+::detail\+::erased\+\_\+hash\+\_\+t$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$}} \subsubsection{\texorpdfstring{hash}{hash}} {\footnotesize\ttfamily template$<$typename T $>$ \\ \hyperlink{namespacekblib_a8fe1791c4dfe674d145963ab5b3121ae}{alias}$<$std\+::size\+\_\+t ($\ast$)(void$\ast$)$>$ \hyperlink{structkblib_1_1detail_1_1erased__hash__t}{kblib\+::detail\+::erased\+\_\+hash\+\_\+t}$<$ T, std\+::void\+\_\+t$<$ std\+::invoke\+\_\+result\+\_\+t$<$ std\+::hash$<$ T $>$, T $>$ $>$ $>$\+::hash = \&\hyperlink{structkblib_1_1detail_1_1erased__hash__t_3_01_t_00_01std_1_1void__t_3_01std_1_1invoke__result__t2c64694d54964a1e2e006ae44743bff6_ae298245181c83bb7caf98af8b3d72529}{default\+\_\+hash}} Definition at line 160 of file poly\+\_\+obj.\+h. The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} \item kblib/\hyperlink{poly__obj_8h}{poly\+\_\+obj.\+h}\end{DoxyCompactItemize}