\hypertarget{structkblib_1_1detail__memory_1_1on__destroy}{}\doxysection{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy\texorpdfstring{$<$}{<} T, D \texorpdfstring{$>$}{>} Struct Template Reference} \label{structkblib_1_1detail__memory_1_1on__destroy}\index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} {\ttfamily \#include $<$kblib/memory.\+h$>$} Inheritance diagram for kblib\+::detail\+\_\+memory\+::on\+\_\+destroy\texorpdfstring{$<$}{<} T, D \texorpdfstring{$>$}{>}\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{structkblib_1_1detail__memory_1_1on__destroy__inherit__graph} \end{center} \end{figure} Collaboration diagram for kblib\+::detail\+\_\+memory\+::on\+\_\+destroy\texorpdfstring{$<$}{<} T, D \texorpdfstring{$>$}{>}\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{structkblib_1_1detail__memory_1_1on__destroy__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy_a97c0c44afcdae9b505bc958190d73804}{on\+\_\+destroy}} () noexcept=default \item \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy_a2b8a3d967a8dbdacce405d4b719818bb}{on\+\_\+destroy}} (const \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} \&) noexcept(std\+::is\+\_\+nothrow\+\_\+copy\+\_\+constructible$<$ T $>$\+::value and std\+::is\+\_\+nothrow\+\_\+copy\+\_\+constructible$<$ D $>$\+::value)=default \item \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy_a32b46388bb256858dd226c1990ea4ac3}{on\+\_\+destroy}} (\mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} \&\&) noexcept(std\+::is\+\_\+nothrow\+\_\+move\+\_\+constructible$<$ T $>$\+::value and std\+::is\+\_\+nothrow\+\_\+move\+\_\+constructible$<$ D $>$\+::value)=default \item \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} \& \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy_a81d0909b41ed8bc973c84a0ca120200a}{operator=}} (const \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} \&) noexcept(std\+::is\+\_\+nothrow\+\_\+copy\+\_\+assignable$<$ T $>$\+::value and std\+::is\+\_\+nothrow\+\_\+copy\+\_\+assignable$<$ D $>$\+::value)=default \item \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} \& \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy_afcf89e357884090937dc14b9a7c8573e}{operator=}} (\mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} \&\&) noexcept(std\+::is\+\_\+nothrow\+\_\+move\+\_\+assignable$<$ T $>$\+::value and std\+::is\+\_\+nothrow\+\_\+move\+\_\+assignable$<$ D $>$\+::value)=default \item \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy_ac034ef585f1cb76f96f445d831fc2d01}{operator T\&}} () noexcept \item \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy_a22d7fa9918b58780c0fe9db3480f9cec}{operator const T \&}} () const noexcept \item \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy_afd4a6ad450ac6cc6404af81539344c0e}{$\sim$on\+\_\+destroy}} () \end{DoxyCompactItemize} \doxysubsection{Detailed Description} \subsubsection*{template$<$typename T, typename D$>$\newline struct kblib\+::detail\+\_\+memory\+::on\+\_\+destroy$<$ T, D $>$} Definition at line \mbox{\hyperlink{memory_8h_source_l00158}{158}} of file \mbox{\hyperlink{memory_8h_source}{memory.\+h}}. \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{structkblib_1_1detail__memory_1_1on__destroy_a97c0c44afcdae9b505bc958190d73804}\label{structkblib_1_1detail__memory_1_1on__destroy_a97c0c44afcdae9b505bc958190d73804}} \index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}!on\_destroy@{on\_destroy}} \index{on\_destroy@{on\_destroy}!kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} \doxysubsubsection{\texorpdfstring{on\_destroy()}{on\_destroy()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}} {\footnotesize\ttfamily template$<$typename T , typename D $>$ \\ \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy}}$<$ T, D $>$\+::on\+\_\+destroy (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{structkblib_1_1detail__memory_1_1on__destroy_a2b8a3d967a8dbdacce405d4b719818bb}\label{structkblib_1_1detail__memory_1_1on__destroy_a2b8a3d967a8dbdacce405d4b719818bb}} \index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}!on\_destroy@{on\_destroy}} \index{on\_destroy@{on\_destroy}!kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} \doxysubsubsection{\texorpdfstring{on\_destroy()}{on\_destroy()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}} {\footnotesize\ttfamily template$<$typename T , typename D $>$ \\ \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy}}$<$ T, D $>$\+::on\+\_\+destroy (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}}$<$ T, D $>$ \&}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{structkblib_1_1detail__memory_1_1on__destroy_a32b46388bb256858dd226c1990ea4ac3}\label{structkblib_1_1detail__memory_1_1on__destroy_a32b46388bb256858dd226c1990ea4ac3}} \index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}!on\_destroy@{on\_destroy}} \index{on\_destroy@{on\_destroy}!kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} \doxysubsubsection{\texorpdfstring{on\_destroy()}{on\_destroy()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}} {\footnotesize\ttfamily template$<$typename T , typename D $>$ \\ \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy}}$<$ T, D $>$\+::on\+\_\+destroy (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}}$<$ T, D $>$ \&\&}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{structkblib_1_1detail__memory_1_1on__destroy_afd4a6ad450ac6cc6404af81539344c0e}\label{structkblib_1_1detail__memory_1_1on__destroy_afd4a6ad450ac6cc6404af81539344c0e}} \index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}!````~on\_destroy@{$\sim$on\_destroy}} \index{````~on\_destroy@{$\sim$on\_destroy}!kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} \doxysubsubsection{\texorpdfstring{$\sim$on\_destroy()}{~on\_destroy()}} {\footnotesize\ttfamily template$<$typename T , typename D $>$ \\ \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy}}$<$ T, D $>$\+::$\sim$\mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Definition at line \mbox{\hyperlink{memory_8h_source_l00183}{183}} of file \mbox{\hyperlink{memory_8h_source}{memory.\+h}}. \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{structkblib_1_1detail__memory_1_1on__destroy_a22d7fa9918b58780c0fe9db3480f9cec}\label{structkblib_1_1detail__memory_1_1on__destroy_a22d7fa9918b58780c0fe9db3480f9cec}} \index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}!operator const T \&@{operator const T \&}} \index{operator const T \&@{operator const T \&}!kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} \doxysubsubsection{\texorpdfstring{operator const T \&()}{operator const T \&()}} {\footnotesize\ttfamily template$<$typename T , typename D $>$ \\ \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy}}$<$ T, D $>$\+::operator const T \& (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line \mbox{\hyperlink{memory_8h_source_l00181}{181}} of file \mbox{\hyperlink{memory_8h_source}{memory.\+h}}. \mbox{\Hypertarget{structkblib_1_1detail__memory_1_1on__destroy_ac034ef585f1cb76f96f445d831fc2d01}\label{structkblib_1_1detail__memory_1_1on__destroy_ac034ef585f1cb76f96f445d831fc2d01}} \index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}!operator T\&@{operator T\&}} \index{operator T\&@{operator T\&}!kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} \doxysubsubsection{\texorpdfstring{operator T\&()}{operator T\&()}} {\footnotesize\ttfamily template$<$typename T , typename D $>$ \\ \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy}}$<$ T, D $>$\+::operator T\& (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line \mbox{\hyperlink{memory_8h_source_l00180}{180}} of file \mbox{\hyperlink{memory_8h_source}{memory.\+h}}. \mbox{\Hypertarget{structkblib_1_1detail__memory_1_1on__destroy_a81d0909b41ed8bc973c84a0ca120200a}\label{structkblib_1_1detail__memory_1_1on__destroy_a81d0909b41ed8bc973c84a0ca120200a}} \index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}!operator=@{operator=}} \index{operator=@{operator=}!kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} \doxysubsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$typename T , typename D $>$ \\ \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} \& \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy}}$<$ T, D $>$\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}}$<$ T, D $>$ \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{structkblib_1_1detail__memory_1_1on__destroy_afcf89e357884090937dc14b9a7c8573e}\label{structkblib_1_1detail__memory_1_1on__destroy_afcf89e357884090937dc14b9a7c8573e}} \index{kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}!operator=@{operator=}} \index{operator=@{operator=}!kblib::detail\_memory::on\_destroy$<$ T, D $>$@{kblib::detail\_memory::on\_destroy$<$ T, D $>$}} \doxysubsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$typename T , typename D $>$ \\ \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}} \& \mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{kblib\+::detail\+\_\+memory\+::on\+\_\+destroy}}$<$ T, D $>$\+::operator= (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structkblib_1_1detail__memory_1_1on__destroy}{on\+\_\+destroy}}$<$ T, D $>$ \&\&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} \item kblib/\mbox{\hyperlink{memory_8h}{memory.\+h}}\end{DoxyCompactItemize}