\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e}{}\section{efl\+:\+:eina\+:\+:accessor$<$ T, typename std\+:\+:enable\+\_\+if$<$ std\+:\+:is\+\_\+base\+\_\+of$<$\+:\+:efl\+:\+:eo\+:\+:concrete, T $>$\+:\+:value, T $>$\+:\+:type $>$ Struct Template Reference}
\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a90125d6ec1b490f8e64cee58b4fbed1b}{}typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base}{accessor\+\_\+common\+\_\+base}$<$ T $>$ {\bfseries \+\_\+base\+\_\+type}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a90125d6ec1b490f8e64cee58b4fbed1b}

\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a8a2886a506ab656a432726160cc778fa}{}typedef \hyperlink{structefl_1_1eina_1_1accessor}{accessor}$<$ T $>$ {\bfseries \+\_\+self\+\_\+type}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a8a2886a506ab656a432726160cc778fa}

\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a6af92df820964f1ff9b40bbcb87cfdbc}{}typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base_a5790b4088729a4e1a4e94afe9ccd828a}{\+\_\+base\+\_\+type\+::key\+\_\+type} {\bfseries key\+\_\+type}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a6af92df820964f1ff9b40bbcb87cfdbc}

\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a21c0fb057db009c9b2cdd21e6bc557d5}{}typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base_a6e2ffb342b9faf5e4506ac86183ea155}{\+\_\+base\+\_\+type\+::mapped\+\_\+type} {\bfseries mapped\+\_\+type}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a21c0fb057db009c9b2cdd21e6bc557d5}

\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_af13a25c2c0d3f0848c6002b556a9d655}{}typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base_a5217847f82807ab684dab59ce112a298}{\+\_\+base\+\_\+type\+::value\+\_\+type} {\bfseries value\+\_\+type}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_af13a25c2c0d3f0848c6002b556a9d655}

\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a2e112d54aaba84af847229195931016e}{}typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base_abf281f8df58aa16de7fee5d5d4d4ad50}{\+\_\+base\+\_\+type\+::size\+\_\+type} {\bfseries size\+\_\+type}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a2e112d54aaba84af847229195931016e}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a9de2dc163b43de8812c0291b369bad93}{accessor} ()
\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
\hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a9897f6fcf88ff9877d00a610a03af2db}{accessor} (\hyperlink{group__Eina__Accessor__Group_ga65199ea5201a1867471028477dc26744}{Eina\+\_\+\+Accessor} $\ast$impl)
\begin{DoxyCompactList}\small\item\em Create an accessor object that wraps the given Eina accessor. \end{DoxyCompactList}\item 
\hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_aecec1cea00553c617c5a3452084c68dc}{accessor} (\hyperlink{structefl_1_1eina_1_1accessor}{\+\_\+self\+\_\+type} const \&other)
\begin{DoxyCompactList}\small\item\em Copy constructor. \end{DoxyCompactList}\item 
\hyperlink{structefl_1_1eina_1_1accessor}{\+\_\+self\+\_\+type} \& \hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_af8fc3d0129b4b7bc6ab441138cbace1d}{operator=} (\hyperlink{structefl_1_1eina_1_1accessor}{\+\_\+self\+\_\+type} const \&other)
\begin{DoxyCompactList}\small\item\em Assignment Operator. \end{DoxyCompactList}\item 
\hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_ac90e00d688fda03310cb4c54ce586b15}{$\sim$accessor} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
\hyperlink{structefl_1_1eina_1_1accessor__common__base_a6e2ffb342b9faf5e4506ac86183ea155}{mapped\+\_\+type} \hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_af65a7ea0d08eb0e175c49d06cad67485}{operator\mbox{[}$\,$\mbox{]}} (\hyperlink{structefl_1_1eina_1_1accessor__common__base_abf281f8df58aa16de7fee5d5d4d4ad50}{size\+\_\+type} i) const 
\begin{DoxyCompactList}\small\item\em Retrieve the data of the accessor at a given position. \end{DoxyCompactList}\item 
void \hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a81d8cfa2ec2057ded8e80ce506f0dc28}{swap} (\hyperlink{structefl_1_1eina_1_1accessor}{\+\_\+self\+\_\+type} \&other)
\begin{DoxyCompactList}\small\item\em Swap content between both objects. \end{DoxyCompactList}\item 
\hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a5e84fbd71a66bd4d74222d72fb9ef4d3}{operator bool} () const 
\begin{DoxyCompactList}\small\item\em Cast to {\ttfamily boolean} based on the wrapped {\ttfamily Eina\+\_\+\+Accessor}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Constructor \& Destructor Documentation}
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a9de2dc163b43de8812c0291b369bad93}{}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}!accessor@{accessor}}
\index{accessor@{accessor}!efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsubsection[{accessor()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::{\bf efl\+::eo\+::concrete}, T $>$\+::{\bf value}, T $>$\+::type $>$\+::{\bf accessor} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a9de2dc163b43de8812c0291b369bad93}


Default constructor. 

Creates an empty accessor. \hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a9897f6fcf88ff9877d00a610a03af2db}{}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}!accessor@{accessor}}
\index{accessor@{accessor}!efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsubsection[{accessor(\+Eina\+\_\+\+Accessor $\ast$impl)}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::{\bf efl\+::eo\+::concrete}, T $>$\+::{\bf value}, T $>$\+::type $>$\+::{\bf accessor} (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Accessor} $\ast$}]{impl}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a9897f6fcf88ff9877d00a610a03af2db}


Create an accessor object that wraps the given Eina accessor. 


\begin{DoxyParams}{Parameters}
{\em impl} & Native {\ttfamily Eina\+\_\+\+Accessor} to be wrapped.\\
\hline
\end{DoxyParams}
This constructor creates an accessor object that wraps the given Eina\+\_\+\+Accessor and provides access to the data pointed by it.

\begin{DoxyWarning}{Warning}
It is important to note that the created accessor object gains ownership of the given handle, deallocating it at destruction time. 
\end{DoxyWarning}
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_aecec1cea00553c617c5a3452084c68dc}{}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}!accessor@{accessor}}
\index{accessor@{accessor}!efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsubsection[{accessor(\+\_\+self\+\_\+type const \&other)}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::{\bf efl\+::eo\+::concrete}, T $>$\+::{\bf value}, T $>$\+::type $>$\+::{\bf accessor} (
\begin{DoxyParamCaption}
\item[{{\bf \+\_\+self\+\_\+type} const \&}]{other}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_aecec1cea00553c617c5a3452084c68dc}


Copy constructor. 

Creates a copy of the given accessor object. 
\begin{DoxyParams}{Parameters}
{\em other} & Other accessor object.\\
\hline
\end{DoxyParams}
This constructor clones the internal {\ttfamily Eina\+\_\+\+Accessor} of the given accessor object, so that the newly created object can be used freely. \hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_ac90e00d688fda03310cb4c54ce586b15}{}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}!````~accessor@{$\sim$accessor}}
\index{````~accessor@{$\sim$accessor}!efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsubsection[{$\sim$accessor()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::{\bf efl\+::eo\+::concrete}, T $>$\+::{\bf value}, T $>$\+::type $>$\+::$\sim${\bf accessor} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_ac90e00d688fda03310cb4c54ce586b15}


Destructor. 

Free the internal {\ttfamily Eina\+\_\+\+Acessor}. 

\subsection{Member Function Documentation}
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_af8fc3d0129b4b7bc6ab441138cbace1d}{}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}!operator=@{operator=}}
\index{operator=@{operator=}!efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsubsection[{operator=(\+\_\+self\+\_\+type const \&other)}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf \+\_\+self\+\_\+type}\& {\bf efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::{\bf efl\+::eo\+::concrete}, T $>$\+::{\bf value}, T $>$\+::type $>$\+::operator= (
\begin{DoxyParamCaption}
\item[{{\bf \+\_\+self\+\_\+type} const \&}]{other}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_af8fc3d0129b4b7bc6ab441138cbace1d}


Assignment Operator. 

Replace the current content. 
\begin{DoxyParams}{Parameters}
{\em other} & Other accessor object. \\
\hline
\end{DoxyParams}

\begin{DoxyExceptions}{Exceptions}
{\em $<$tt$>$eina\+::system\+\_\+error$<$/tt$>$} & if the Eina accessor could not be cloned.\\
\hline
\end{DoxyExceptions}
This operator replaces the current native Eina accessor by a copy of the native accessor inside the given object. \hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_af65a7ea0d08eb0e175c49d06cad67485}{}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}!operator\mbox{[}$\,$\mbox{]}@{operator[]}}
\index{operator\mbox{[}$\,$\mbox{]}@{operator[]}!efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsubsection[{operator[](size\+\_\+type i) const }]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf mapped\+\_\+type} {\bf efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::{\bf efl\+::eo\+::concrete}, T $>$\+::{\bf value}, T $>$\+::type $>$\+::operator\mbox{[}$\,$\mbox{]} (
\begin{DoxyParamCaption}
\item[{{\bf size\+\_\+type}}]{i}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_af65a7ea0d08eb0e175c49d06cad67485}


Retrieve the data of the accessor at a given position. 


\begin{DoxyParams}{Parameters}
{\em i} & The position of the element. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Constant reference to the retrieved data. 
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em $<$tt$>$eina\+::system\+\_\+error$<$/tt$>$} & if the given element could not be retrieved.\\
\hline
\end{DoxyExceptions}
This operator retrieves a constant reference to the element at the given position. If the element could not be retrieved an {\ttfamily eina\+::system\+\_\+error} is thrown. 

References eina\+\_\+accessor\+\_\+data\+\_\+get(), eo\+\_\+ref(), and efl\+::eina\+::get\+\_\+error\+\_\+code().

\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a81d8cfa2ec2057ded8e80ce506f0dc28}{}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}!swap@{swap}}
\index{swap@{swap}!efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsubsection[{swap(\+\_\+self\+\_\+type \&other)}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void {\bf efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::{\bf efl\+::eo\+::concrete}, T $>$\+::{\bf value}, T $>$\+::type $>$\+::swap (
\begin{DoxyParamCaption}
\item[{{\bf \+\_\+self\+\_\+type} \&}]{other}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a81d8cfa2ec2057ded8e80ce506f0dc28}


Swap content between both objects. 


\begin{DoxyParams}{Parameters}
{\em other} & Other accessor object.\\
\hline
\end{DoxyParams}
This member function swaps the internal {\ttfamily Eina\+\_\+\+Acessor} with the given accessor object. 

References efl\+::eina\+::swap().

\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a5e84fbd71a66bd4d74222d72fb9ef4d3}{}\index{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}!operator bool@{operator bool}}
\index{operator bool@{operator bool}!efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$@{efl\+::eina\+::accessor$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::efl\+::eo\+::concrete, T $>$\+::value, T $>$\+::type $>$}}
\subsubsection[{operator bool() const }]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ std\+::is\+\_\+base\+\_\+of$<$\+::{\bf efl\+::eo\+::concrete}, T $>$\+::{\bf value}, T $>$\+::type $>$\+::operator bool (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__base__of_3_3c782d641e5cfbfa23250dbc97dfae9e_a5e84fbd71a66bd4d74222d72fb9ef4d3}


Cast to {\ttfamily boolean} based on the wrapped {\ttfamily Eina\+\_\+\+Accessor}. 

\begin{DoxyReturn}{Returns}
{\ttfamily true} if the wrapped handle is not {\ttfamily N\+U\+L\+L}, {\ttfamily false} otherwise.
\end{DoxyReturn}
Boolean typecast overload for easy validation of the accessor object. Returns {\ttfamily false} if it does not have an internal {\ttfamily Eina\+\_\+\+Accessor}, i.\+e. if the current handle is not {\ttfamily N\+U\+L\+L}. 