\hypertarget{structkblib_1_1default__move}{}\doxysection{kblib\+::default\+\_\+move\texorpdfstring{$<$}{<} Obj, movable, nothrow, copyable \texorpdfstring{$>$}{>} Struct Template Reference}
\label{structkblib_1_1default__move}\index{kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$@{kblib::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{structkblib_1_1default__move_ac2b8e153b7edf8516736c2c2aed332af}{default\+\_\+move}} () noexcept=default
\begin{DoxyCompactList}\small\item\em Constructs an object which does nothing. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\\mbox{\hyperlink{structkblib_1_1default__move_ad4d53bb879ab282d61ef5d52c5d29fa6}{default\+\_\+move}} (T $\ast$) noexcept
\begin{DoxyCompactList}\small\item\em Constructs an object which can move a T. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{structkblib_1_1default__move_ab7dcb8ef56bd4a64387291a048013a23}{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\+::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{structkblib_1_1default__move_ac2b8e153b7edf8516736c2c2aed332af}\label{structkblib_1_1default__move_ac2b8e153b7edf8516736c2c2aed332af}} 
\index{kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$@{kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$}!default\_move@{default\_move}}
\index{default\_move@{default\_move}!kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$@{kblib::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{structkblib_1_1default__move}{kblib\+::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{structkblib_1_1default__move_ad4d53bb879ab282d61ef5d52c5d29fa6}\label{structkblib_1_1default__move_ad4d53bb879ab282d61ef5d52c5d29fa6}} 
\index{kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$@{kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$}!default\_move@{default\_move}}
\index{default\_move@{default\_move}!kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$@{kblib::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{structkblib_1_1default__move}{kblib\+::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{structkblib_1_1default__move_ab7dcb8ef56bd4a64387291a048013a23}\label{structkblib_1_1default__move_ab7dcb8ef56bd4a64387291a048013a23}} 
\index{kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$@{kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$}!move@{move}}
\index{move@{move}!kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$@{kblib::default\_move$<$ Obj, movable, nothrow, copyable $>$}}
\doxysubsubsection{\texorpdfstring{move()}{move()}}
{\footnotesize\ttfamily template$<$typename Obj , bool movable, bool nothrow, bool copyable$>$ \\
auto \mbox{\hyperlink{structkblib_1_1default__move}{kblib\+::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}
