\hypertarget{structkblib_1_1detail_1_1on__destroy}{}\section{kblib\+:\+:detail\+:\+:on\+\_\+destroy$<$ T, D $>$ Struct Template Reference} \label{structkblib_1_1detail_1_1on__destroy}\index{kblib\+::detail\+::on\+\_\+destroy$<$ T, D $>$@{kblib\+::detail\+::on\+\_\+destroy$<$ T, D $>$}} {\ttfamily \#include $<$memory.\+h$>$} Inheritance diagram for kblib\+:\+:detail\+:\+:on\+\_\+destroy$<$ T, D $>$\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=316pt]{structkblib_1_1detail_1_1on__destroy__inherit__graph} \end{center} \end{figure} Collaboration diagram for kblib\+:\+:detail\+:\+:on\+\_\+destroy$<$ T, D $>$\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=316pt]{structkblib_1_1detail_1_1on__destroy__coll__graph} \end{center} \end{figure} \subsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \hyperlink{structkblib_1_1detail_1_1on__destroy_ab0470398a8bebc7f0157b5c84aa39b9f}{on\+\_\+destroy} () noexcept=default \item \hyperlink{structkblib_1_1detail_1_1on__destroy_a8888709ff27aabdbf1e08b41a3baf283}{on\+\_\+destroy} (const \hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} \&) noexcept(std\+::is\+\_\+nothrow\+\_\+copy\+\_\+constructible$<$ T $>$\+::value and std\+::is\+\_\+nothrow\+\_\+copy\+\_\+constructible$<$ D $>$\+::value)=default \item \hyperlink{structkblib_1_1detail_1_1on__destroy_a64ace585c96c00cc32261ab0fb78e525}{on\+\_\+destroy} (\hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} \&\&) noexcept(std\+::is\+\_\+nothrow\+\_\+move\+\_\+constructible$<$ T $>$\+::value and std\+::is\+\_\+nothrow\+\_\+move\+\_\+constructible$<$ D $>$\+::value)=default \item \hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} \& \hyperlink{structkblib_1_1detail_1_1on__destroy_ab2726676e645bf5e6b77de25a7d98f7a}{operator=} (const \hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} \&) noexcept(std\+::is\+\_\+nothrow\+\_\+copy\+\_\+assignable$<$ T $>$\+::value and std\+::is\+\_\+nothrow\+\_\+copy\+\_\+assignable$<$ D $>$\+::value)=default \item \hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} \& \hyperlink{structkblib_1_1detail_1_1on__destroy_af30eea6a45b234048b8ae3a223924bf3}{operator=} (\hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} \&\&) noexcept(std\+::is\+\_\+nothrow\+\_\+move\+\_\+assignable$<$ T $>$\+::value and std\+::is\+\_\+nothrow\+\_\+move\+\_\+assignable$<$ D $>$\+::value)=default \item \hyperlink{structkblib_1_1detail_1_1on__destroy_ac998b77c907c5d1ae202e94dd0d293ff}{operator T \&} () noexcept \item \hyperlink{structkblib_1_1detail_1_1on__destroy_afd87c91f9623b68f22a7e7d9044f1531}{operator const T \&} () const noexcept \item \hyperlink{structkblib_1_1detail_1_1on__destroy_af55aa393730de6816620b5023c93cdbf}{$\sim$on\+\_\+destroy} () \end{DoxyCompactItemize} \subsection{Detailed Description} \subsubsection*{template$<$typename T, typename D$>$\newline struct kblib\+::detail\+::on\+\_\+destroy$<$ T, D $>$} Definition at line 124 of file memory.\+h. \subsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{structkblib_1_1detail_1_1on__destroy_ab0470398a8bebc7f0157b5c84aa39b9f}\label{structkblib_1_1detail_1_1on__destroy_ab0470398a8bebc7f0157b5c84aa39b9f}} \index{kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}!on\+\_\+destroy@{on\+\_\+destroy}} \index{on\+\_\+destroy@{on\+\_\+destroy}!kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}} \subsubsection{\texorpdfstring{on\+\_\+destroy()}{on\_destroy()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}} {\footnotesize\ttfamily template$<$typename T, typename D$>$ \\ \hyperlink{structkblib_1_1detail_1_1on__destroy}{kblib\+::detail\+::on\+\_\+destroy}$<$ T, D $>$\+::\hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{structkblib_1_1detail_1_1on__destroy_a8888709ff27aabdbf1e08b41a3baf283}\label{structkblib_1_1detail_1_1on__destroy_a8888709ff27aabdbf1e08b41a3baf283}} \index{kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}!on\+\_\+destroy@{on\+\_\+destroy}} \index{on\+\_\+destroy@{on\+\_\+destroy}!kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}} \subsubsection{\texorpdfstring{on\+\_\+destroy()}{on\_destroy()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}} {\footnotesize\ttfamily template$<$typename T, typename D$>$ \\ \hyperlink{structkblib_1_1detail_1_1on__destroy}{kblib\+::detail\+::on\+\_\+destroy}$<$ T, D $>$\+::\hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} (\begin{DoxyParamCaption}\item[{const \hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy}$<$ T, D $>$ \&}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{structkblib_1_1detail_1_1on__destroy_a64ace585c96c00cc32261ab0fb78e525}\label{structkblib_1_1detail_1_1on__destroy_a64ace585c96c00cc32261ab0fb78e525}} \index{kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}!on\+\_\+destroy@{on\+\_\+destroy}} \index{on\+\_\+destroy@{on\+\_\+destroy}!kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}} \subsubsection{\texorpdfstring{on\+\_\+destroy()}{on\_destroy()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}} {\footnotesize\ttfamily template$<$typename T, typename D$>$ \\ \hyperlink{structkblib_1_1detail_1_1on__destroy}{kblib\+::detail\+::on\+\_\+destroy}$<$ T, D $>$\+::\hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} (\begin{DoxyParamCaption}\item[{\hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy}$<$ T, D $>$ \&\&}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{structkblib_1_1detail_1_1on__destroy_af55aa393730de6816620b5023c93cdbf}\label{structkblib_1_1detail_1_1on__destroy_af55aa393730de6816620b5023c93cdbf}} \index{kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}!````~on\+\_\+destroy@{$\sim$on\+\_\+destroy}} \index{````~on\+\_\+destroy@{$\sim$on\+\_\+destroy}!kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}} \subsubsection{\texorpdfstring{$\sim$on\+\_\+destroy()}{~on\_destroy()}} {\footnotesize\ttfamily template$<$typename T, typename D$>$ \\ \hyperlink{structkblib_1_1detail_1_1on__destroy}{kblib\+::detail\+::on\+\_\+destroy}$<$ T, D $>$\+::$\sim$\hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Definition at line 143 of file memory.\+h. \subsection{Member Function Documentation} \mbox{\Hypertarget{structkblib_1_1detail_1_1on__destroy_afd87c91f9623b68f22a7e7d9044f1531}\label{structkblib_1_1detail_1_1on__destroy_afd87c91f9623b68f22a7e7d9044f1531}} \index{kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}!operator const T \&@{operator const T \&}} \index{operator const T \&@{operator const T \&}!kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}} \subsubsection{\texorpdfstring{operator const T \&()}{operator const T \&()}} {\footnotesize\ttfamily template$<$typename T, typename D$>$ \\ \hyperlink{structkblib_1_1detail_1_1on__destroy}{kblib\+::detail\+::on\+\_\+destroy}$<$ T, D $>$\+::operator const T \& (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 141 of file memory.\+h. \mbox{\Hypertarget{structkblib_1_1detail_1_1on__destroy_ac998b77c907c5d1ae202e94dd0d293ff}\label{structkblib_1_1detail_1_1on__destroy_ac998b77c907c5d1ae202e94dd0d293ff}} \index{kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}!operator T \&@{operator T \&}} \index{operator T \&@{operator T \&}!kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}} \subsubsection{\texorpdfstring{operator T \&()}{operator T \&()}} {\footnotesize\ttfamily template$<$typename T, typename D$>$ \\ \hyperlink{structkblib_1_1detail_1_1on__destroy}{kblib\+::detail\+::on\+\_\+destroy}$<$ T, D $>$\+::operator T\& (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 140 of file memory.\+h. \mbox{\Hypertarget{structkblib_1_1detail_1_1on__destroy_ab2726676e645bf5e6b77de25a7d98f7a}\label{structkblib_1_1detail_1_1on__destroy_ab2726676e645bf5e6b77de25a7d98f7a}} \index{kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}!operator=@{operator=}} \index{operator=@{operator=}!kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}} \subsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$typename T, typename D$>$ \\ \hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy}\& \hyperlink{structkblib_1_1detail_1_1on__destroy}{kblib\+::detail\+::on\+\_\+destroy}$<$ T, D $>$\+::operator= (\begin{DoxyParamCaption}\item[{const \hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy}$<$ T, D $>$ \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{structkblib_1_1detail_1_1on__destroy_af30eea6a45b234048b8ae3a223924bf3}\label{structkblib_1_1detail_1_1on__destroy_af30eea6a45b234048b8ae3a223924bf3}} \index{kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}!operator=@{operator=}} \index{operator=@{operator=}!kblib\+::detail\+::on\+\_\+destroy@{kblib\+::detail\+::on\+\_\+destroy}} \subsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$typename T, typename D$>$ \\ \hyperlink{structkblib_1_1detail_1_1on__destroy}{on\+\_\+destroy}\& \hyperlink{structkblib_1_1detail_1_1on__destroy}{kblib\+::detail\+::on\+\_\+destroy}$<$ T, D $>$\+::operator= (\begin{DoxyParamCaption}\item[{\hyperlink{structkblib_1_1detail_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/\hyperlink{memory_8h}{memory.\+h}\end{DoxyCompactItemize}