\doxysection{open\+\_\+cpp\+\_\+utils\+::optional\texorpdfstring{$<$}{<} T \texorpdfstring{$>$}{>} Class Template Reference}
\hypertarget{classopen__cpp__utils_1_1optional}{}\label{classopen__cpp__utils_1_1optional}\index{open\_cpp\_utils::optional$<$ T $>$@{open\_cpp\_utils::optional$<$ T $>$}}
\doxysubsubsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_ab3d20652ad7dfd7d7a11973c05c785c5}\label{classopen__cpp__utils_1_1optional_ab3d20652ad7dfd7d7a11973c05c785c5} 
using {\bfseries value\+\_\+type} = T
\end{DoxyCompactItemize}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_ab8305b72e074cf245a302f627891ab87}\label{classopen__cpp__utils_1_1optional_ab8305b72e074cf245a302f627891ab87} 
{\bfseries optional} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_af1f394bae071f8bb7eaaf5fc95b86060}\label{classopen__cpp__utils_1_1optional_af1f394bae071f8bb7eaaf5fc95b86060} 
{\bfseries optional} (value\+\_\+type \&\&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a206276b56641e62ac73b3474dc951d00}\label{classopen__cpp__utils_1_1optional_a206276b56641e62ac73b3474dc951d00} 
{\bfseries optional} (const \mbox{\hyperlink{classopen__cpp__utils_1_1optional}{optional}} \&other)=default
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a0482994c47410409a71cf81741660661}\label{classopen__cpp__utils_1_1optional_a0482994c47410409a71cf81741660661} 
{\bfseries optional} (\mbox{\hyperlink{classopen__cpp__utils_1_1optional}{optional}} \&\&other)=default
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a3b5dfc7f6d5b2eb902940db8751acf13}\label{classopen__cpp__utils_1_1optional_a3b5dfc7f6d5b2eb902940db8751acf13} 
\mbox{\hyperlink{classopen__cpp__utils_1_1optional}{optional}} \& {\bfseries operator=} (const \mbox{\hyperlink{classopen__cpp__utils_1_1optional}{optional}} \&other)=default
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_ac604979f460d374e23ccafbe68841a49}\label{classopen__cpp__utils_1_1optional_ac604979f460d374e23ccafbe68841a49} 
\mbox{\hyperlink{classopen__cpp__utils_1_1optional}{optional}} \& {\bfseries operator=} (\mbox{\hyperlink{classopen__cpp__utils_1_1optional}{optional}} \&\&other)=default
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a47194520a19285ba3434c8d8a45207c2}\label{classopen__cpp__utils_1_1optional_a47194520a19285ba3434c8d8a45207c2} 
\mbox{\hyperlink{classopen__cpp__utils_1_1optional}{optional}} \& {\bfseries operator=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a84262690f2a0f3cb189dccec16e85823}\label{classopen__cpp__utils_1_1optional_a84262690f2a0f3cb189dccec16e85823} 
\mbox{\hyperlink{classopen__cpp__utils_1_1optional}{optional}} \& {\bfseries operator=} (value\+\_\+type \&\&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a0daa7ff3b4a6dd8abb4def8a49792174}\label{classopen__cpp__utils_1_1optional_a0daa7ff3b4a6dd8abb4def8a49792174} 
value\+\_\+type \& {\bfseries operator+=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a63fbf1f55b7492e462e9d11b45d75b11}\label{classopen__cpp__utils_1_1optional_a63fbf1f55b7492e462e9d11b45d75b11} 
value\+\_\+type \& {\bfseries operator-\/=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a6d65605d20e0d013427c5a54883cfb8d}\label{classopen__cpp__utils_1_1optional_a6d65605d20e0d013427c5a54883cfb8d} 
value\+\_\+type \& {\bfseries operator\texorpdfstring{$\ast$}{*}=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a315adcabbe5fbf34ec6b394f3f437ef8}\label{classopen__cpp__utils_1_1optional_a315adcabbe5fbf34ec6b394f3f437ef8} 
value\+\_\+type \& {\bfseries operator/=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_ab035dba77f01a5480997091833da634f}\label{classopen__cpp__utils_1_1optional_ab035dba77f01a5480997091833da634f} 
value\+\_\+type \& {\bfseries operator\%=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a471b368ae73215501af04f97825ee352}\label{classopen__cpp__utils_1_1optional_a471b368ae73215501af04f97825ee352} 
value\+\_\+type \& {\bfseries operator$<$$<$=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_af116ef225312775d62bb9bf3b9ac26ae}\label{classopen__cpp__utils_1_1optional_af116ef225312775d62bb9bf3b9ac26ae} 
value\+\_\+type \& {\bfseries operator$>$$>$=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a1becf6a79b1332eacf449b64bc97cfbd}\label{classopen__cpp__utils_1_1optional_a1becf6a79b1332eacf449b64bc97cfbd} 
value\+\_\+type \& {\bfseries operator\texorpdfstring{$\vert$}{|}=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a166a9c5cbe7230a86d62a2c22c761b3f}\label{classopen__cpp__utils_1_1optional_a166a9c5cbe7230a86d62a2c22c761b3f} 
value\+\_\+type \& {\bfseries operator\&=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a9debaa0adb22300846e351bf2de7f40c}\label{classopen__cpp__utils_1_1optional_a9debaa0adb22300846e351bf2de7f40c} 
value\+\_\+type \& {\bfseries operator\texorpdfstring{$^\wedge$}{\string^}=} (const value\+\_\+type \&data)
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a2b4293f79320a4d69ead9139d1f7ffd0}\label{classopen__cpp__utils_1_1optional_a2b4293f79320a4d69ead9139d1f7ffd0} 
bool {\bfseries operator()} () const
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a87859eeb97115aba97bf13d8570f1dd3}\label{classopen__cpp__utils_1_1optional_a87859eeb97115aba97bf13d8570f1dd3} 
{\bfseries operator value\+\_\+type \&} ()
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_ac46fab9c48ac54596daf3ad0a46e92dc}\label{classopen__cpp__utils_1_1optional_ac46fab9c48ac54596daf3ad0a46e92dc} 
{\bfseries operator const value\+\_\+type \&} () const
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_ab8fd12908a6a5efdebf057ffc72859d4}\label{classopen__cpp__utils_1_1optional_ab8fd12908a6a5efdebf057ffc72859d4} 
value\+\_\+type \texorpdfstring{$\ast$}{*} {\bfseries operator-\/$>$} ()
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_aced680841823e7d77155b334ac6cd62c}\label{classopen__cpp__utils_1_1optional_aced680841823e7d77155b334ac6cd62c} 
const value\+\_\+type \texorpdfstring{$\ast$}{*} {\bfseries operator-\/$>$} () const
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_ac646f9cc1ddd3aaf7c116c70a3aaa381}\label{classopen__cpp__utils_1_1optional_ac646f9cc1ddd3aaf7c116c70a3aaa381} 
value\+\_\+type \& {\bfseries operator\texorpdfstring{$\ast$}{*}} ()
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_ab064435251b5054c0aa703841afb7a94}\label{classopen__cpp__utils_1_1optional_ab064435251b5054c0aa703841afb7a94} 
const value\+\_\+type \& {\bfseries operator\texorpdfstring{$\ast$}{*}} () const
\item 
\Hypertarget{classopen__cpp__utils_1_1optional_a43d4f7ad14d788c1c53678036a346336}\label{classopen__cpp__utils_1_1optional_a43d4f7ad14d788c1c53678036a346336} 
void {\bfseries reset} ()
\end{DoxyCompactItemize}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
optional.\+h\end{DoxyCompactItemize}
