\hypertarget{group__Eina__Value__Type__Group}{}\doxysection{Generic Value Type management}
\label{group__Eina__Value__Type__Group}\index{Generic Value Type management@{Generic Value Type management}}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__Eina__Value__Type}{\+\_\+\+Eina\+\_\+\+Value\+\_\+\+Type}}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{group__Eina__Value__Type__Group_ga16a703617b8fc48e3ee95663db7becb2}{E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+E\+R\+S\+I\+ON}}~(1)
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
const \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} char $\ast$ \mbox{\hyperlink{group__Eina__Value__Type__Group_gae479ea87e54da2989e28fbd2218d6e64}{eina\+\_\+value\+\_\+type\+\_\+name\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type)
\begin{DoxyCompactList}\small\item\em Queries type name. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_ga828fa4ea5cedbd5cca512f16786666e6}{eina\+\_\+value\+\_\+type\+\_\+check}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type)
\begin{DoxyCompactList}\small\item\em Checks if type is valid. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_gab9a6635d937eaccc2397e6031ff28d44}{eina\+\_\+value\+\_\+type\+\_\+setup}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, void $\ast$mem)
\begin{DoxyCompactList}\small\item\em Initializes memory using type descriptor. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_gaf023815da0cde2d15dcedc7c568a2ab6}{eina\+\_\+value\+\_\+type\+\_\+flush}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, void $\ast$mem)
\begin{DoxyCompactList}\small\item\em Flushes (clears) memory using type descriptor. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_ga113ba54df56b4d7f6b5dad71ec5bb66b}{eina\+\_\+value\+\_\+type\+\_\+copy}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, const void $\ast$src, void $\ast$dst)
\begin{DoxyCompactList}\small\item\em Copies memory using type descriptor. \end{DoxyCompactList}\item 
static int \mbox{\hyperlink{group__Eina__Value__Type__Group_ga5ed7f82ab0c449b32538bcd05696c55a}{eina\+\_\+value\+\_\+type\+\_\+compare}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, const void $\ast$a, const void $\ast$b)
\begin{DoxyCompactList}\small\item\em Compares memory using type descriptor. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_ga9809966b5bf15fb7e3aa958f0e842281}{eina\+\_\+value\+\_\+type\+\_\+convert\+\_\+to}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$convert, const void $\ast$type\+\_\+mem, void $\ast$convert\+\_\+mem)
\begin{DoxyCompactList}\small\item\em Converts memory using type descriptor. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_ga0b5ffb70fcccfa6664100b6fab808d3d}{eina\+\_\+value\+\_\+type\+\_\+convert\+\_\+from}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$convert, void $\ast$type\+\_\+mem, const void $\ast$convert\+\_\+mem)
\begin{DoxyCompactList}\small\item\em Converts memory using type descriptor. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_ga36de045844ceb7b4c8c458d6641005ec}{eina\+\_\+value\+\_\+type\+\_\+vset}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, void $\ast$mem, va\+\_\+list args)
\begin{DoxyCompactList}\small\item\em Sets memory using type descriptor and variable argument. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_gaa1db66cf99d88b020f41763cd171a98d}{eina\+\_\+value\+\_\+type\+\_\+pset}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, void $\ast$mem, const void $\ast$ptr)
\begin{DoxyCompactList}\small\item\em Sets memory using type descriptor and pointer. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Type__Group_gac377cdcda3c59985fdbfb639f07b4430}{eina\+\_\+value\+\_\+type\+\_\+pget}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type, const void $\ast$mem, void $\ast$ptr)
\begin{DoxyCompactList}\small\item\em Gets memory using type descriptor. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_ga16a703617b8fc48e3ee95663db7becb2}\label{group__Eina__Value__Type__Group_ga16a703617b8fc48e3ee95663db7becb2}} 
\index{Generic Value Type management@{Generic Value Type management}!EINA\_VALUE\_TYPE\_VERSION@{EINA\_VALUE\_TYPE\_VERSION}}
\index{EINA\_VALUE\_TYPE\_VERSION@{EINA\_VALUE\_TYPE\_VERSION}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{EINA\_VALUE\_TYPE\_VERSION}{EINA\_VALUE\_TYPE\_VERSION}}
{\footnotesize\ttfamily \#define E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+E\+R\+S\+I\+ON~(1)}

Current A\+PI version, used to validate type. \begin{Desc}
\item[Examples]\par
\mbox{\hyperlink{eina_value_03_8c-example}{eina\+\_\+value\+\_\+03.\+c}}.\end{Desc}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_gae479ea87e54da2989e28fbd2218d6e64}\label{group__Eina__Value__Type__Group_gae479ea87e54da2989e28fbd2218d6e64}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_name\_get@{eina\_value\_type\_name\_get}}
\index{eina\_value\_type\_name\_get@{eina\_value\_type\_name\_get}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_name\_get()}{eina\_value\_type\_name\_get()}}
{\footnotesize\ttfamily const \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} char$\ast$ eina\+\_\+value\+\_\+type\+\_\+name\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type }\end{DoxyParamCaption})}



Queries type name. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
string or {\ttfamily N\+U\+LL} if type is invalid.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}


References E\+I\+N\+A\+\_\+\+S\+A\+F\+E\+T\+Y\+\_\+\+O\+N\+\_\+\+F\+A\+L\+S\+E\+\_\+\+R\+E\+T\+U\+R\+N\+\_\+\+V\+AL, and eina\+\_\+value\+\_\+type\+\_\+check().

\mbox{\Hypertarget{group__Eina__Value__Type__Group_ga828fa4ea5cedbd5cca512f16786666e6}\label{group__Eina__Value__Type__Group_ga828fa4ea5cedbd5cca512f16786666e6}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_check@{eina\_value\_type\_check}}
\index{eina\_value\_type\_check@{eina\_value\_type\_check}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_check()}{eina\_value\_type\_check()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+check (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type }\end{DoxyParamCaption})}



Checks if type is valid. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & Type reference. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} if valid, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
A type is invalid if it\textquotesingle{}s N\+U\+LL or if version field is not the same as runtime \mbox{\hyperlink{group__Eina__Value__Type__Group_ga16a703617b8fc48e3ee95663db7becb2}{E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+E\+R\+S\+I\+ON}}.

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


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE, E\+I\+N\+A\+\_\+\+S\+A\+F\+E\+T\+Y\+\_\+\+O\+N\+\_\+\+N\+U\+L\+L\+\_\+\+R\+E\+T\+U\+R\+N\+\_\+\+V\+AL, and E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+E\+R\+S\+I\+ON.



Referenced by eina\+\_\+value\+\_\+array\+\_\+new(), eina\+\_\+value\+\_\+convert(), eina\+\_\+value\+\_\+copy(), eina\+\_\+value\+\_\+hash\+\_\+new(), eina\+\_\+value\+\_\+list\+\_\+new(), eina\+\_\+value\+\_\+to\+\_\+string(), and eina\+\_\+value\+\_\+type\+\_\+name\+\_\+get().

\mbox{\Hypertarget{group__Eina__Value__Type__Group_gab9a6635d937eaccc2397e6031ff28d44}\label{group__Eina__Value__Type__Group_gab9a6635d937eaccc2397e6031ff28d44}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_setup@{eina\_value\_type\_setup}}
\index{eina\_value\_type\_setup@{eina\_value\_type\_setup}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_setup()}{eina\_value\_type\_setup()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+setup (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{void $\ast$}]{mem }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Initializes memory using type descriptor. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference. \\
\hline
\mbox{\texttt{ out}}  & {\em mem} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} on success, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_gaf023815da0cde2d15dcedc7c568a2ab6}\label{group__Eina__Value__Type__Group_gaf023815da0cde2d15dcedc7c568a2ab6}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_flush@{eina\_value\_type\_flush}}
\index{eina\_value\_type\_flush@{eina\_value\_type\_flush}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_flush()}{eina\_value\_type\_flush()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+flush (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{void $\ast$}]{mem }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Flushes (clears) memory using type descriptor. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference. \\
\hline
\mbox{\texttt{ out}}  & {\em mem} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} on success, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_ga113ba54df56b4d7f6b5dad71ec5bb66b}\label{group__Eina__Value__Type__Group_ga113ba54df56b4d7f6b5dad71ec5bb66b}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_copy@{eina\_value\_type\_copy}}
\index{eina\_value\_type\_copy@{eina\_value\_type\_copy}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_copy()}{eina\_value\_type\_copy()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+copy (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{const void $\ast$}]{src,  }\item[{void $\ast$}]{dst }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Copies memory using type descriptor. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference. \\
\hline
\mbox{\texttt{ in}}  & {\em src} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\mbox{\texttt{ out}}  & {\em dst} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} on success, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_ga5ed7f82ab0c449b32538bcd05696c55a}\label{group__Eina__Value__Type__Group_ga5ed7f82ab0c449b32538bcd05696c55a}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_compare@{eina\_value\_type\_compare}}
\index{eina\_value\_type\_compare@{eina\_value\_type\_compare}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_compare()}{eina\_value\_type\_compare()}}
{\footnotesize\ttfamily static int eina\+\_\+value\+\_\+type\+\_\+compare (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{const void $\ast$}]{a,  }\item[{const void $\ast$}]{b }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Compares memory using type descriptor. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference. \\
\hline
\mbox{\texttt{ in}}  & {\em a} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\mbox{\texttt{ in}}  & {\em b} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
less than zero if a $<$ b, greater than zero if a $>$ b, zero if equal.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_ga9809966b5bf15fb7e3aa958f0e842281}\label{group__Eina__Value__Type__Group_ga9809966b5bf15fb7e3aa958f0e842281}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_convert\_to@{eina\_value\_type\_convert\_to}}
\index{eina\_value\_type\_convert\_to@{eina\_value\_type\_convert\_to}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_convert\_to()}{eina\_value\_type\_convert\_to()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+convert\+\_\+to (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{convert,  }\item[{const void $\ast$}]{type\+\_\+mem,  }\item[{void $\ast$}]{convert\+\_\+mem }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Converts memory using type descriptor. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference of the source. \\
\hline
\mbox{\texttt{ in}}  & {\em convert} & type reference of the destination. \\
\hline
\mbox{\texttt{ in}}  & {\em type\+\_\+mem} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\mbox{\texttt{ out}}  & {\em convert\+\_\+mem} & memory to operate, must be of size {\ttfamily convert-\/$>$value\+\_\+size}. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} on success, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_ga0b5ffb70fcccfa6664100b6fab808d3d}\label{group__Eina__Value__Type__Group_ga0b5ffb70fcccfa6664100b6fab808d3d}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_convert\_from@{eina\_value\_type\_convert\_from}}
\index{eina\_value\_type\_convert\_from@{eina\_value\_type\_convert\_from}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_convert\_from()}{eina\_value\_type\_convert\_from()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+convert\+\_\+from (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{convert,  }\item[{void $\ast$}]{type\+\_\+mem,  }\item[{const void $\ast$}]{convert\+\_\+mem }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Converts memory using type descriptor. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference of the destination. \\
\hline
\mbox{\texttt{ in}}  & {\em convert} & type reference of the source. \\
\hline
\mbox{\texttt{ out}}  & {\em type\+\_\+mem} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\mbox{\texttt{ in}}  & {\em convert\+\_\+mem} & memory to operate, must be of size {\ttfamily convert-\/$>$value\+\_\+size}. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} on success, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_ga36de045844ceb7b4c8c458d6641005ec}\label{group__Eina__Value__Type__Group_ga36de045844ceb7b4c8c458d6641005ec}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_vset@{eina\_value\_type\_vset}}
\index{eina\_value\_type\_vset@{eina\_value\_type\_vset}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_vset()}{eina\_value\_type\_vset()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+vset (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{void $\ast$}]{mem,  }\item[{va\+\_\+list}]{args }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Sets memory using type descriptor and variable argument. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference of the source. \\
\hline
\mbox{\texttt{ out}}  & {\em mem} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\mbox{\texttt{ in}}  & {\em args} & input value. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} on success, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_gaa1db66cf99d88b020f41763cd171a98d}\label{group__Eina__Value__Type__Group_gaa1db66cf99d88b020f41763cd171a98d}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_pset@{eina\_value\_type\_pset}}
\index{eina\_value\_type\_pset@{eina\_value\_type\_pset}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_pset()}{eina\_value\_type\_pset()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+pset (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{void $\ast$}]{mem,  }\item[{const void $\ast$}]{ptr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Sets memory using type descriptor and pointer. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference of the source. \\
\hline
\mbox{\texttt{ out}}  & {\em mem} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\mbox{\texttt{ in}}  & {\em ptr} & pointer to input value. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} on success, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\begin{Desc}
\item[Examples]\par
\mbox{\hyperlink{eina_value_03_8c-example}{eina\+\_\+value\+\_\+03.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Eina__Value__Type__Group_gac377cdcda3c59985fdbfb639f07b4430}\label{group__Eina__Value__Type__Group_gac377cdcda3c59985fdbfb639f07b4430}} 
\index{Generic Value Type management@{Generic Value Type management}!eina\_value\_type\_pget@{eina\_value\_type\_pget}}
\index{eina\_value\_type\_pget@{eina\_value\_type\_pget}!Generic Value Type management@{Generic Value Type management}}
\doxysubsubsection{\texorpdfstring{eina\_value\_type\_pget()}{eina\_value\_type\_pget()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+type\+\_\+pget (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type,  }\item[{const void $\ast$}]{mem,  }\item[{void $\ast$}]{ptr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Gets memory using type descriptor. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & type reference of the source. \\
\hline
\mbox{\texttt{ in}}  & {\em mem} & memory to operate, must be of size {\ttfamily type-\/$>$value\+\_\+size}. \\
\hline
\mbox{\texttt{ out}}  & {\em ptr} & pointer to output. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} on success, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
