\hypertarget{group__Eina__Value__Hash__Group}{\section{Generic Value Hash management}
\label{group__Eina__Value__Hash__Group}\index{Generic Value Hash management@{Generic Value Hash management}}
}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct__Eina__Value__Hash}{\-\_\-\-Eina\-\_\-\-Value\-\_\-\-Hash}
\begin{DoxyCompactList}\small\item\em Used to store the hash and its subtype. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \hyperlink{struct__Eina__Value__Hash}{\-\_\-\-Eina\-\_\-\-Value\-\_\-\-Hash} \hyperlink{group__Eina__Value__Hash__Group_ga0b0c67d047e146367e335ff854407671}{Eina\-\_\-\-Value\-\_\-\-Hash}
\begin{DoxyCompactList}\small\item\em Value type for \hyperlink{group__Eina__Value__Group_gae007408c7e8c4c9240236d45ea6f7d8f}{E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-H\-A\-S\-H}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$ \hyperlink{group__Eina__Value__Hash__Group_gafbb30853d8db3752714847ff5cd802e5}{eina\-\_\-value\-\_\-hash\-\_\-new} (const \hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\-\_\-\-Value\-\_\-\-Type} $\ast$subtype, unsigned int buckets\-\_\-power\-\_\-size)
\begin{DoxyCompactList}\small\item\em Create generic value storage of type hash. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Value__Hash__Group_ga712d1d68686e99abaccbb830734688e4}{eina\-\_\-value\-\_\-hash\-\_\-setup} (\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value, const \hyperlink{group__Eina__Value__Group_gaab67ab8bcd0624280c5276044b07e0d2}{Eina\-\_\-\-Value\-\_\-\-Type} $\ast$subtype, unsigned int buckets\-\_\-power\-\_\-size)
\begin{DoxyCompactList}\small\item\em Initialize generic value storage of type hash. \end{DoxyCompactList}\item 
static unsigned int \hyperlink{group__Eina__Value__Hash__Group_ga1594d3ca724fcbb99dc3354a33cdfee3}{eina\-\_\-value\-\_\-hash\-\_\-population} (const \hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value)
\begin{DoxyCompactList}\small\item\em Query number of elements in value of hash type. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Value__Hash__Group_ga7c4430f3cc6cb7baba7f9b16dd625812}{eina\-\_\-value\-\_\-hash\-\_\-del} (\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value, const char $\ast$key)
\begin{DoxyCompactList}\small\item\em Remove element at given position in value of hash type. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\-\_\-value\-\_\-hash\-\_\-set} (\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value, const char $\ast$key,...)
\begin{DoxyCompactList}\small\item\em Set the generic value in an hash member. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\-\_\-value\-\_\-hash\-\_\-get} (const \hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value, const char $\ast$key,...)
\begin{DoxyCompactList}\small\item\em Get the generic value from an hash member. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}{eina\-\_\-value\-\_\-hash\-\_\-vset} (\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value, const char $\ast$key, va\-\_\-list args)
\begin{DoxyCompactList}\small\item\em Set the generic value in an hash member. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Value__Hash__Group_gaef1be893a3b48fd34fc27dc99e5f060a}{eina\-\_\-value\-\_\-hash\-\_\-vget} (const \hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value, const char $\ast$key, va\-\_\-list args)
\begin{DoxyCompactList}\small\item\em Get the generic value from an hash member. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}{eina\-\_\-value\-\_\-hash\-\_\-pset} (\hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value, const char $\ast$key, const void $\ast$ptr)
\begin{DoxyCompactList}\small\item\em Set the generic value in an hash member from pointer. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Value__Hash__Group_ga7f1bdc2866197c971f06056aecc5af28}{eina\-\_\-value\-\_\-hash\-\_\-pget} (const \hyperlink{group__Eina__Value__Group_ga7985e8af6e956ae31b381bf829173cc0}{Eina\-\_\-\-Value} $\ast$value, const char $\ast$key, void $\ast$ptr)
\begin{DoxyCompactList}\small\item\em Get the generic value to pointer from an hash member. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


\subsection{Typedef Documentation}
\hypertarget{group__Eina__Value__Hash__Group_ga0b0c67d047e146367e335ff854407671}{\index{Generic Value Hash management@{Generic Value Hash management}!Eina\-\_\-\-Value\-\_\-\-Hash@{Eina\-\_\-\-Value\-\_\-\-Hash}}
\index{Eina\-\_\-\-Value\-\_\-\-Hash@{Eina\-\_\-\-Value\-\_\-\-Hash}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{Eina\-\_\-\-Value\-\_\-\-Hash}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Eina\-\_\-\-Value\-\_\-\-Hash}}}\label{group__Eina__Value__Hash__Group_ga0b0c67d047e146367e335ff854407671}


Value type for \hyperlink{group__Eina__Value__Group_gae007408c7e8c4c9240236d45ea6f7d8f}{E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-H\-A\-S\-H}. 

\begin{DoxySeeAlso}{See Also}
\hyperlink{struct__Eina__Value__Hash}{\-\_\-\-Eina\-\_\-\-Value\-\_\-\-Hash} explains fields. 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}


\subsection{Function Documentation}
\hypertarget{group__Eina__Value__Hash__Group_gafbb30853d8db3752714847ff5cd802e5}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-new@{eina\-\_\-value\-\_\-hash\-\_\-new}}
\index{eina\-\_\-value\-\_\-hash\-\_\-new@{eina\-\_\-value\-\_\-hash\-\_\-new}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-new}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Eina\-\_\-\-Value}$\ast$ eina\-\_\-value\-\_\-hash\-\_\-new (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Value\-\_\-\-Type} $\ast$}]{subtype, }
\item[{unsigned int}]{buckets\-\_\-power\-\_\-size}
\end{DoxyParamCaption}
)}}\label{group__Eina__Value__Hash__Group_gafbb30853d8db3752714847ff5cd802e5}


Create generic value storage of type hash. 


\begin{DoxyParams}{Parameters}
{\em subtype} & how to manage this hash members. \\
\hline
{\em buckets\-\_\-power\-\_\-size} & how to allocate hash buckets (2 $^\wedge$ buckets\-\_\-power\-\_\-size), if zero then a sane value is chosen. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The new value or {\ttfamily N\-U\-L\-L} on failure.
\end{DoxyReturn}
Create a new generic value storage of type hash. The members are managed using the description specified by {\itshape subtype}.

On failure, {\ttfamily N\-U\-L\-L} is returned.

\begin{DoxyNote}{Note}
this creates from mempool and then uses \hyperlink{group__Eina__Value__Hash__Group_ga712d1d68686e99abaccbb830734688e4}{eina\-\_\-value\-\_\-hash\-\_\-setup()}.
\end{DoxyNote}
\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\-\_\-value\-\_\-free()} 

\hyperlink{group__Eina__Value__Hash__Group_ga712d1d68686e99abaccbb830734688e4}{eina\-\_\-value\-\_\-hash\-\_\-setup()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}


References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, eina\-\_\-mempool\-\_\-free(), eina\-\_\-mempool\-\_\-malloc(), eina\-\_\-value\-\_\-hash\-\_\-setup(), and eina\-\_\-value\-\_\-type\-\_\-check().

\hypertarget{group__Eina__Value__Hash__Group_ga712d1d68686e99abaccbb830734688e4}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-setup@{eina\-\_\-value\-\_\-hash\-\_\-setup}}
\index{eina\-\_\-value\-\_\-hash\-\_\-setup@{eina\-\_\-value\-\_\-hash\-\_\-setup}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-setup}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-value\-\_\-hash\-\_\-setup (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Value} $\ast$}]{value, }
\item[{const {\bf Eina\-\_\-\-Value\-\_\-\-Type} $\ast$}]{subtype, }
\item[{unsigned int}]{buckets\-\_\-power\-\_\-size}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_ga712d1d68686e99abaccbb830734688e4}


Initialize generic value storage of type hash. 


\begin{DoxyParams}{Parameters}
{\em value} & value object \\
\hline
{\em subtype} & how to manage this hash members. \\
\hline
{\em buckets\-\_\-power\-\_\-size} & how to allocate hash buckets (2 $^\wedge$ buckets\-\_\-power\-\_\-size), if zero then a sane value is chosen. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
Initializes new generic value storage of type hash with the given {\itshape subtype}.

This is the same as calling \hyperlink{group__Eina__Value__Value__Group_ga9a1407c953694c3d6f40ab01ebe9a294}{eina\-\_\-value\-\_\-set()} with \hyperlink{group__Eina__Value__Group_gae007408c7e8c4c9240236d45ea6f7d8f}{E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-H\-A\-S\-H} followed by \hyperlink{group__Eina__Value__Value__Group_ga60352abff8ce5f9cdfc870ba9cf2f28e}{eina\-\_\-value\-\_\-pset()} with the \hyperlink{group__Eina__Value__Hash__Group_ga0b0c67d047e146367e335ff854407671}{Eina\-\_\-\-Value\-\_\-\-Hash} description configured.

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

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__Value__Value__Group_ga940660709a2862bafac92f47bb721a68}{eina\-\_\-value\-\_\-flush()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}


Referenced by eina\-\_\-value\-\_\-hash\-\_\-new().

\hypertarget{group__Eina__Value__Hash__Group_ga1594d3ca724fcbb99dc3354a33cdfee3}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-population@{eina\-\_\-value\-\_\-hash\-\_\-population}}
\index{eina\-\_\-value\-\_\-hash\-\_\-population@{eina\-\_\-value\-\_\-hash\-\_\-population}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-population}]{\setlength{\rightskip}{0pt plus 5cm}static unsigned int eina\-\_\-value\-\_\-hash\-\_\-population (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Value} $\ast$}]{value}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_ga1594d3ca724fcbb99dc3354a33cdfee3}


Query number of elements in value of hash type. 


\begin{DoxyParams}{Parameters}
{\em value} & value object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
number of child elements. 
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}
\hypertarget{group__Eina__Value__Hash__Group_ga7c4430f3cc6cb7baba7f9b16dd625812}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-del@{eina\-\_\-value\-\_\-hash\-\_\-del}}
\index{eina\-\_\-value\-\_\-hash\-\_\-del@{eina\-\_\-value\-\_\-hash\-\_\-del}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-del}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-value\-\_\-hash\-\_\-del (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Value} $\ast$}]{value, }
\item[{const char $\ast$}]{key}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_ga7c4430f3cc6cb7baba7f9b16dd625812}


Remove element at given position in value of hash type. 


\begin{DoxyParams}{Parameters}
{\em value} & value object. \\
\hline
{\em key} & key to find the member \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. 
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}
\hypertarget{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-set@{eina\-\_\-value\-\_\-hash\-\_\-set}}
\index{eina\-\_\-value\-\_\-hash\-\_\-set@{eina\-\_\-value\-\_\-hash\-\_\-set}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-value\-\_\-hash\-\_\-set (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Value} $\ast$}]{value, }
\item[{const char $\ast$}]{key, }
\item[{}]{...}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}


Set the generic value in an hash member. 


\begin{DoxyParams}{Parameters}
{\em value} & source value object \\
\hline
{\em key} & key to find the member \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
The variable argument is dependent on chosen subtype. The list for basic types\-:

\begin{DoxyItemize}
\item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-C\-H\-A\-R\-: unsigned char \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-S\-H\-O\-R\-T\-: unsigned short \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-I\-N\-T\-: unsigned int \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-L\-O\-N\-G\-: 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\-A\-R\-: char \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-H\-O\-R\-T\-: short \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-I\-N\-T\-: int \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-L\-O\-N\-G\-: 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\-A\-T\-: float \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-D\-O\-U\-B\-L\-E\-: double \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-I\-N\-G\-S\-H\-A\-R\-E\-: const char $\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-I\-N\-G\-: const char $\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-H\-A\-S\-H\-: Eina\-\_\-\-Value\-\_\-\-Hash \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-T\-I\-M\-E\-V\-A\-L\-: struct timeval$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-B\-L\-O\-B\-: Eina\-\_\-\-Value\-\_\-\-Blob$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-U\-C\-T\-: Eina\-\_\-\-Value\-\_\-\-Struct$\ast$\end{DoxyItemize}

\begin{DoxyCode}
\hyperlink{struct__Eina__Value}{Eina\_Value} *value = \hyperlink{group__Eina__Value__Hash__Group_gafbb30853d8db3752714847ff5cd802e5}{eina\_value\_hash\_new}(
      \hyperlink{group__Eina__Value__Group_ga17974fd9ab773a3efefd591ffde58f77}{EINA\_VALUE\_TYPE\_INT}, 0);
\textcolor{keywordtype}{int} x;

\hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\_value\_hash\_set}(value, \textcolor{stringliteral}{"abc"}, 5678);
\hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\_value\_hash\_get}(value, \textcolor{stringliteral}{"abc"}, &x);
\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\_value\_free}(value);
\end{DoxyCode}


\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\-\_\-value\-\_\-hash\-\_\-get()} 

\hyperlink{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}{eina\-\_\-value\-\_\-hash\-\_\-vset()} 

\hyperlink{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}{eina\-\_\-value\-\_\-hash\-\_\-pset()} 

\hyperlink{group__Eina__Value__Hash__Group_ga7c4430f3cc6cb7baba7f9b16dd625812}{eina\-\_\-value\-\_\-hash\-\_\-del()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}
\hypertarget{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-get@{eina\-\_\-value\-\_\-hash\-\_\-get}}
\index{eina\-\_\-value\-\_\-hash\-\_\-get@{eina\-\_\-value\-\_\-hash\-\_\-get}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-value\-\_\-hash\-\_\-get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Value} $\ast$}]{value, }
\item[{const char $\ast$}]{key, }
\item[{}]{...}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}


Get the generic value from an hash member. 


\begin{DoxyParams}{Parameters}
{\em value} & source value object \\
\hline
{\em key} & key to find the member \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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't be any memory allocation, thus the contents should {\bfseries not} be freed.

The variable argument is dependent on chosen subtype. The list for basic types\-:

\begin{DoxyItemize}
\item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-C\-H\-A\-R\-: unsigned char$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-S\-H\-O\-R\-T\-: unsigned short$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-I\-N\-T\-: unsigned int$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-L\-O\-N\-G\-: 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\-A\-R\-: char$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-H\-O\-R\-T\-: short$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-I\-N\-T\-: int$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-L\-O\-N\-G\-: 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\-A\-T\-: float$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-D\-O\-U\-B\-L\-E\-: 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\-R\-E\-: const char $\ast$$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-I\-N\-G\-: const char $\ast$$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-H\-A\-S\-H\-: Eina\-\_\-\-Value\-\_\-\-Hash$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-T\-I\-M\-E\-V\-A\-L\-: struct timeval$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-B\-L\-O\-B\-: Eina\-\_\-\-Value\-\_\-\-Blob$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-U\-C\-T\-: Eina\-\_\-\-Value\-\_\-\-Struct$\ast$\end{DoxyItemize}

\begin{DoxyCode}
\hyperlink{struct__Eina__Value}{Eina\_Value} *value = \hyperlink{group__Eina__Value__Hash__Group_gafbb30853d8db3752714847ff5cd802e5}{eina\_value\_hash\_new}(
      \hyperlink{group__Eina__Value__Group_ga17974fd9ab773a3efefd591ffde58f77}{EINA\_VALUE\_TYPE\_INT}, 0);
\textcolor{keywordtype}{int} x;

\hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\_value\_hash\_set}(value, \textcolor{stringliteral}{"abc"}, 1234);
\hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\_value\_hash\_get}(value, \textcolor{stringliteral}{"abc"}, &x);
\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\_value\_free}(value);
\end{DoxyCode}


\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\-\_\-value\-\_\-hash\-\_\-set()} 

\hyperlink{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}{eina\-\_\-value\-\_\-hash\-\_\-vset()} 

\hyperlink{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}{eina\-\_\-value\-\_\-hash\-\_\-pset()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}
\hypertarget{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-vset@{eina\-\_\-value\-\_\-hash\-\_\-vset}}
\index{eina\-\_\-value\-\_\-hash\-\_\-vset@{eina\-\_\-value\-\_\-hash\-\_\-vset}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-vset}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-value\-\_\-hash\-\_\-vset (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Value} $\ast$}]{value, }
\item[{const char $\ast$}]{key, }
\item[{va\-\_\-list}]{args}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}


Set the generic value in an hash member. 


\begin{DoxyParams}{Parameters}
{\em value} & source value object \\
\hline
{\em key} & key to find the member \\
\hline
{\em args} & variable argument \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. 
\end{DoxyReturn}
\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\-\_\-value\-\_\-hash\-\_\-set()} 

\hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\-\_\-value\-\_\-hash\-\_\-get()} 

\hyperlink{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}{eina\-\_\-value\-\_\-hash\-\_\-pset()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}
\hypertarget{group__Eina__Value__Hash__Group_gaef1be893a3b48fd34fc27dc99e5f060a}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-vget@{eina\-\_\-value\-\_\-hash\-\_\-vget}}
\index{eina\-\_\-value\-\_\-hash\-\_\-vget@{eina\-\_\-value\-\_\-hash\-\_\-vget}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-vget}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-value\-\_\-hash\-\_\-vget (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Value} $\ast$}]{value, }
\item[{const char $\ast$}]{key, }
\item[{va\-\_\-list}]{args}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_gaef1be893a3b48fd34fc27dc99e5f060a}


Get the generic value from an hash member. 


\begin{DoxyParams}{Parameters}
{\em value} & source value object \\
\hline
{\em key} & key to find the member \\
\hline
{\em args} & variable argument \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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't be any memory allocation, thus the contents should {\bfseries not} be freed.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}{eina\-\_\-value\-\_\-hash\-\_\-vset()} 

\hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\-\_\-value\-\_\-hash\-\_\-get()} 

\hyperlink{group__Eina__Value__Hash__Group_ga7f1bdc2866197c971f06056aecc5af28}{eina\-\_\-value\-\_\-hash\-\_\-pget()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}
\hypertarget{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-pset@{eina\-\_\-value\-\_\-hash\-\_\-pset}}
\index{eina\-\_\-value\-\_\-hash\-\_\-pset@{eina\-\_\-value\-\_\-hash\-\_\-pset}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-pset}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-value\-\_\-hash\-\_\-pset (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Value} $\ast$}]{value, }
\item[{const char $\ast$}]{key, }
\item[{const void $\ast$}]{ptr}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}


Set the generic value in an hash member from pointer. 


\begin{DoxyParams}{Parameters}
{\em value} & source value object \\
\hline
{\em key} & key to find the member \\
\hline
{\em ptr} & pointer to specify the contents. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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\-\_\-\-U\-C\-H\-A\-R\-: unsigned char$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-S\-H\-O\-R\-T\-: unsigned short$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-I\-N\-T\-: unsigned int$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-L\-O\-N\-G\-: 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\-A\-R\-: char$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-H\-O\-R\-T\-: short$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-I\-N\-T\-: int$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-L\-O\-N\-G\-: 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\-A\-T\-: float$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-D\-O\-U\-B\-L\-E\-: 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\-R\-E\-: const char $\ast$$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-I\-N\-G\-: const char $\ast$$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-H\-A\-S\-H\-: Eina\-\_\-\-Value\-\_\-\-Hash$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-T\-I\-M\-E\-V\-A\-L\-: struct timeval$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-B\-L\-O\-B\-: Eina\-\_\-\-Value\-\_\-\-Blob$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-U\-C\-T\-: Eina\-\_\-\-Value\-\_\-\-Struct$\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}
\hyperlink{struct__Eina__Value}{Eina\_Value} *value = \hyperlink{group__Eina__Value__Hash__Group_gafbb30853d8db3752714847ff5cd802e5}{eina\_value\_hash\_new}(
      \hyperlink{group__Eina__Value__Group_ga17974fd9ab773a3efefd591ffde58f77}{EINA\_VALUE\_TYPE\_INT}, 0);
\textcolor{keywordtype}{int} x = 1234;

\hyperlink{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}{eina\_value\_hash\_pset}(value, \textcolor{stringliteral}{"abc"}, &x);
\hyperlink{group__Eina__Value__Hash__Group_ga7f1bdc2866197c971f06056aecc5af28}{eina\_value\_hash\_pget}(value, \textcolor{stringliteral}{"abc"}, &x);
\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\_value\_free}(value);
\end{DoxyCode}


\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\-\_\-value\-\_\-hash\-\_\-set()} 

\hyperlink{group__Eina__Value__Hash__Group_ga854b308b7fab1f9e2ecdd41fa9d9770c}{eina\-\_\-value\-\_\-hash\-\_\-get()} 

\hyperlink{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}{eina\-\_\-value\-\_\-hash\-\_\-vset()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}
\hypertarget{group__Eina__Value__Hash__Group_ga7f1bdc2866197c971f06056aecc5af28}{\index{Generic Value Hash management@{Generic Value Hash management}!eina\-\_\-value\-\_\-hash\-\_\-pget@{eina\-\_\-value\-\_\-hash\-\_\-pget}}
\index{eina\-\_\-value\-\_\-hash\-\_\-pget@{eina\-\_\-value\-\_\-hash\-\_\-pget}!Generic Value Hash management@{Generic Value Hash management}}
\subsubsection[{eina\-\_\-value\-\_\-hash\-\_\-pget}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-value\-\_\-hash\-\_\-pget (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Value} $\ast$}]{value, }
\item[{const char $\ast$}]{key, }
\item[{void $\ast$}]{ptr}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Value__Hash__Group_ga7f1bdc2866197c971f06056aecc5af28}


Get the generic value to pointer from an hash member. 


\begin{DoxyParams}{Parameters}
{\em value} & source value object \\
\hline
{\em key} & key to find the member \\
\hline
{\em ptr} & pointer to receive the contents. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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'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\-\_\-\-U\-C\-H\-A\-R\-: unsigned char$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-S\-H\-O\-R\-T\-: unsigned short$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-I\-N\-T\-: unsigned int$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-U\-L\-O\-N\-G\-: 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\-A\-R\-: char$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-H\-O\-R\-T\-: short$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-I\-N\-T\-: int$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-L\-O\-N\-G\-: 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\-A\-T\-: float$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-D\-O\-U\-B\-L\-E\-: 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\-R\-E\-: const char $\ast$$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-I\-N\-G\-: const char $\ast$$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-H\-A\-S\-H\-: Eina\-\_\-\-Value\-\_\-\-Hash$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-T\-I\-M\-E\-V\-A\-L\-: struct timeval$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-B\-L\-O\-B\-: Eina\-\_\-\-Value\-\_\-\-Blob$\ast$ \item E\-I\-N\-A\-\_\-\-V\-A\-L\-U\-E\-\_\-\-T\-Y\-P\-E\-\_\-\-S\-T\-R\-U\-C\-T\-: Eina\-\_\-\-Value\-\_\-\-Struct$\ast$\end{DoxyItemize}

\begin{DoxyCode}
\hyperlink{struct__Eina__Value}{Eina\_Value} *value = \hyperlink{group__Eina__Value__Hash__Group_gafbb30853d8db3752714847ff5cd802e5}{eina\_value\_hash\_new}(
      \hyperlink{group__Eina__Value__Group_ga17974fd9ab773a3efefd591ffde58f77}{EINA\_VALUE\_TYPE\_INT}, 0);
\textcolor{keywordtype}{int} x;

\hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\_value\_hash\_set}(value, \textcolor{stringliteral}{"abc"}, 1234);
\hyperlink{group__Eina__Value__Hash__Group_ga7f1bdc2866197c971f06056aecc5af28}{eina\_value\_hash\_pget}(value, \textcolor{stringliteral}{"abc"}, &x);
\hyperlink{group__Eina__Value__Value__Group_gaa2aa7ac9d1fcd7c4497cf104cb374a52}{eina\_value\_free}(value);
\end{DoxyCode}


\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__Value__Hash__Group_ga949a995459d191bfc9a88e4173d25b5e}{eina\-\_\-value\-\_\-hash\-\_\-set()} 

\hyperlink{group__Eina__Value__Hash__Group_gab3886b1dc08c33a4467974238684e0e0}{eina\-\_\-value\-\_\-hash\-\_\-vset()} 

\hyperlink{group__Eina__Value__Hash__Group_ga3c6d9f9d9234adfef7e58e5ac6821d20}{eina\-\_\-value\-\_\-hash\-\_\-pset()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2 
\end{DoxySince}
