\hypertarget{group__Efreet__Uri}{\section{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I Specification functions}
\label{group__Efreet__Uri}\index{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I Specification functions@{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I Specification functions}}
}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri}
\begin{DoxyCompactList}\small\item\em \hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Efreet__Uri_ga9bc07d74f1c8d59c170855a97960d099}{typedef struct \hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri} \hyperlink{group__Efreet__Uri_ga9bc07d74f1c8d59c170855a97960d099}{Efreet\-\_\-\-Uri}}\label{group__Efreet__Uri_ga9bc07d74f1c8d59c170855a97960d099}

\begin{DoxyCompactList}\small\item\em \hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
const char $\ast$ \hyperlink{group__Efreet__Uri_ga1d766ebd146dc3f4acae5c7da98b4e25}{efreet\-\_\-uri\-\_\-encode} (\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 \hyperlink{group__Eina__Stringshare__Group_ga4453d2aff2b325c7b45048f30df9b1f5}{eina\-\_\-stringshare\-\_\-del()} when you don't need it anymore. \end{DoxyCompactList}\item 
\hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri} $\ast$ \hyperlink{group__Efreet__Uri_ga611b5a7585637c2c44ab050656cf51cd}{efreet\-\_\-uri\-\_\-decode} (const char $\ast$val)
\begin{DoxyCompactList}\small\item\em Read a single uri and return an \hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri} struct. If there's no hostname in the uri then the hostname parameter will be N\-U\-L\-L. All the uri escaped chars will be converted to normal. \end{DoxyCompactList}\item 
void \hyperlink{group__Efreet__Uri_gac9f2d68cf71d0cf09946f6a184a56540}{efreet\-\_\-uri\-\_\-free} (\hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri} $\ast$uri)
\begin{DoxyCompactList}\small\item\em Free the given uri structure. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


\subsection{Function Documentation}
\hypertarget{group__Efreet__Uri_ga1d766ebd146dc3f4acae5c7da98b4e25}{\index{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I Specification functions@{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I 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 F\-D\-O U\-R\-I Specification functions}}
\subsubsection[{efreet\-\_\-uri\-\_\-encode}]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ efreet\-\_\-uri\-\_\-encode (
\begin{DoxyParamCaption}
\item[{{\bf Efreet\-\_\-\-Uri} $\ast$}]{uri}
\end{DoxyParamCaption}
)}}\label{group__Efreet__Uri_ga1d766ebd146dc3f4acae5c7da98b4e25}


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


\begin{DoxyParams}{Parameters}
{\em uri} & Create an U\-R\-I string from an \hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri} struct \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The string rapresentation of uri (ex\-: '\href{file:///home/my%20name'}{\tt file\-:///home/my\%20name'}) 
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The resulting string will contain the protocol and the path but not the hostname, as many apps doesn't handle it. 
\end{DoxyNote}


References eina\-\_\-stringshare\-\_\-add(), path, and protocol.



Referenced by efreet\-\_\-trash\-\_\-delete\-\_\-uri().

\hypertarget{group__Efreet__Uri_ga611b5a7585637c2c44ab050656cf51cd}{\index{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I Specification functions@{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I 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 F\-D\-O U\-R\-I Specification functions}}
\subsubsection[{efreet\-\_\-uri\-\_\-decode}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Efreet\-\_\-\-Uri}$\ast$ efreet\-\_\-uri\-\_\-decode (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{val}
\end{DoxyParamCaption}
)}}\label{group__Efreet__Uri_ga611b5a7585637c2c44ab050656cf51cd}


Read a single uri and return an \hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri} struct. If there's no hostname in the uri then the hostname parameter will be N\-U\-L\-L. 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 \hyperlink{structEfreet__Uri}{Efreet\-\_\-\-Uri} structure. Or N\-U\-L\-L on errors. 
\end{DoxyReturn}


References eina\-\_\-stringshare\-\_\-add(), hostname, path, and protocol.

\hypertarget{group__Efreet__Uri_gac9f2d68cf71d0cf09946f6a184a56540}{\index{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I Specification functions@{Efreet\-\_\-\-Uri\-: The F\-D\-O U\-R\-I 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 F\-D\-O U\-R\-I Specification functions}}
\subsubsection[{efreet\-\_\-uri\-\_\-free}]{\setlength{\rightskip}{0pt plus 5cm}void efreet\-\_\-uri\-\_\-free (
\begin{DoxyParamCaption}
\item[{{\bf Efreet\-\_\-\-Uri} $\ast$}]{uri}
\end{DoxyParamCaption}
)}}\label{group__Efreet__Uri_gac9f2d68cf71d0cf09946f6a184a56540}


Free the given uri structure. 


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


References hostname, path, and protocol.

