\hypertarget{group__Eina__Cxx__Optional__Group}{}\section{Optional Value}
\label{group__Eina__Cxx__Optional__Group}\index{Optional Value@{Optional Value}}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structefl_1_1eina_1_1optional}{efl\+::eina\+::optional$<$ T $>$}}
\begin{DoxyCompactList}\small\item\em This class manages an optional contained value, i.\+e. \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{structefl_1_1eina_1_1optional_3_01T_01_6_01_4}{efl\+::eina\+::optional$<$ T \& $>$}}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_ga31d5c987c8dae1c3f7bbd19fc81b3324}\label{group__Eina__Cxx__Optional__Group_ga31d5c987c8dae1c3f7bbd19fc81b3324}} 
{\footnotesize template$<$typename T $>$ }\\void {\bfseries efl\+::eina\+::adl\+\_\+swap} (T \&lhs, T \&rhs)
\item 
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_ga150e23053b4fecbcbc3d6aa01aa66a0c}\label{group__Eina__Cxx__Optional__Group_ga150e23053b4fecbcbc3d6aa01aa66a0c}} 
{\footnotesize template$<$typename T $>$ }\\constexpr \mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ typename std\+::decay$<$ T $>$\+::type $>$ {\bfseries efl\+::eina\+::make\+\_\+optional} (T \&\&\mbox{\hyperlink{structefl_1_1eina_1_1value}{value}})
\item 
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_gaee22032ff47ec06ec71e5a902ec6a201}\label{group__Eina__Cxx__Optional__Group_gaee22032ff47ec06ec71e5a902ec6a201}} 
{\footnotesize template$<$typename T $>$ }\\void \mbox{\hyperlink{group__Eina__Cxx__Optional__Group_gaee22032ff47ec06ec71e5a902ec6a201}{efl\+::eina\+::swap}} (\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ \&lhs, \mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ \&rhs)
\begin{DoxyCompactList}\small\item\em Swap content with another {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\bool \mbox{\hyperlink{group__Eina__Cxx__Optional__Group_ga6dc1517e9dfb20ea1f1414dd3f675ef0}{efl\+::eina\+::operator==}} (\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&lhs, \mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&rhs)
\begin{DoxyCompactList}\small\item\em Check if both {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object are equal. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\bool \mbox{\hyperlink{group__Eina__Cxx__Optional__Group_ga27d2cfc37594f6f8418fa45b9a78842b}{efl\+::eina\+::operator!=}} (\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&lhs, \mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&rhs)
\begin{DoxyCompactList}\small\item\em Check if the {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects are different. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\bool \mbox{\hyperlink{group__Eina__Cxx__Optional__Group_ga3cb5a39205f6751ef29b3d3b4ec5c8b7}{efl\+::eina\+::operator$<$}} (\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&lhs, \mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&rhs)
\begin{DoxyCompactList}\small\item\em Less than comparison between {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\bool \mbox{\hyperlink{group__Eina__Cxx__Optional__Group_ga1e28c2ca458e1a2c8b3b52d0ee0ef09f}{efl\+::eina\+::operator$<$=}} (\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&lhs, \mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&rhs)
\begin{DoxyCompactList}\small\item\em Less than or equal comparison between {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\bool \mbox{\hyperlink{group__Eina__Cxx__Optional__Group_ga711cbeea9515cae6120126efd1cb59ec}{efl\+::eina\+::operator$>$}} (\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&lhs, \mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&rhs)
\begin{DoxyCompactList}\small\item\em More than comparison between {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\bool \mbox{\hyperlink{group__Eina__Cxx__Optional__Group_gab7d9e34a19ac5656a89f2cd44ee7326b}{efl\+::eina\+::operator$>$=}} (\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&lhs, \mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&rhs)
\begin{DoxyCompactList}\small\item\em More than or equal comparison between {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


\subsection{Function Documentation}
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_ga6dc1517e9dfb20ea1f1414dd3f675ef0}\label{group__Eina__Cxx__Optional__Group_ga6dc1517e9dfb20ea1f1414dd3f675ef0}} 
\index{Optional Value@{Optional Value}!operator==@{operator==}}
\index{operator==@{operator==}!Optional Value@{Optional Value}}
\subsubsection{\texorpdfstring{operator==()}{operator==()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
bool efl\+::eina\+::operator== (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{lhs,  }\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{rhs }\end{DoxyParamCaption})}



Check if both {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object are equal. 


\begin{DoxyParams}{Parameters}
{\em lhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the left side of the expression. \\
\hline
{\em rhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the right side of the expression. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if both are objects are disengaged of if both objects are engaged and contain the same value, {\ttfamily false} in all other cases. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_ga27d2cfc37594f6f8418fa45b9a78842b}\label{group__Eina__Cxx__Optional__Group_ga27d2cfc37594f6f8418fa45b9a78842b}} 
\index{Optional Value@{Optional Value}!operator"!=@{operator"!=}}
\index{operator"!=@{operator"!=}!Optional Value@{Optional Value}}
\subsubsection{\texorpdfstring{operator"!=()}{operator!=()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
bool efl\+::eina\+::operator!= (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{lhs,  }\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{rhs }\end{DoxyParamCaption})}



Check if the {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects are different. 


\begin{DoxyParams}{Parameters}
{\em lhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the left side of the expression. \\
\hline
{\em rhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the right side of the expression. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The opposite of operator==(optional$<$\+T$>$ const\& lhs, optional$<$\+T$>$ const\& rhs). 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_ga3cb5a39205f6751ef29b3d3b4ec5c8b7}\label{group__Eina__Cxx__Optional__Group_ga3cb5a39205f6751ef29b3d3b4ec5c8b7}} 
\index{Optional Value@{Optional Value}!operator$<$@{operator$<$}}
\index{operator$<$@{operator$<$}!Optional Value@{Optional Value}}
\subsubsection{\texorpdfstring{operator$<$()}{operator<()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
bool efl\+::eina\+::operator$<$ (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{lhs,  }\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{rhs }\end{DoxyParamCaption})}



Less than comparison between {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects. 


\begin{DoxyParams}{Parameters}
{\em lhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the left side of the expression. \\
\hline
{\em rhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the right side of the expression. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if both objects are engaged and the contained value of {\ttfamily lhs} is less than the contained value of {\ttfamily rhs}, or if only {\ttfamily lhs} is disengaged. In all other cases returns {\ttfamily false}. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_ga1e28c2ca458e1a2c8b3b52d0ee0ef09f}\label{group__Eina__Cxx__Optional__Group_ga1e28c2ca458e1a2c8b3b52d0ee0ef09f}} 
\index{Optional Value@{Optional Value}!operator$<$=@{operator$<$=}}
\index{operator$<$=@{operator$<$=}!Optional Value@{Optional Value}}
\subsubsection{\texorpdfstring{operator$<$=()}{operator<=()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
bool efl\+::eina\+::operator$<$= (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{lhs,  }\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{rhs }\end{DoxyParamCaption})}



Less than or equal comparison between {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects. 


\begin{DoxyParams}{Parameters}
{\em lhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the left side of the expression. \\
\hline
{\em rhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the right side of the expression. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if {\ttfamily lhs} is disengaged or if both objects are engaged and the contained value of {\ttfamily lhs} is less than or equal to the contained value of {\ttfamily rhs}. In all other cases returns {\ttfamily false}. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_ga711cbeea9515cae6120126efd1cb59ec}\label{group__Eina__Cxx__Optional__Group_ga711cbeea9515cae6120126efd1cb59ec}} 
\index{Optional Value@{Optional Value}!operator$>$@{operator$>$}}
\index{operator$>$@{operator$>$}!Optional Value@{Optional Value}}
\subsubsection{\texorpdfstring{operator$>$()}{operator>()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
bool efl\+::eina\+::operator$>$ (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{lhs,  }\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{rhs }\end{DoxyParamCaption})}



More than comparison between {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects. 


\begin{DoxyParams}{Parameters}
{\em lhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the left side of the expression. \\
\hline
{\em rhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the right side of the expression. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if both objects are engaged and the contained value of {\ttfamily lhs} is more than the contained value of {\ttfamily rhs}, or if only {\ttfamily rhs} is disengaged. In all other cases returns {\ttfamily false}. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Eina__Cxx__Optional__Group_gab7d9e34a19ac5656a89f2cd44ee7326b}\label{group__Eina__Cxx__Optional__Group_gab7d9e34a19ac5656a89f2cd44ee7326b}} 
\index{Optional Value@{Optional Value}!operator$>$=@{operator$>$=}}
\index{operator$>$=@{operator$>$=}!Optional Value@{Optional Value}}
\subsubsection{\texorpdfstring{operator$>$=()}{operator>=()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
bool efl\+::eina\+::operator$>$= (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{lhs,  }\item[{\mbox{\hyperlink{structefl_1_1eina_1_1optional}{optional}}$<$ T $>$ const \&}]{rhs }\end{DoxyParamCaption})}



More than or equal comparison between {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} objects. 


\begin{DoxyParams}{Parameters}
{\em lhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the left side of the expression. \\
\hline
{\em rhs} & {\ttfamily \mbox{\hyperlink{structefl_1_1eina_1_1optional}{eina\+::optional}}} object at the right side of the expression. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if {\ttfamily rhs} is disengaged or if both objects are engaged and the contained value of {\ttfamily lhs} is more than or equal to the contained value of {\ttfamily rhs}. In all other cases returns {\ttfamily false}. 
\end{DoxyReturn}
