\hypertarget{struct_k_b_l_i_b___n_s_1_1default__move}{}\doxysection{KBLIB\+\_\+\+NS\+::default\+\_\+move\texorpdfstring{$<$}{<} Obj, movable, nothrow, copyable \texorpdfstring{$>$}{>} Struct Template Reference}
\label{struct_k_b_l_i_b___n_s_1_1default__move}\index{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$@{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$}}


Implements type erasure for move construction.  




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

\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__move_a320d5577f097f7a3bcce2c1a5c34d8a0}{default\+\_\+move}} () noexcept=default
\begin{DoxyCompactList}\small\item\em Constructs an object which does nothing. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__move_a4727299d28a97057ccc0815e0fa8ea2a}{default\+\_\+move}} (T $\ast$) noexcept
\begin{DoxyCompactList}\small\item\em Constructs an object which can move a T. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__move_a74c26fea77c6c65e0873ff8c5407bdcf}{move}} (void $\ast$dest, Obj $\ast$from) noexcept(nothrow) -\/$>$ Obj $\ast$
\begin{DoxyCompactList}\small\item\em Moves an object of previously-\/established type. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename Obj, bool movable, bool nothrow, bool copyable$>$\newline
struct KBLIB\+\_\+\+NS\+::default\+\_\+move$<$ Obj, movable, nothrow, copyable $>$}
Implements type erasure for move construction. 

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



\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1default__move_a320d5577f097f7a3bcce2c1a5c34d8a0}\label{struct_k_b_l_i_b___n_s_1_1default__move_a320d5577f097f7a3bcce2c1a5c34d8a0}} 
\index{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$@{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$}!default\_move@{default\_move}}
\index{default\_move@{default\_move}!KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$@{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$}}
\doxysubsubsection{\texorpdfstring{default\_move()}{default\_move()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$typename Obj , bool movable, bool nothrow, bool copyable$>$ \\
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__move}{KBLIB\+\_\+\+NS\+::default\+\_\+move}}$<$ Obj, movable, nothrow, copyable $>$\+::default\+\_\+move (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}}



Constructs an object which does nothing. 

\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1default__move_a4727299d28a97057ccc0815e0fa8ea2a}\label{struct_k_b_l_i_b___n_s_1_1default__move_a4727299d28a97057ccc0815e0fa8ea2a}} 
\index{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$@{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$}!default\_move@{default\_move}}
\index{default\_move@{default\_move}!KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$@{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$}}
\doxysubsubsection{\texorpdfstring{default\_move()}{default\_move()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$typename Obj , bool movable, bool nothrow, bool copyable$>$ \\
template$<$typename T $>$ \\
\mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__move}{KBLIB\+\_\+\+NS\+::default\+\_\+move}}$<$ Obj, movable, nothrow, copyable $>$\+::default\+\_\+move (\begin{DoxyParamCaption}\item[{T $\ast$}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}, {\ttfamily [noexcept]}}



Constructs an object which can move a T. 



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



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{struct_k_b_l_i_b___n_s_1_1default__move_a74c26fea77c6c65e0873ff8c5407bdcf}\label{struct_k_b_l_i_b___n_s_1_1default__move_a74c26fea77c6c65e0873ff8c5407bdcf}} 
\index{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$@{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$}!move@{move}}
\index{move@{move}!KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$@{KBLIB\_NS::default\_move$<$ Obj, movable, nothrow, copyable $>$}}
\doxysubsubsection{\texorpdfstring{move()}{move()}}
{\footnotesize\ttfamily template$<$typename Obj , bool movable, bool nothrow, bool copyable$>$ \\
auto \mbox{\hyperlink{struct_k_b_l_i_b___n_s_1_1default__move}{KBLIB\+\_\+\+NS\+::default\+\_\+move}}$<$ Obj, movable, nothrow, copyable $>$\+::move (\begin{DoxyParamCaption}\item[{void $\ast$}]{dest,  }\item[{Obj $\ast$}]{from }\end{DoxyParamCaption}) -\/$>$ Obj$\ast$ \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}



Moves an object of previously-\/established type. 



Definition at line \mbox{\hyperlink{poly__obj_8h_source_l00324}{324}} 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}
