\hypertarget{group__Efl__Future}{}\section{Efl future and promise.}
\label{group__Efl__Future}\index{Efl future and promise.@{Efl future and promise.}}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__Efl__Future__Event__Failure}{\+\_\+\+Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Failure}}
\item 
struct \mbox{\hyperlink{struct__Efl__Future__Event__Success}{\+\_\+\+Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Success}}
\item 
struct \mbox{\hyperlink{struct__Efl__Future__Event__Progress}{\+\_\+\+Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Progress}}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Efl__Future_gae6c354a2aac938e571c51a2b332382bd}\label{group__Efl__Future_gae6c354a2aac938e571c51a2b332382bd}} 
\#define {\bfseries \+\_\+\+E\+F\+L\+\_\+\+P\+R\+O\+M\+I\+S\+E\+\_\+\+E\+O\+\_\+\+C\+L\+A\+S\+S\+\_\+\+T\+Y\+PE}
\item 
\mbox{\Hypertarget{group__Efl__Future_ga2455503a07f80b12977459ef158e7d5c}\label{group__Efl__Future_ga2455503a07f80b12977459ef158e7d5c}} 
\#define {\bfseries E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+L\+A\+SS}~\mbox{\hyperlink{group__Efl__Future_ga491e32a072fa4e2d1a1bbfc3f948a0b1}{efl\+\_\+future\+\_\+class\+\_\+get}}()
\item 
\mbox{\Hypertarget{group__Efl__Future_gaf6075fd4d262e46f7f9597898ddc6b58}\label{group__Efl__Future_gaf6075fd4d262e46f7f9597898ddc6b58}} 
\#define \mbox{\hyperlink{group__Efl__Future_gaf6075fd4d262e46f7f9597898ddc6b58}{E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+F\+A\+I\+L\+U\+RE}}~(\&(\+\_\+\+E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+F\+A\+I\+L\+U\+RE))
\begin{DoxyCompactList}\small\item\em A future failed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Efl__Future_ga77bfc7ee3e4cc8bff7d9d30ba454768d}\label{group__Efl__Future_ga77bfc7ee3e4cc8bff7d9d30ba454768d}} 
\#define \mbox{\hyperlink{group__Efl__Future_ga77bfc7ee3e4cc8bff7d9d30ba454768d}{E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+S\+U\+C\+C\+E\+SS}}~(\&(\+\_\+\+E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+S\+U\+C\+C\+E\+SS))
\begin{DoxyCompactList}\small\item\em A future succeeded. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Efl__Future_ga66495fad6f74d43cf80da249a2feead8}\label{group__Efl__Future_ga66495fad6f74d43cf80da249a2feead8}} 
\#define \mbox{\hyperlink{group__Efl__Future_ga66495fad6f74d43cf80da249a2feead8}{E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+P\+R\+O\+G\+R\+E\+SS}}~(\&(\+\_\+\+E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+P\+R\+O\+G\+R\+E\+SS))
\begin{DoxyCompactList}\small\item\em A future progressed. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Efl__Future_ga73c205ad3341ab6989095829175f95a4}\label{group__Efl__Future_ga73c205ad3341ab6989095829175f95a4}} 
typedef \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} {\bfseries Efl\+\_\+\+Promise}
\item 
\mbox{\Hypertarget{group__Efl__Future_ga8013bb6616bb1f631ab121fc8f338117}\label{group__Efl__Future_ga8013bb6616bb1f631ab121fc8f338117}} 
typedef struct \mbox{\hyperlink{struct__Efl__Future__Event__Failure}{\+\_\+\+Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Failure}} \mbox{\hyperlink{group__Efl__Future_ga8013bb6616bb1f631ab121fc8f338117}{Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Failure}}
\begin{DoxyCompactList}\small\item\em Parameter passed in event callbacks in case of future failure to proceed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Efl__Future_gaebd50f673dca15cf35229886c8c2c9cb}\label{group__Efl__Future_gaebd50f673dca15cf35229886c8c2c9cb}} 
typedef struct \mbox{\hyperlink{struct__Efl__Future__Event__Success}{\+\_\+\+Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Success}} \mbox{\hyperlink{group__Efl__Future_gaebd50f673dca15cf35229886c8c2c9cb}{Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Success}}
\begin{DoxyCompactList}\small\item\em Parameter passed in event callbacks in case of future succeeding to proceed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Efl__Future_ga0dd7c09c5e12d029c3b9dd0030bc0a16}\label{group__Efl__Future_ga0dd7c09c5e12d029c3b9dd0030bc0a16}} 
typedef struct \mbox{\hyperlink{struct__Efl__Future__Event__Progress}{\+\_\+\+Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Progress}} \mbox{\hyperlink{group__Efl__Future_ga0dd7c09c5e12d029c3b9dd0030bc0a16}{Efl\+\_\+\+Future\+\_\+\+Event\+\_\+\+Progress}}
\begin{DoxyCompactList}\small\item\em Parameter passed in event callbacks while a future is progressing a request. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Efl__Future_gae072008f538e98b723fffb27c0946b67}\label{group__Efl__Future_gae072008f538e98b723fffb27c0946b67}} 
typedef \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} \mbox{\hyperlink{group__Efl__Future_gae072008f538e98b723fffb27c0946b67}{Efl\+\_\+\+Promise}}
\begin{DoxyCompactList}\small\item\em The type of Efl Promise used in asynchronous operation, the write side of a promise. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
E\+W\+A\+PI const \mbox{\hyperlink{group__Eo_ga4f7483d7c5a34a3b81d8f8467fdd566a}{Efl\+\_\+\+Class}} $\ast$ \mbox{\hyperlink{group__Efl__Future_ga491e32a072fa4e2d1a1bbfc3f948a0b1}{efl\+\_\+future\+\_\+class\+\_\+get}} (void)
\item 
E\+O\+A\+PI \mbox{\hyperlink{group__Eo_ga9f7f84e0587bd21a520d8cf6deba1dae}{Efl\+\_\+\+Future}} $\ast$ \mbox{\hyperlink{group__Efl__Future_ga011dec58be6adc746beb5158a1e0342b}{efl\+\_\+future\+\_\+then}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj, \mbox{\hyperlink{group__Eo_ga9bc76a6826ab748d9d798953d46fa88f}{Efl\+\_\+\+Event\+\_\+\+Cb}} success, \mbox{\hyperlink{group__Eo_ga9bc76a6826ab748d9d798953d46fa88f}{Efl\+\_\+\+Event\+\_\+\+Cb}} failure, \mbox{\hyperlink{group__Eo_ga9bc76a6826ab748d9d798953d46fa88f}{Efl\+\_\+\+Event\+\_\+\+Cb}} progress, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Add sets of callbacks to handle the progress and the result of a future. \end{DoxyCompactList}\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Efl__Future_ga9119f70176924dedeff01feb64c6e5f6}{efl\+\_\+future\+\_\+cancel}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em Cancel the need for that specific future. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{group__Efl__Future_ga43f2c2545e3c811c050d839807ead8c6}{efl\+\_\+future\+\_\+use}} (\mbox{\hyperlink{group__Eo_ga9f7f84e0587bd21a520d8cf6deba1dae}{Efl\+\_\+\+Future}} $\ast$$\ast$storage, \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$future)
\begin{DoxyCompactList}\small\item\em To be used in conjunction with when you plan to use efl\+\_\+future\+\_\+cancel. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Eina__Error__Group_ga95b3cbb33e987e7d92a81ea785001686}{Eina\+\_\+\+Error}} \mbox{\hyperlink{group__Efl__Future_ga48bf50e79071bb9d046ea65e24167e79}{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}}
\begin{DoxyCompactList}\small\item\em The error identifier corresponding to a future being canceled. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Efl__Future_ga946c3898f3f65bf3d6a547fe796e3882}\label{group__Efl__Future_ga946c3898f3f65bf3d6a547fe796e3882}} 
E\+O\+A\+PI const \mbox{\hyperlink{struct__Efl__Event__Description}{Efl\+\_\+\+Event\+\_\+\+Description}} {\bfseries \+\_\+\+E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+F\+A\+I\+L\+U\+RE}
\item 
\mbox{\Hypertarget{group__Efl__Future_ga7e6b2e0443bc77a34497732676b09225}\label{group__Efl__Future_ga7e6b2e0443bc77a34497732676b09225}} 
E\+O\+A\+PI const \mbox{\hyperlink{struct__Efl__Event__Description}{Efl\+\_\+\+Event\+\_\+\+Description}} {\bfseries \+\_\+\+E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+S\+U\+C\+C\+E\+SS}
\item 
\mbox{\Hypertarget{group__Efl__Future_ga94129e64d0e01d4be0ba917f4c249897}\label{group__Efl__Future_ga94129e64d0e01d4be0ba917f4c249897}} 
E\+O\+A\+PI const \mbox{\hyperlink{struct__Efl__Event__Description}{Efl\+\_\+\+Event\+\_\+\+Description}} {\bfseries \+\_\+\+E\+F\+L\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+E\+V\+E\+N\+T\+\_\+\+P\+R\+O\+G\+R\+E\+SS}
\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Error__Group_ga95b3cbb33e987e7d92a81ea785001686}{Eina\+\_\+\+Error}} \mbox{\hyperlink{group__Efl__Future_gaaf937f7e2f4af673e90dcb5c98a4800c}{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}}
\begin{DoxyCompactList}\small\item\em The error identifier corresponding to a future being canceled. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


\subsection{Function Documentation}
\mbox{\Hypertarget{group__Efl__Future_ga491e32a072fa4e2d1a1bbfc3f948a0b1}\label{group__Efl__Future_ga491e32a072fa4e2d1a1bbfc3f948a0b1}} 
\index{Efl future and promise.@{Efl future and promise.}!efl\+\_\+future\+\_\+class\+\_\+get@{efl\+\_\+future\+\_\+class\+\_\+get}}
\index{efl\+\_\+future\+\_\+class\+\_\+get@{efl\+\_\+future\+\_\+class\+\_\+get}!Efl future and promise.@{Efl future and promise.}}
\subsubsection{\texorpdfstring{efl\+\_\+future\+\_\+class\+\_\+get()}{efl\_future\_class\_get()}}
{\footnotesize\ttfamily E\+W\+A\+PI const \mbox{\hyperlink{group__Eo_ga4f7483d7c5a34a3b81d8f8467fdd566a}{Efl\+\_\+\+Class}}$\ast$ efl\+\_\+future\+\_\+class\+\_\+get (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}

\begin{DoxySince}{Since}
1.\+19 
\end{DoxySince}
\mbox{\Hypertarget{group__Efl__Future_ga011dec58be6adc746beb5158a1e0342b}\label{group__Efl__Future_ga011dec58be6adc746beb5158a1e0342b}} 
\index{Efl future and promise.@{Efl future and promise.}!efl\+\_\+future\+\_\+then@{efl\+\_\+future\+\_\+then}}
\index{efl\+\_\+future\+\_\+then@{efl\+\_\+future\+\_\+then}!Efl future and promise.@{Efl future and promise.}}
\subsubsection{\texorpdfstring{efl\+\_\+future\+\_\+then()}{efl\_future\_then()}}
{\footnotesize\ttfamily E\+O\+A\+PI \mbox{\hyperlink{group__Eo_ga9f7f84e0587bd21a520d8cf6deba1dae}{Efl\+\_\+\+Future}}$\ast$ efl\+\_\+future\+\_\+then (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Eo_ga9bc76a6826ab748d9d798953d46fa88f}{Efl\+\_\+\+Event\+\_\+\+Cb}}}]{success,  }\item[{\mbox{\hyperlink{group__Eo_ga9bc76a6826ab748d9d798953d46fa88f}{Efl\+\_\+\+Event\+\_\+\+Cb}}}]{failure,  }\item[{\mbox{\hyperlink{group__Eo_ga9bc76a6826ab748d9d798953d46fa88f}{Efl\+\_\+\+Event\+\_\+\+Cb}}}]{progress,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Add sets of callbacks to handle the progress and the result of a future. 

callbacks are called depending on the outcome of the promise related to the future.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em success} & the callback to call in case of a succesful computation from the promise \\
\hline
\mbox{\tt in}  & {\em failure} & the callback to call in case of a failure to deliver from the promise \\
\hline
\mbox{\tt in}  & {\em progress} & the callback to call during the progression of the the promise, this is optional \\
\hline
\mbox{\tt in}  & {\em data} & additional data to pass to the callback\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Return a new future when the callback has been successfully added pointing to the next request being processed during the future success, failure or progress callback (You can reference count the next promise to defer the result and make it asynchronous too. This future can be ignored.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
except if you do reference count the Efl.\+Future object, you can only call once this function. 
\end{DoxyNote}
\mbox{\Hypertarget{group__Efl__Future_ga9119f70176924dedeff01feb64c6e5f6}\label{group__Efl__Future_ga9119f70176924dedeff01feb64c6e5f6}} 
\index{Efl future and promise.@{Efl future and promise.}!efl\+\_\+future\+\_\+cancel@{efl\+\_\+future\+\_\+cancel}}
\index{efl\+\_\+future\+\_\+cancel@{efl\+\_\+future\+\_\+cancel}!Efl future and promise.@{Efl future and promise.}}
\subsubsection{\texorpdfstring{efl\+\_\+future\+\_\+cancel()}{efl\_future\_cancel()}}
{\footnotesize\ttfamily E\+O\+A\+PI void efl\+\_\+future\+\_\+cancel (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj }\end{DoxyParamCaption})}



Cancel the need for that specific future. 

This will trigger the failure of the future and may result in the promise stopping its computation as it will be notified when there is no more need for computing the request.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Efl__Future_ga43f2c2545e3c811c050d839807ead8c6}{efl\+\_\+future\+\_\+use}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+19 
\end{DoxySince}
\mbox{\Hypertarget{group__Efl__Future_ga43f2c2545e3c811c050d839807ead8c6}\label{group__Efl__Future_ga43f2c2545e3c811c050d839807ead8c6}} 
\index{Efl future and promise.@{Efl future and promise.}!efl\+\_\+future\+\_\+use@{efl\+\_\+future\+\_\+use}}
\index{efl\+\_\+future\+\_\+use@{efl\+\_\+future\+\_\+use}!Efl future and promise.@{Efl future and promise.}}
\subsubsection{\texorpdfstring{efl\+\_\+future\+\_\+use()}{efl\_future\_use()}}
{\footnotesize\ttfamily static void efl\+\_\+future\+\_\+use (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f7f84e0587bd21a520d8cf6deba1dae}{Efl\+\_\+\+Future}} $\ast$$\ast$}]{storage,  }\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{future }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



To be used in conjunction with when you plan to use efl\+\_\+future\+\_\+cancel. 

This function will store in $\ast$wref, obj and make sure that on failure or success of the future, it will be reset to N\+U\+LL. This guarantee that the pointer you are using will always be correct and that you do not have to worry about passing a dead pointer to efl\+\_\+future\+\_\+cancel.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt out}  & {\em storage} & Will be set to obj and tracked during all the lifetime of the future. \\
\hline
\mbox{\tt in}  & {\em future} & The future to remember about.\\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Efl__Future_ga9119f70176924dedeff01feb64c6e5f6}{efl\+\_\+future\+\_\+cancel}} 
\end{DoxySeeAlso}


References efl\+\_\+wref\+\_\+add().



\subsection{Variable Documentation}
\mbox{\Hypertarget{group__Efl__Future_ga48bf50e79071bb9d046ea65e24167e79}\label{group__Efl__Future_ga48bf50e79071bb9d046ea65e24167e79}} 
\index{Efl future and promise.@{Efl future and promise.}!E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL@{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}}
\index{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL@{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}!Efl future and promise.@{Efl future and promise.}}
\subsubsection{\texorpdfstring{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}{EINA\_ERROR\_FUTURE\_CANCEL}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Error__Group_ga95b3cbb33e987e7d92a81ea785001686}{Eina\+\_\+\+Error}} E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}



The error identifier corresponding to a future being canceled. 

\begin{DoxySince}{Since}
1.\+19 
\end{DoxySince}
\mbox{\Hypertarget{group__Efl__Future_gaaf937f7e2f4af673e90dcb5c98a4800c}\label{group__Efl__Future_gaaf937f7e2f4af673e90dcb5c98a4800c}} 
\index{Efl future and promise.@{Efl future and promise.}!E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL@{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}}
\index{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL@{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}!Efl future and promise.@{Efl future and promise.}}
\subsubsection{\texorpdfstring{E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}{EINA\_ERROR\_FUTURE\_CANCEL}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily E\+I\+N\+A\+\_\+\+E\+R\+R\+O\+R\+\_\+\+F\+U\+T\+U\+R\+E\+\_\+\+C\+A\+N\+C\+EL}



The error identifier corresponding to a future being canceled. 

\begin{DoxySince}{Since}
1.\+19 
\end{DoxySince}
