\hypertarget{group__Eina__Value__Value__Group}{}\section{Generic Value management}
\label{group__Eina__Value__Value__Group}\index{Generic Value management@{Generic Value management}}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__Eina__Value}{\+\_\+\+Eina\+\_\+\+Value}}
\begin{DoxyCompactList}\small\item\em defines the contents of a value \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__Eina__Value__Value__Group_gae603129fa62a3b1b560e81fa511ffb13}{eina\+\_\+value\+\_\+new}} (const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type)
\begin{DoxyCompactList}\small\item\em Creates generic value storage. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\+\_\+value\+\_\+free}} (\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value)
\begin{DoxyCompactList}\small\item\em Frees value and its data. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\+\_\+value\+\_\+setup}} (\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value, const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$type)
\begin{DoxyCompactList}\small\item\em Initializes generic value storage. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\+\_\+value\+\_\+flush}} (\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value)
\begin{DoxyCompactList}\small\item\em Creates generic value storage. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_ga4eb986bdc60f79a8ac0b3f68a9ed6a01}{eina\+\_\+value\+\_\+copy}} (const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value, \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$copy)
\begin{DoxyCompactList}\small\item\em Copies generic value storage. \end{DoxyCompactList}\item 
static int \mbox{\hyperlink{group__Eina__Value__Value__Group_ga7b136e61a22724f3dcdcbb715c28e603}{eina\+\_\+value\+\_\+compare}} (const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$a, const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$b)
\begin{DoxyCompactList}\small\item\em Compares generic value storage. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\+\_\+value\+\_\+set}} (\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value,...)
\begin{DoxyCompactList}\small\item\em Sets the generic value. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_ga6f088fe6c6127d808cdf214b355cbdeb}{eina\+\_\+value\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value,...)
\begin{DoxyCompactList}\small\item\em Gets the generic value. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_gab268bdee7835a81769ca56503f9addd4}{eina\+\_\+value\+\_\+vset}} (\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value, va\+\_\+list args)
\begin{DoxyCompactList}\small\item\em Sets the generic value. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_ga4fbda28f76e3f9f9a62136fd00ea0e10}{eina\+\_\+value\+\_\+vget}} (const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value, va\+\_\+list args)
\begin{DoxyCompactList}\small\item\em Gets the generic value. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}{eina\+\_\+value\+\_\+pset}} (\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value, const void $\ast$ptr)
\begin{DoxyCompactList}\small\item\em Sets the generic value from pointer. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_ga60f5603f5075da14f3cfd3ddc7766725}{eina\+\_\+value\+\_\+pget}} (const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value, void $\ast$ptr)
\begin{DoxyCompactList}\small\item\em Gets the generic value to pointer. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Value__Value__Group_ga86f91748c90652df59e3ef38bf54949d}{eina\+\_\+value\+\_\+convert}} (const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value, \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$convert)
\begin{DoxyCompactList}\small\item\em Converts one value to another type. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf}} $\ast$ \mbox{\hyperlink{group__Eina__Value__Value__Group_ga66f4371f98b77f55fafe252ada0fcd61}{eina\+\_\+value\+\_\+to\+\_\+binbuf}} (\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value)
\begin{DoxyCompactList}\small\item\em Converts one value to Eina\+\_\+\+Binbuf. \end{DoxyCompactList}\item 
char $\ast$ \mbox{\hyperlink{group__Eina__Value__Value__Group_ga8f34b6d6639654dd88cd197c9def78a3}{eina\+\_\+value\+\_\+to\+\_\+string}} (const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value)
\begin{DoxyCompactList}\small\item\em Converts value to string. \end{DoxyCompactList}\item 
static const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$ \mbox{\hyperlink{group__Eina__Value__Value__Group_gad16e8065d5d90cdd37e8c219cfcd281e}{eina\+\_\+value\+\_\+type\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$value)
\begin{DoxyCompactList}\small\item\em Queries value type. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


\subsection{Function Documentation}
\mbox{\Hypertarget{group__Eina__Value__Value__Group_gae603129fa62a3b1b560e81fa511ffb13}\label{group__Eina__Value__Value__Group_gae603129fa62a3b1b560e81fa511ffb13}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+new@{eina\+\_\+value\+\_\+new}}
\index{eina\+\_\+value\+\_\+new@{eina\+\_\+value\+\_\+new}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+new()}{eina\_value\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}}$\ast$ eina\+\_\+value\+\_\+new (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}} $\ast$}]{type }\end{DoxyParamCaption})}



Creates generic value storage. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em type} & How to manage this value. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The new value or {\ttfamily N\+U\+LL} on failure.
\end{DoxyReturn}
Create a new generic value storage. The members are managed using the description specified by {\itshape type}.

Some types may specify more operations\+: e.\+g.. \mbox{\hyperlink{group__Eina__Value__Group_ga54ae8736387dd3da85568451ac6821ba}{E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+R\+R\+AY}} uses \mbox{\hyperlink{group__Eina__Value__Array__Group_gac833bf34f56ba77e87bbe6b79734b653}{eina\+\_\+value\+\_\+array\+\_\+set()}}, \mbox{\hyperlink{group__Eina__Value__Array__Group_ga9358dce2404ed0926db502539f8a1318}{eina\+\_\+value\+\_\+array\+\_\+get()}} and so on.

On failure, {\ttfamily N\+U\+LL} is returned.

\begin{DoxyNote}{Note}
This calls creates from mempool and then uses \mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\+\_\+value\+\_\+setup()}}. Consider using \mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\+\_\+value\+\_\+flush()}} and \mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\+\_\+value\+\_\+setup()}} instead to avoid memory allocations.
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\+\_\+value\+\_\+free()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}


References eina\+\_\+mempool\+\_\+free(), eina\+\_\+mempool\+\_\+malloc(), E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+E\+M\+P\+TY, and eina\+\_\+value\+\_\+setup().



Referenced by eina\+\_\+value\+\_\+object\+\_\+new(), and eina\+\_\+value\+\_\+util\+\_\+time\+\_\+string\+\_\+new().

\mbox{\Hypertarget{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}\label{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+free@{eina\+\_\+value\+\_\+free}}
\index{eina\+\_\+value\+\_\+free@{eina\+\_\+value\+\_\+free}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+free()}{eina\_value\_free()}}
{\footnotesize\ttfamily void eina\+\_\+value\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value }\end{DoxyParamCaption})}



Frees value and its data. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & value object\\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\+\_\+value\+\_\+flush()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}


References eina\+\_\+mempool\+\_\+free(), and eina\+\_\+value\+\_\+flush().

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



Initializes generic value storage. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt out}  & {\em value} & Value object \\
\hline
\mbox{\tt out}  & {\em type} & How to manage this 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}
Initializes existing generic value storage. The members are managed using the description specified by {\itshape type}.

Some types may specify more operations, as an example \mbox{\hyperlink{group__Eina__Value__Group_ga54ae8736387dd3da85568451ac6821ba}{E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+R\+R\+AY}} uses \mbox{\hyperlink{group__Eina__Value__Array__Group_gac833bf34f56ba77e87bbe6b79734b653}{eina\+\_\+value\+\_\+array\+\_\+set()}}, \mbox{\hyperlink{group__Eina__Value__Array__Group_ga9358dce2404ed0926db502539f8a1318}{eina\+\_\+value\+\_\+array\+\_\+get()}} and so on.

\begin{DoxyNote}{Note}
Existing contents are ignored! If the value was previously used, then use \mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\+\_\+value\+\_\+flush()}} first.
\end{DoxyNote}
On failure, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\+\_\+value\+\_\+flush()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_value_01_8c-example}{eina\+\_\+value\+\_\+01.\+c}}, and \mbox{\hyperlink{eina_value_03_8c-example}{eina\+\_\+value\+\_\+03.\+c}}.\end{Desc}


Referenced by ecore\+\_\+main\+\_\+loop\+\_\+quit(), eina\+\_\+promise\+\_\+as\+\_\+value(), eina\+\_\+promise\+\_\+reject(), eina\+\_\+value\+\_\+new(), eina\+\_\+value\+\_\+object\+\_\+init(), and eina\+\_\+value\+\_\+to\+\_\+binbuf().

\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}\label{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+flush@{eina\+\_\+value\+\_\+flush}}
\index{eina\+\_\+value\+\_\+flush@{eina\+\_\+value\+\_\+flush}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+flush()}{eina\_value\_flush()}}
{\footnotesize\ttfamily static void eina\+\_\+value\+\_\+flush (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Creates generic value storage. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & Value object\\
\hline
\end{DoxyParams}
Releases all the resources associated with an \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}}. The value must be already set with \mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\+\_\+value\+\_\+setup()}} or \mbox{\hyperlink{group__Eina__Value__Value__Group_gae603129fa62a3b1b560e81fa511ffb13}{eina\+\_\+value\+\_\+new()}}.

After this call returns, the contents of the value are undefined, but the value can be reused by calling \mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\+\_\+value\+\_\+setup()}} again.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\+\_\+value\+\_\+setup()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\+\_\+value\+\_\+free()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{complex-types-client-eina-value_8c-example}{complex-\/types-\/client-\/eina-\/value.\+c}}, and \mbox{\hyperlink{eina_value_01_8c-example}{eina\+\_\+value\+\_\+01.\+c}}.\end{Desc}


Referenced by efl\+\_\+dbg\+\_\+info\+\_\+free(), eina\+\_\+future\+\_\+cb\+\_\+easy\+\_\+desc\+\_\+flush(), eina\+\_\+promise\+\_\+resolve(), eina\+\_\+value\+\_\+free(), and eina\+\_\+value\+\_\+to\+\_\+binbuf().

\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga4eb986bdc60f79a8ac0b3f68a9ed6a01}\label{group__Eina__Value__Value__Group_ga4eb986bdc60f79a8ac0b3f68a9ed6a01}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+copy@{eina\+\_\+value\+\_\+copy}}
\index{eina\+\_\+value\+\_\+copy@{eina\+\_\+value\+\_\+copy}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+copy()}{eina\_value\_copy()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+copy (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value,  }\item[{\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{copy }\end{DoxyParamCaption})}



Copies generic value storage. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & Source value object \\
\hline
\mbox{\tt out}  & {\em copy} & Destination value object \\
\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}
The {\itshape copy} object is considered uninitialized and its existing contents are overwritten (just as if \mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\+\_\+value\+\_\+flush()}} was called on it).

The copy happens by calling \mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\+\_\+value\+\_\+setup()}} on {\itshape copy}, followed by getting the contents of {\itshape value} and setting it to {\itshape copy}.

\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga7b136e61a22724f3dcdcbb715c28e603}\label{group__Eina__Value__Value__Group_ga7b136e61a22724f3dcdcbb715c28e603}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+compare@{eina\+\_\+value\+\_\+compare}}
\index{eina\+\_\+value\+\_\+compare@{eina\+\_\+value\+\_\+compare}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+compare()}{eina\_value\_compare()}}
{\footnotesize\ttfamily static int eina\+\_\+value\+\_\+compare (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{a,  }\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{b }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Compares generic value storage. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em a} & left side of comparison \\
\hline
\mbox{\tt in}  & {\em b} & right side of comparison \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
less than zero if a $<$ b, greater than zero if a $>$ b, zero if a == b
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}\label{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+set@{eina\+\_\+value\+\_\+set}}
\index{eina\+\_\+value\+\_\+set@{eina\+\_\+value\+\_\+set}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+set()}{eina\_value\_set()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value,  }\item[{}]{... }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Sets the generic value. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in,out}  & {\em value} & Source value object \\
\hline
\mbox{\tt in}  & {\em ...} & Data to set. \\
\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}
The variable argument is dependent on chosen type. The list for basic types\+:

\begin{DoxyItemize}
\item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+A\+L\+UE\+: Eina\+\_\+\+Value \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+E\+R\+R\+OR\+: Eina\+\_\+\+Error \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+C\+H\+AR\+: unsigned char \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+S\+H\+O\+RT\+: unsigned short \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+I\+NT\+: unsigned int \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+L\+O\+NG\+: unsigned long \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+I\+N\+T64\+: uint64\+\_\+t \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+C\+H\+AR\+: char \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+H\+O\+RT\+: short \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+NT\+: int \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+O\+NG\+: long \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+N\+T64\+: int64\+\_\+t \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+F\+L\+O\+AT\+: float \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+D\+O\+U\+B\+LE\+: double \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+I\+N\+G\+S\+H\+A\+RE\+: const char $\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+I\+NG\+: const char $\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+R\+R\+AY\+: Eina\+\_\+\+Value\+\_\+\+Array \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+I\+ST\+: Eina\+\_\+\+Value\+\_\+\+List \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+H\+A\+SH\+: Eina\+\_\+\+Value\+\_\+\+Hash \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+T\+I\+M\+E\+V\+AL\+: struct timeval \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+B\+L\+OB\+: Eina\+\_\+\+Value\+\_\+\+Blob \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+U\+CT\+: Eina\+\_\+\+Value\+\_\+\+Struct \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+TM\+: struct tm$\ast$\end{DoxyItemize}

\begin{DoxyCode}
\mbox{\hyperlink{struct__Eina__Value}{Eina\_Value}} *value = \mbox{\hyperlink{group__Eina__Value__Value__Group_gae603129fa62a3b1b560e81fa511ffb13}{eina\_value\_new}}(\mbox{\hyperlink{group__Eina__Value__Group_ga17974fd9ab773a3efefd591ffde58f77}{EINA\_VALUE\_TYPE\_INT}});
\textcolor{keywordtype}{int} x = 567;
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\_value\_set}}(value, 1234);
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\_value\_set}}(value, x);

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\_value\_flush}}(value);

\mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\_value\_setup}}(value, \mbox{\hyperlink{group__Eina__Value__Group_ga916f76c8d5ffd4c3ee3c322a54efd0b7}{EINA\_VALUE\_TYPE\_STRING}});
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\_value\_set}}(value, \textcolor{stringliteral}{"hello world!"});

\mbox{\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\_value\_free}}(value);
\end{DoxyCode}


\begin{DoxyNote}{Note}
for array member see \mbox{\hyperlink{group__Eina__Value__Array__Group_gac833bf34f56ba77e87bbe6b79734b653}{eina\+\_\+value\+\_\+array\+\_\+set()}} 

for list member see \mbox{\hyperlink{group__Eina__Value__List__Group_gafc779df6ff45d16b7ee83d82c0862964}{eina\+\_\+value\+\_\+list\+\_\+set()}} 

for hash member see \mbox{\hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\+\_\+value\+\_\+hash\+\_\+set()}}
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga6f088fe6c6127d808cdf214b355cbdeb}{eina\+\_\+value\+\_\+get()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_gab268bdee7835a81769ca56503f9addd4}{eina\+\_\+value\+\_\+vset()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}{eina\+\_\+value\+\_\+pset()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_value_01_8c-example}{eina\+\_\+value\+\_\+01.\+c}}, and \mbox{\hyperlink{eina_value_03_8c-example}{eina\+\_\+value\+\_\+03.\+c}}.\end{Desc}


Referenced by ecore\+\_\+main\+\_\+loop\+\_\+quit(), and eina\+\_\+value\+\_\+util\+\_\+time\+\_\+string\+\_\+new().

\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga6f088fe6c6127d808cdf214b355cbdeb}\label{group__Eina__Value__Value__Group_ga6f088fe6c6127d808cdf214b355cbdeb}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+get@{eina\+\_\+value\+\_\+get}}
\index{eina\+\_\+value\+\_\+get@{eina\+\_\+value\+\_\+get}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+get()}{eina\_value\_get()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value,  }\item[{}]{... }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Gets the generic value. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & Source value object. \\
\hline
\mbox{\tt out}  & {\em ...} & Data value retrieved. \\
\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}
The value is returned in the variable argument parameter, the actual value is type-\/dependent, but usually it will be what is stored inside the object. There shouldn\textquotesingle{}t be any memory allocation, thus the contents should {\bfseries not} be freed.

The variable argument is dependent on chosen type. The list for basic types\+:

\begin{DoxyItemize}
\item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+A\+L\+UE\+: Eina\+\_\+\+Value$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+E\+R\+R\+OR\+: Eina\+\_\+\+Error$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+C\+H\+AR\+: unsigned char$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+S\+H\+O\+RT\+: unsigned short$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+I\+NT\+: unsigned int$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+L\+O\+NG\+: unsigned long$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+I\+N\+T64\+: uint64\+\_\+t$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+C\+H\+AR\+: char$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+H\+O\+RT\+: short$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+NT\+: int$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+O\+NG\+: long$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+N\+T64\+: int64\+\_\+t$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+F\+L\+O\+AT\+: float$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+D\+O\+U\+B\+LE\+: double$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+I\+N\+G\+S\+H\+A\+RE\+: const char $\ast$$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+I\+NG\+: const char $\ast$$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+R\+R\+AY\+: Eina\+\_\+\+Value\+\_\+\+Array$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+I\+ST\+: Eina\+\_\+\+Value\+\_\+\+List$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+H\+A\+SH\+: Eina\+\_\+\+Value\+\_\+\+Hash$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+T\+I\+M\+E\+V\+AL\+: struct timeval$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+B\+L\+OB\+: Eina\+\_\+\+Value\+\_\+\+Blob$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+U\+CT\+: Eina\+\_\+\+Value\+\_\+\+Struct$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+TM\+: struct tm$\ast$\end{DoxyItemize}

\begin{DoxyCode}
\mbox{\hyperlink{struct__Eina__Value}{Eina\_Value}} *value = \mbox{\hyperlink{group__Eina__Value__Value__Group_gae603129fa62a3b1b560e81fa511ffb13}{eina\_value\_new}}(\mbox{\hyperlink{group__Eina__Value__Group_ga17974fd9ab773a3efefd591ffde58f77}{EINA\_VALUE\_TYPE\_INT}});
\textcolor{keywordtype}{int} x;
\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s;

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\_value\_set}}(value, 1234);
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga6f088fe6c6127d808cdf214b355cbdeb}{eina\_value\_get}}(value, &x);

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\_value\_flush}}(value);

\mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\_value\_setup}}(value, \mbox{\hyperlink{group__Eina__Value__Group_ga916f76c8d5ffd4c3ee3c322a54efd0b7}{EINA\_VALUE\_TYPE\_STRING}});
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\_value\_set}}(value, \textcolor{stringliteral}{"hello world!"});
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga6f088fe6c6127d808cdf214b355cbdeb}{eina\_value\_get}}(value, &s);

\mbox{\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\_value\_free}}(value);
\end{DoxyCode}


\begin{DoxyNote}{Note}
for array member see \mbox{\hyperlink{group__Eina__Value__Array__Group_ga9358dce2404ed0926db502539f8a1318}{eina\+\_\+value\+\_\+array\+\_\+get()}} 

for list member see \mbox{\hyperlink{group__Eina__Value__List__Group_gaf1b31fc2085b8077f3789bb9365e6818}{eina\+\_\+value\+\_\+list\+\_\+get()}} 

for hash member see \mbox{\hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\+\_\+value\+\_\+hash\+\_\+get()}}
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\+\_\+value\+\_\+set()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_gab268bdee7835a81769ca56503f9addd4}{eina\+\_\+value\+\_\+vset()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}{eina\+\_\+value\+\_\+pset()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{complex-types-client-eina-value_8c-example}{complex-\/types-\/client-\/eina-\/value.\+c}}, and \mbox{\hyperlink{eina_value_01_8c-example}{eina\+\_\+value\+\_\+01.\+c}}.\end{Desc}


Referenced by eina\+\_\+value\+\_\+to\+\_\+binbuf().

\mbox{\Hypertarget{group__Eina__Value__Value__Group_gab268bdee7835a81769ca56503f9addd4}\label{group__Eina__Value__Value__Group_gab268bdee7835a81769ca56503f9addd4}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+vset@{eina\+\_\+value\+\_\+vset}}
\index{eina\+\_\+value\+\_\+vset@{eina\+\_\+value\+\_\+vset}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+vset()}{eina\_value\_vset()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+vset (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value,  }\item[{va\+\_\+list}]{args }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Sets the generic value. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in,out}  & {\em value} & Source value object \\
\hline
\mbox{\tt in}  & {\em args} & Variable argument \\
\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{DoxyNote}{Note}
for array member see \mbox{\hyperlink{group__Eina__Value__Array__Group_gaee7ba765015a4a8664d6cf0fad6f28bf}{eina\+\_\+value\+\_\+array\+\_\+vset()}} 

for list member see \mbox{\hyperlink{group__Eina__Value__List__Group_gaaf1a01660592d3c6c563732420d6bd5d}{eina\+\_\+value\+\_\+list\+\_\+vset()}} 

for hash member see \mbox{\hyperlink{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}{eina\+\_\+value\+\_\+hash\+\_\+vset()}}
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga4fbda28f76e3f9f9a62136fd00ea0e10}{eina\+\_\+value\+\_\+vget()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\+\_\+value\+\_\+set()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}{eina\+\_\+value\+\_\+pset()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga4fbda28f76e3f9f9a62136fd00ea0e10}\label{group__Eina__Value__Value__Group_ga4fbda28f76e3f9f9a62136fd00ea0e10}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+vget@{eina\+\_\+value\+\_\+vget}}
\index{eina\+\_\+value\+\_\+vget@{eina\+\_\+value\+\_\+vget}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+vget()}{eina\_value\_vget()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+vget (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value,  }\item[{va\+\_\+list}]{args }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Gets the generic value. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & Source value object \\
\hline
\mbox{\tt out}  & {\em args} & Variable argument \\
\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}
The value is returned in the variable argument parameter, the actual value is type-\/dependent, but usually it will be what is stored inside the object. There shouldn\textquotesingle{}t be any memory allocation, thus the contents should {\bfseries not} be freed.

\begin{DoxyNote}{Note}
for array member see \mbox{\hyperlink{group__Eina__Value__Array__Group_ga71628a82af073c59a241cf8c93c95d5d}{eina\+\_\+value\+\_\+array\+\_\+vget()}} 

for list member see \mbox{\hyperlink{group__Eina__Value__List__Group_ga4d1be252489e727e0b396e67b9e10232}{eina\+\_\+value\+\_\+list\+\_\+vget()}} 

for hash member see \mbox{\hyperlink{group__Eina__Value__Hash__Group_gaef1be893a3b48fd34fc27dc99e5f060a}{eina\+\_\+value\+\_\+hash\+\_\+vget()}}
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_gab268bdee7835a81769ca56503f9addd4}{eina\+\_\+value\+\_\+vset()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga6f088fe6c6127d808cdf214b355cbdeb}{eina\+\_\+value\+\_\+get()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60f5603f5075da14f3cfd3ddc7766725}{eina\+\_\+value\+\_\+pget()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}\label{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+pset@{eina\+\_\+value\+\_\+pset}}
\index{eina\+\_\+value\+\_\+pset@{eina\+\_\+value\+\_\+pset}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+pset()}{eina\_value\_pset()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+pset (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value,  }\item[{const void $\ast$}]{ptr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Sets the generic value from pointer. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in,out}  & {\em value} & Source value object \\
\hline
\mbox{\tt in}  & {\em ptr} & Pointer to specify the contents. \\
\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}
The pointer type is dependent on chosen value type. The list for basic types\+:

\begin{DoxyItemize}
\item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+A\+L\+UE\+: Eina\+\_\+\+Value$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+E\+R\+R\+OR\+: Eina\+\_\+\+Error$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+C\+H\+AR\+: unsigned char$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+S\+H\+O\+RT\+: unsigned short$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+I\+NT\+: unsigned int$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+L\+O\+NG\+: unsigned long$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+I\+N\+T64\+: uint64\+\_\+t$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+C\+H\+AR\+: char$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+H\+O\+RT\+: short$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+NT\+: int$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+O\+NG\+: long$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+N\+T64\+: int64\+\_\+t$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+F\+L\+O\+AT\+: float$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+D\+O\+U\+B\+LE\+: double$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+I\+N\+G\+S\+H\+A\+RE\+: const char $\ast$$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+I\+NG\+: const char $\ast$$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+R\+R\+AY\+: Eina\+\_\+\+Value\+\_\+\+Array$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+I\+ST\+: Eina\+\_\+\+Value\+\_\+\+List$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+H\+A\+SH\+: Eina\+\_\+\+Value\+\_\+\+Hash$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+T\+I\+M\+E\+V\+AL\+: struct timeval$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+B\+L\+OB\+: Eina\+\_\+\+Value\+\_\+\+Blob$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+U\+CT\+: Eina\+\_\+\+Value\+\_\+\+Struct$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+TM\+: struct tm$\ast$\end{DoxyItemize}
\begin{DoxyNote}{Note}
the pointer contents are written using the size defined by type. It can be larger than void$\ast$ or uint64\+\_\+t.
\end{DoxyNote}

\begin{DoxyCode}
\mbox{\hyperlink{struct__Eina__Value}{Eina\_Value}} *value = \mbox{\hyperlink{group__Eina__Value__Value__Group_gae603129fa62a3b1b560e81fa511ffb13}{eina\_value\_new}}(\mbox{\hyperlink{group__Eina__Value__Group_ga17974fd9ab773a3efefd591ffde58f77}{EINA\_VALUE\_TYPE\_INT}});
\textcolor{keywordtype}{int} x = 567;
\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s = \textcolor{stringliteral}{"hello world!"};

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}{eina\_value\_pset}}(value, &x);

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\_value\_flush}}(value);

\mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\_value\_setup}}(value, \mbox{\hyperlink{group__Eina__Value__Group_ga916f76c8d5ffd4c3ee3c322a54efd0b7}{EINA\_VALUE\_TYPE\_STRING}});
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}{eina\_value\_pset}}(value, &s);

\mbox{\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\_value\_free}}(value);
\end{DoxyCode}


\begin{DoxyNote}{Note}
for array member see \mbox{\hyperlink{group__Eina__Value__Array__Group_ga2bbd3aa89ec9ac0cc01b86f5e5b139cd}{eina\+\_\+value\+\_\+array\+\_\+pset()}} 

for list member see \mbox{\hyperlink{group__Eina__Value__List__Group_ga3394c575297f44f51510cdafe518a135}{eina\+\_\+value\+\_\+list\+\_\+pset()}} 

for hash member see \mbox{\hyperlink{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}{eina\+\_\+value\+\_\+hash\+\_\+pset()}}
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60f5603f5075da14f3cfd3ddc7766725}{eina\+\_\+value\+\_\+pget()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\+\_\+value\+\_\+set()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_gab268bdee7835a81769ca56503f9addd4}{eina\+\_\+value\+\_\+vset()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga60f5603f5075da14f3cfd3ddc7766725}\label{group__Eina__Value__Value__Group_ga60f5603f5075da14f3cfd3ddc7766725}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+pget@{eina\+\_\+value\+\_\+pget}}
\index{eina\+\_\+value\+\_\+pget@{eina\+\_\+value\+\_\+pget}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+pget()}{eina\_value\_pget()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+pget (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value,  }\item[{void $\ast$}]{ptr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Gets the generic value to pointer. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & Source value object \\
\hline
\mbox{\tt out}  & {\em ptr} & Pointer to receive the contents. \\
\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}
The value is returned in pointer contents, the actual value is type-\/dependent, but usually it will be what is stored inside the object. There shouldn\textquotesingle{}t be any memory allocation, thus the contents should {\bfseries not} be freed.

The pointer type is dependent on chosen value type. The list for basic types\+:

\begin{DoxyItemize}
\item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+A\+L\+UE\+: Eina\+\_\+\+Value$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+E\+R\+R\+OR\+: Eina\+\_\+\+Error$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+C\+H\+AR\+: unsigned char$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+S\+H\+O\+RT\+: unsigned short$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+I\+NT\+: unsigned int$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+L\+O\+NG\+: unsigned long$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+I\+N\+T64\+: uint64\+\_\+t$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+C\+H\+AR\+: char$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+H\+O\+RT\+: short$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+NT\+: int$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+O\+NG\+: long$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+N\+T64\+: int64\+\_\+t$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+F\+L\+O\+AT\+: float$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+D\+O\+U\+B\+LE\+: double$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+I\+N\+G\+S\+H\+A\+RE\+: const char $\ast$$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+I\+NG\+: const char $\ast$$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+R\+R\+AY\+: Eina\+\_\+\+Value\+\_\+\+Array$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+I\+ST\+: Eina\+\_\+\+Value\+\_\+\+List$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+H\+A\+SH\+: Eina\+\_\+\+Value\+\_\+\+Hash$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+T\+I\+M\+E\+V\+AL\+: struct timeval$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+B\+L\+OB\+: Eina\+\_\+\+Value\+\_\+\+Blob$\ast$ \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+R\+U\+CT\+: Eina\+\_\+\+Value\+\_\+\+Struct \item E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+TM\+: struct tm$\ast$\end{DoxyItemize}

\begin{DoxyCode}
\mbox{\hyperlink{struct__Eina__Value}{Eina\_Value}} *value = \mbox{\hyperlink{group__Eina__Value__Value__Group_gae603129fa62a3b1b560e81fa511ffb13}{eina\_value\_new}}(\mbox{\hyperlink{group__Eina__Value__Group_ga17974fd9ab773a3efefd591ffde58f77}{EINA\_VALUE\_TYPE\_INT}});
\textcolor{keywordtype}{int} x;
\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s;

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\_value\_set}}(value, 1234);
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60f5603f5075da14f3cfd3ddc7766725}{eina\_value\_pget}}(value, &x);

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\_value\_flush}}(value);

\mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\_value\_setup}}(value, \mbox{\hyperlink{group__Eina__Value__Group_ga916f76c8d5ffd4c3ee3c322a54efd0b7}{EINA\_VALUE\_TYPE\_STRING}});
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\_value\_set}}(value, \textcolor{stringliteral}{"hello world!"});
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60f5603f5075da14f3cfd3ddc7766725}{eina\_value\_pget}}(value, &s);

\mbox{\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\_value\_free}}(value);
\end{DoxyCode}


\begin{DoxyNote}{Note}
for array member see \mbox{\hyperlink{group__Eina__Value__Array__Group_ga9358dce2404ed0926db502539f8a1318}{eina\+\_\+value\+\_\+array\+\_\+get()}} 

for list member see \mbox{\hyperlink{group__Eina__Value__List__Group_gaf1b31fc2085b8077f3789bb9365e6818}{eina\+\_\+value\+\_\+list\+\_\+get()}} 

for hash member see \mbox{\hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\+\_\+value\+\_\+hash\+\_\+get()}}
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\+\_\+value\+\_\+set()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_gab268bdee7835a81769ca56503f9addd4}{eina\+\_\+value\+\_\+vset()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}{eina\+\_\+value\+\_\+pset()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga86f91748c90652df59e3ef38bf54949d}\label{group__Eina__Value__Value__Group_ga86f91748c90652df59e3ef38bf54949d}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+convert@{eina\+\_\+value\+\_\+convert}}
\index{eina\+\_\+value\+\_\+convert@{eina\+\_\+value\+\_\+convert}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+convert()}{eina\_value\_convert()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+value\+\_\+convert (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value,  }\item[{\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{convert }\end{DoxyParamCaption})}



Converts one value to another type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & Source value object. \\
\hline
\mbox{\tt out}  & {\em convert} & Destination value object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} if converted, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} otherwise.
\end{DoxyReturn}
Converts one value to another trying first {\itshape value} type {\ttfamily convert\+\_\+to()} function. If unsuccessful, tries using {\ttfamily convert\+\_\+from()} function in {\itshape convert}.

Conversion functions are type defined, and the basic types can convert between themselves, but conversion is strict! That is, if converting from negative value to unsigned type, it will fail. It also fails on value overflow.

It is recommended that all types implement at least convert to string, used by \mbox{\hyperlink{group__Eina__Value__Value__Group_ga8f34b6d6639654dd88cd197c9def78a3}{eina\+\_\+value\+\_\+to\+\_\+string()}}.

\begin{DoxyNote}{Note}
Both objects must have \mbox{\hyperlink{group__Eina__Value__Value__Group_gab5c6558b1b8be2ad597d71a765cbf5f6}{eina\+\_\+value\+\_\+setup()}} called on them beforehand!
\end{DoxyNote}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE.



Referenced by eina\+\_\+value\+\_\+to\+\_\+binbuf().

\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga66f4371f98b77f55fafe252ada0fcd61}\label{group__Eina__Value__Value__Group_ga66f4371f98b77f55fafe252ada0fcd61}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+to\+\_\+binbuf@{eina\+\_\+value\+\_\+to\+\_\+binbuf}}
\index{eina\+\_\+value\+\_\+to\+\_\+binbuf@{eina\+\_\+value\+\_\+to\+\_\+binbuf}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+to\+\_\+binbuf()}{eina\_value\_to\_binbuf()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf}}$\ast$ eina\+\_\+value\+\_\+to\+\_\+binbuf (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value }\end{DoxyParamCaption})}



Converts one value to Eina\+\_\+\+Binbuf. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in,out}  & {\em value} & Source value object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily N\+U\+LL} if it failed to get a memory content, a valid Eina\+\_\+\+Binbuf otherwise.
\end{DoxyReturn}
Converts one value to E\+I\+N\+A\+\_\+\+T\+Y\+P\+E\+\_\+\+V\+A\+L\+U\+E\+\_\+\+B\+L\+OB if necessary by calling {\ttfamily \mbox{\hyperlink{group__Eina__Value__Value__Group_ga86f91748c90652df59e3ef38bf54949d}{eina\+\_\+value\+\_\+convert()}}} function.

\begin{DoxyNote}{Note}
You are responsible for destroying the Eina\+\_\+\+Binbuf returned.
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga8f34b6d6639654dd88cd197c9def78a3}{eina\+\_\+value\+\_\+to\+\_\+string()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga86f91748c90652df59e3ef38bf54949d}{eina\+\_\+value\+\_\+convert()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+20 
\end{DoxySince}


References eina\+\_\+binbuf\+\_\+append\+\_\+length(), eina\+\_\+binbuf\+\_\+new(), eina\+\_\+value\+\_\+convert(), E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+E\+M\+P\+TY, eina\+\_\+value\+\_\+flush(), eina\+\_\+value\+\_\+get(), eina\+\_\+value\+\_\+setup(), and E\+I\+N\+A\+\_\+\+V\+A\+L\+U\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+B\+L\+OB.

\mbox{\Hypertarget{group__Eina__Value__Value__Group_ga8f34b6d6639654dd88cd197c9def78a3}\label{group__Eina__Value__Value__Group_ga8f34b6d6639654dd88cd197c9def78a3}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+to\+\_\+string@{eina\+\_\+value\+\_\+to\+\_\+string}}
\index{eina\+\_\+value\+\_\+to\+\_\+string@{eina\+\_\+value\+\_\+to\+\_\+string}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+to\+\_\+string()}{eina\_value\_to\_string()}}
{\footnotesize\ttfamily char$\ast$ eina\+\_\+value\+\_\+to\+\_\+string (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value }\end{DoxyParamCaption})}



Converts value to string. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & value object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
newly allocated memory or {\ttfamily N\+U\+LL} on failure.
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Value__Group_ga86f91748c90652df59e3ef38bf54949d}{eina\+\_\+value\+\_\+convert()}} 

\mbox{\hyperlink{group__Eina__Value__Value__Group_ga66f4371f98b77f55fafe252ada0fcd61}{eina\+\_\+value\+\_\+to\+\_\+binbuf()}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Value__Value__Group_gad16e8065d5d90cdd37e8c219cfcd281e}\label{group__Eina__Value__Value__Group_gad16e8065d5d90cdd37e8c219cfcd281e}} 
\index{Generic Value management@{Generic Value management}!eina\+\_\+value\+\_\+type\+\_\+get@{eina\+\_\+value\+\_\+type\+\_\+get}}
\index{eina\+\_\+value\+\_\+type\+\_\+get@{eina\+\_\+value\+\_\+type\+\_\+get}!Generic Value management@{Generic Value management}}
\subsubsection{\texorpdfstring{eina\+\_\+value\+\_\+type\+\_\+get()}{eina\_value\_type\_get()}}
{\footnotesize\ttfamily static const \mbox{\hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\+\_\+\+Value\+\_\+\+Type}}$\ast$ eina\+\_\+value\+\_\+type\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\+\_\+\+Value}} $\ast$}]{value }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Queries value type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em value} & Value object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Type instance, or {\ttfamily N\+U\+LL} if type is invalid.
\end{DoxyReturn}
Check if value type is valid and returns it. A type is invalid if it does not exist or if it is using a different version field.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Value__Type__Group_ga4bdb742313b3dcd2ae65441144d04236}{eina\+\_\+value\+\_\+type\+\_\+check()}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2 
\end{DoxySince}


Referenced by eina\+\_\+value\+\_\+object\+\_\+get().

