\hypertarget{group__Efreet__Uri}{}\doxysection{Efreet\+\_\+\+Uri\+: The FDO URI Specification functions}
\label{group__Efreet__Uri}\index{Efreet\_Uri: The FDO URI Specification functions@{Efreet\_Uri: The FDO URI Specification functions}}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Efreet__Uri_ga9bc07d74f1c8d59c170855a97960d099}\label{group__Efreet__Uri_ga9bc07d74f1c8d59c170855a97960d099}} 
typedef struct \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} {\bfseries Efreet\+\_\+\+Uri}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
const char $\ast$ \mbox{\hyperlink{group__Efreet__Uri_ga35ddc9aa6ace8328088abb5280ae1409}{efreet\+\_\+uri\+\_\+encode}} (\mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} $\ast$uri)
\begin{DoxyCompactList}\small\item\em Get the string rapresentation of the given uri struct escaping illegal caracters. Remember to free the string with \mbox{\hyperlink{group__Eina__Stringshare__Group_ga5538b4a134987b8a01744fad1a845ba4}{eina\+\_\+stringshare\+\_\+del()}} when you don\textquotesingle{}t need it anymore. \end{DoxyCompactList}\item 
\mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} $\ast$ \mbox{\hyperlink{group__Efreet__Uri_ga1c64849a9846afa04c85906dbafc63bf}{efreet\+\_\+uri\+\_\+decode}} (const char $\ast$val)
\begin{DoxyCompactList}\small\item\em Read a single uri and return an \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} struct. If there\textquotesingle{}s no hostname in the uri then the hostname parameter will be NULL. All the uri escaped chars will be converted to normal. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Efreet__Uri_gac9f2d68cf71d0cf09946f6a184a56540}{efreet\+\_\+uri\+\_\+free}} (\mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} $\ast$uri)
\begin{DoxyCompactList}\small\item\em Free the given uri structure. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Efreet__Uri_ga35ddc9aa6ace8328088abb5280ae1409}\label{group__Efreet__Uri_ga35ddc9aa6ace8328088abb5280ae1409}} 
\index{Efreet\_Uri: The FDO URI Specification functions@{Efreet\_Uri: The FDO URI Specification functions}!efreet\_uri\_encode@{efreet\_uri\_encode}}
\index{efreet\_uri\_encode@{efreet\_uri\_encode}!Efreet\_Uri: The FDO URI Specification functions@{Efreet\_Uri: The FDO URI Specification functions}}
\doxysubsubsection{\texorpdfstring{efreet\_uri\_encode()}{efreet\_uri\_encode()}}
{\footnotesize\ttfamily const char $\ast$ efreet\+\_\+uri\+\_\+encode (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} $\ast$}]{uri }\end{DoxyParamCaption})}



Get the string rapresentation of the given uri struct escaping illegal caracters. Remember to free the string with \mbox{\hyperlink{group__Eina__Stringshare__Group_ga5538b4a134987b8a01744fad1a845ba4}{eina\+\_\+stringshare\+\_\+del()}} when you don\textquotesingle{}t need it anymore. 


\begin{DoxyParams}{Parameters}
{\em uri} & Create an URI string from an \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} struct \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The string rapresentation of uri (ex\+: \textquotesingle{}\href{file:///home/my\%20name'}{\texttt{ file\+:///home/my\%20name\textquotesingle{}}}) 
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The resulting string will contain the protocol and the path but not the hostname, as many apps doesn\textquotesingle{}t handle it. 
\end{DoxyNote}
\mbox{\Hypertarget{group__Efreet__Uri_ga1c64849a9846afa04c85906dbafc63bf}\label{group__Efreet__Uri_ga1c64849a9846afa04c85906dbafc63bf}} 
\index{Efreet\_Uri: The FDO URI Specification functions@{Efreet\_Uri: The FDO URI Specification functions}!efreet\_uri\_decode@{efreet\_uri\_decode}}
\index{efreet\_uri\_decode@{efreet\_uri\_decode}!Efreet\_Uri: The FDO URI Specification functions@{Efreet\_Uri: The FDO URI Specification functions}}
\doxysubsubsection{\texorpdfstring{efreet\_uri\_decode()}{efreet\_uri\_decode()}}
{\footnotesize\ttfamily \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} $\ast$ efreet\+\_\+uri\+\_\+decode (\begin{DoxyParamCaption}\item[{const char $\ast$}]{val }\end{DoxyParamCaption})}



Read a single uri and return an \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} struct. If there\textquotesingle{}s no hostname in the uri then the hostname parameter will be NULL. All the uri escaped chars will be converted to normal. 


\begin{DoxyParams}{Parameters}
{\em val} & a valid uri string to parse \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Return The corresponding \mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} structure. Or NULL on errors. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Efreet__Uri_gac9f2d68cf71d0cf09946f6a184a56540}\label{group__Efreet__Uri_gac9f2d68cf71d0cf09946f6a184a56540}} 
\index{Efreet\_Uri: The FDO URI Specification functions@{Efreet\_Uri: The FDO URI Specification functions}!efreet\_uri\_free@{efreet\_uri\_free}}
\index{efreet\_uri\_free@{efreet\_uri\_free}!Efreet\_Uri: The FDO URI Specification functions@{Efreet\_Uri: The FDO URI Specification functions}}
\doxysubsubsection{\texorpdfstring{efreet\_uri\_free()}{efreet\_uri\_free()}}
{\footnotesize\ttfamily void efreet\+\_\+uri\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structEfreet__Uri}{Efreet\+\_\+\+Uri}} $\ast$}]{uri }\end{DoxyParamCaption})}



Free the given uri structure. 


\begin{DoxyParams}{Parameters}
{\em uri} & The uri to free \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{structEfreet__Uri_a64db921018b0fd1920eaca43250f5aa3}{hostname}}, \mbox{\hyperlink{structEfreet__Uri_a7a507dff468df3ae90e107e2e6e25f6d}{path}}, and \mbox{\hyperlink{structEfreet__Uri_ad665893a361bfe1746439333351246b1}{protocol}}.

