\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061}{}\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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061}\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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aacc4dff4ca5f969fa053049700f4c032}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aacc4dff4ca5f969fa053049700f4c032} 
typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base}{accessor\+\_\+common\+\_\+base}$<$ T $>$ {\bfseries \+\_\+base\+\_\+type}
\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aa7f9924eb54342c5d7525029697c23d5}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aa7f9924eb54342c5d7525029697c23d5} 
typedef \hyperlink{structefl_1_1eina_1_1accessor}{accessor}$<$ T $>$ {\bfseries \+\_\+self\+\_\+type}
\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a37f4ac577067cfaaba3c5ed99ad1a391}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a37f4ac577067cfaaba3c5ed99ad1a391} 
typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base_a5790b4088729a4e1a4e94afe9ccd828a}{\+\_\+base\+\_\+type\+::key\+\_\+type} {\bfseries key\+\_\+type}
\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a8ab414f8106e593f046c62967eaa0a61}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a8ab414f8106e593f046c62967eaa0a61} 
typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base_a6e2ffb342b9faf5e4506ac86183ea155}{\+\_\+base\+\_\+type\+::mapped\+\_\+type} {\bfseries mapped\+\_\+type}
\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aaea742105e75d5492b18cf4e8ecce83e}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aaea742105e75d5492b18cf4e8ecce83e} 
typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base_a5217847f82807ab684dab59ce112a298}{\+\_\+base\+\_\+type\+::value\+\_\+type} {\bfseries value\+\_\+type}
\item 
\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a82ff7880778edca8071798d10e1e384b}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a82ff7880778edca8071798d10e1e384b} 
typedef \hyperlink{structefl_1_1eina_1_1accessor__common__base_abf281f8df58aa16de7fee5d5d4d4ad50}{\+\_\+base\+\_\+type\+::size\+\_\+type} {\bfseries size\+\_\+type}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a73b3aa17b3696eea3b53a747e2b7a4da}{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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a7c8d53883aaaf78e83d739b3cc54707c}{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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a01ea531886533ec69fb43ea8326876d1}{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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_ab315712508acff87b8f7c58b538e730e}{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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a7af1324bb7bf6c1f881513928125e5ad}{$\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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a80b7c63cf4964857216c22bcead19ec2}{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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aaf1c11b44c7a32c76002d19252156e54}{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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aec8bab3f3005e9ccd11521c1cff5a5d6}{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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a73b3aa17b3696eea3b53a747e2b7a4da}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a73b3aa17b3696eea3b53a747e2b7a4da} 
\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{\texorpdfstring{accessor()}{accessor()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\hyperlink{structefl_1_1eina_1_1accessor}{efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ ! std\+::is\+\_\+base\+\_\+of$<$\+::\hyperlink{structefl_1_1eo_1_1concrete}{efl\+::eo\+::concrete}, T $>$\+::\hyperlink{structefl_1_1eina_1_1value}{value}, T $>$\+::type $>$\+::\hyperlink{structefl_1_1eina_1_1accessor}{accessor} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Default constructor. 

Creates an empty accessor. \hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a7c8d53883aaaf78e83d739b3cc54707c}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a7c8d53883aaaf78e83d739b3cc54707c} 
\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{\texorpdfstring{accessor()}{accessor()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\hyperlink{structefl_1_1eina_1_1accessor}{efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ ! std\+::is\+\_\+base\+\_\+of$<$\+::\hyperlink{structefl_1_1eo_1_1concrete}{efl\+::eo\+::concrete}, T $>$\+::\hyperlink{structefl_1_1eina_1_1value}{value}, T $>$\+::type $>$\+::\hyperlink{structefl_1_1eina_1_1accessor}{accessor} (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eina__Accessor__Group_ga65199ea5201a1867471028477dc26744}{Eina\+\_\+\+Accessor} $\ast$}]{impl }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}}



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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a01ea531886533ec69fb43ea8326876d1}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a01ea531886533ec69fb43ea8326876d1} 
\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{\texorpdfstring{accessor()}{accessor()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\hyperlink{structefl_1_1eina_1_1accessor}{efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ ! std\+::is\+\_\+base\+\_\+of$<$\+::\hyperlink{structefl_1_1eo_1_1concrete}{efl\+::eo\+::concrete}, T $>$\+::\hyperlink{structefl_1_1eina_1_1value}{value}, T $>$\+::type $>$\+::\hyperlink{structefl_1_1eina_1_1accessor}{accessor} (\begin{DoxyParamCaption}\item[{\hyperlink{structefl_1_1eina_1_1accessor}{\+\_\+self\+\_\+type} const \&}]{other }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a7af1324bb7bf6c1f881513928125e5ad}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a7af1324bb7bf6c1f881513928125e5ad} 
\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{\texorpdfstring{$\sim$accessor()}{~accessor()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\hyperlink{structefl_1_1eina_1_1accessor}{efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ ! std\+::is\+\_\+base\+\_\+of$<$\+::\hyperlink{structefl_1_1eo_1_1concrete}{efl\+::eo\+::concrete}, T $>$\+::\hyperlink{structefl_1_1eina_1_1value}{value}, T $>$\+::type $>$\+::$\sim$\hyperlink{structefl_1_1eina_1_1accessor}{accessor} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_ab315712508acff87b8f7c58b538e730e}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_ab315712508acff87b8f7c58b538e730e} 
\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{\texorpdfstring{operator=()}{operator=()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\hyperlink{structefl_1_1eina_1_1accessor}{\+\_\+self\+\_\+type}\& \hyperlink{structefl_1_1eina_1_1accessor}{efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ ! std\+::is\+\_\+base\+\_\+of$<$\+::\hyperlink{structefl_1_1eo_1_1concrete}{efl\+::eo\+::concrete}, T $>$\+::\hyperlink{structefl_1_1eina_1_1value}{value}, T $>$\+::type $>$\+::operator= (\begin{DoxyParamCaption}\item[{\hyperlink{structefl_1_1eina_1_1accessor}{\+\_\+self\+\_\+type} const \&}]{other }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a80b7c63cf4964857216c22bcead19ec2}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_a80b7c63cf4964857216c22bcead19ec2} 
\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{\texorpdfstring{operator[]()}{operator[]()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\hyperlink{structefl_1_1eina_1_1accessor__common__base_a6e2ffb342b9faf5e4506ac86183ea155}{mapped\+\_\+type}\& \hyperlink{structefl_1_1eina_1_1accessor}{efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ ! std\+::is\+\_\+base\+\_\+of$<$\+::\hyperlink{structefl_1_1eo_1_1concrete}{efl\+::eo\+::concrete}, T $>$\+::\hyperlink{structefl_1_1eina_1_1value}{value}, T $>$\+::type $>$\+::operator\mbox{[}$\,$\mbox{]} (\begin{DoxyParamCaption}\item[{\hyperlink{structefl_1_1eina_1_1accessor__common__base_abf281f8df58aa16de7fee5d5d4d4ad50}{size\+\_\+type}}]{i }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



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(), and efl\+::eina\+::get\+\_\+error\+\_\+code().

\hypertarget{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aaf1c11b44c7a32c76002d19252156e54}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aaf1c11b44c7a32c76002d19252156e54} 
\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{\texorpdfstring{swap()}{swap()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
void \hyperlink{structefl_1_1eina_1_1accessor}{efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ ! std\+::is\+\_\+base\+\_\+of$<$\+::\hyperlink{structefl_1_1eo_1_1concrete}{efl\+::eo\+::concrete}, T $>$\+::\hyperlink{structefl_1_1eina_1_1value}{value}, T $>$\+::type $>$\+::swap (\begin{DoxyParamCaption}\item[{\hyperlink{structefl_1_1eina_1_1accessor}{\+\_\+self\+\_\+type} \&}]{other }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



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_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aec8bab3f3005e9ccd11521c1cff5a5d6}{}\label{structefl_1_1eina_1_1accessor_3_01T_00_01typename_01std_1_1enable__if_3_01_9_01std_1_1is__base__e722cccd4efd4b5556319deef72b4061_aec8bab3f3005e9ccd11521c1cff5a5d6} 
\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{\texorpdfstring{operator bool()}{operator bool()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\hyperlink{structefl_1_1eina_1_1accessor}{efl\+::eina\+::accessor}$<$ T, typename std\+::enable\+\_\+if$<$ ! std\+::is\+\_\+base\+\_\+of$<$\+::\hyperlink{structefl_1_1eo_1_1concrete}{efl\+::eo\+::concrete}, T $>$\+::\hyperlink{structefl_1_1eina_1_1value}{value}, T $>$\+::type $>$\+::operator bool (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}}



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\+LL}, {\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\+LL}. 

References efl\+::eina\+::accessor\+\_\+common\+\_\+base$<$ T $>$\+::native\+\_\+handle().

