\hypertarget{group__Eina__Unicode__String__Buffer__Group}{}\section{Unicode String Buffer}
\label{group__Eina__Unicode__String__Buffer__Group}\index{Unicode String Buffer@{Unicode String Buffer}}


These functions provide unicode string buffers management.  


\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga2df89d90d995cdcd94006fb0d9015b2e}{eina\+\_\+ustrbuf\+\_\+prepend}}(buf,  str)~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga9d5cc76fb7f56590182e7ea0f0eefacf}{eina\+\_\+ustrbuf\+\_\+insert}}(buf, str, 0)
\begin{DoxyCompactList}\small\item\em Prepends the given string to the given buffer. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga74f79468f265edb54c88737c5ce34d89}{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+escaped}}(buf,  str)~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gab455325438ba6417a1bdca7f8c4a26a0}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped}}(buf, str, 0)
\begin{DoxyCompactList}\small\item\em Prepends the given escaped string to the given buffer. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gac9c2670138e359fb589070a3022c029b}{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+n}}(buf,  str,  maxlen)~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4ab8388942bc326cae4d66475dd340d3}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n}}(buf, str, maxlen, 0)
\begin{DoxyCompactList}\small\item\em Prepends the given escaped string to the given buffer. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga506aeb220292c78e6e5c0fc3c77241cd}{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+length}}(buf,  str,  length)~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4a8e9fa7aa26d929ecabf1fdf29ca83e}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length}}(buf, str, length, 0)
\begin{DoxyCompactList}\small\item\em Prepends the given escaped string to the given buffer. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga948150887ad0c0d563c8272951be909d}{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+char}}(buf,  c)~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gacd082fde0314e40ea0751b6414fe6d45}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+char}}(buf, c, 0)
\begin{DoxyCompactList}\small\item\em Prepends the given unicode character to the given buffer. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}\label{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}} 
typedef struct \mbox{\hyperlink{struct__Eina__Strbuf}{\+\_\+\+Eina\+\_\+\+Strbuf}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}}
\begin{DoxyCompactList}\small\item\em Type for a string buffer. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$ \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gae65fd48114aef5426d50784d46014d30}{eina\+\_\+ustrbuf\+\_\+new}} (void)
\begin{DoxyCompactList}\small\item\em Creates a new string buffer. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$ \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gac82867081a70ee01519a84edff5fd22f}{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new}} (\mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str)
\begin{DoxyCompactList}\small\item\em Creates a new string buffer using the passed string. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$ \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga3fe5948e0a957065a11084f43dfcee53}{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new\+\_\+length}} (\mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str, size\+\_\+t length)
\begin{DoxyCompactList}\small\item\em Creates a new string buffer using the passed string. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gabe1f60b2fae2b2880ab35a62724606d6}{eina\+\_\+ustrbuf\+\_\+free}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Frees a string buffer. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gace4cd475062194c019ea5224bf2ab931}{eina\+\_\+ustrbuf\+\_\+reset}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Resets a string buffer. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str)
\begin{DoxyCompactList}\small\item\em Appends a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gae0d9246a1fdca1192db495f98595f49f}{eina\+\_\+ustrbuf\+\_\+append\+\_\+escaped}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str)
\begin{DoxyCompactList}\small\item\em Appends an escaped string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1f423c6728c19b7291401ade2db6c2c6}{eina\+\_\+ustrbuf\+\_\+append\+\_\+n}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str, size\+\_\+t maxlen)
\begin{DoxyCompactList}\small\item\em Appends a string to a buffer, reallocating as necessary, limited by the given length. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga97722b96a56cca4eeed4217ca2069c17}{eina\+\_\+ustrbuf\+\_\+append\+\_\+length}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str, size\+\_\+t length)
\begin{DoxyCompactList}\small\item\em Appends a string of exact length to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gaff2e942dfa402d00c205e9449620f06a}{eina\+\_\+ustrbuf\+\_\+append\+\_\+slice}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}} slice)
\begin{DoxyCompactList}\small\item\em Appends a slice to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1a9ae6645fb473c28cd810ca3c1191de}{eina\+\_\+ustrbuf\+\_\+append\+\_\+char}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} c)
\begin{DoxyCompactList}\small\item\em Appends a character to a string buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga9d5cc76fb7f56590182e7ea0f0eefacf}{eina\+\_\+ustrbuf\+\_\+insert}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str, size\+\_\+t pos)
\begin{DoxyCompactList}\small\item\em Inserts a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gab455325438ba6417a1bdca7f8c4a26a0}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str, size\+\_\+t pos)
\begin{DoxyCompactList}\small\item\em Inserts an escaped string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4ab8388942bc326cae4d66475dd340d3}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str, size\+\_\+t maxlen, size\+\_\+t pos)
\begin{DoxyCompactList}\small\item\em Inserts a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4a8e9fa7aa26d929ecabf1fdf29ca83e}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$str, size\+\_\+t length, size\+\_\+t pos)
\begin{DoxyCompactList}\small\item\em Inserts a string of exact length to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gaf067e15471c74d30c50f52a99cf713b7}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+slice}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}} slice, size\+\_\+t pos)
\begin{DoxyCompactList}\small\item\em Inserts a slice to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gacd082fde0314e40ea0751b6414fe6d45}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+char}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} c, size\+\_\+t pos)
\begin{DoxyCompactList}\small\item\em Inserts a character to a string buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga6fdf161dc3be55146d266de92878fe45}{eina\+\_\+ustrbuf\+\_\+remove}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf, size\+\_\+t start, size\+\_\+t end)
\begin{DoxyCompactList}\small\item\em Removes a slice of the given string buffer. \end{DoxyCompactList}\item 
const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$ \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gafb195dbff55306b5255153927be941cd}{eina\+\_\+ustrbuf\+\_\+string\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Retrieves a pointer to the contents of a string buffer. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$ \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga400816da7f9b4bd4cfa0a8192920b383}{eina\+\_\+ustrbuf\+\_\+string\+\_\+steal}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Steals the contents of a string buffer. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga82cc368e0e2e597f2db9fbae6404b3bf}{eina\+\_\+ustrbuf\+\_\+string\+\_\+free}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Frees the contents of a string buffer but not the buffer. \end{DoxyCompactList}\item 
size\+\_\+t \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gaa47c70e6012f47eeae4860be27b2005e}{eina\+\_\+ustrbuf\+\_\+length\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Retrieves the length of the string buffer content. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga0129ce8b083b81f8493765d2803a3e1a}{eina\+\_\+ustrbuf\+\_\+slice\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Gets a read-\/only slice representing the current ustrbuf contents. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Slice__Group_gad43ea51c6434252512a3e7305cea4af3}{Eina\+\_\+\+Rw\+\_\+\+Slice}} \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gaa354692082a6d33eb586373bcdcdd2a7}{eina\+\_\+ustrbuf\+\_\+rw\+\_\+slice\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Gets a read-\/write slice representing the current ustrbuf contents. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$ \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga7cb76d5d165855e6d9597bf1cc4b7e70}{eina\+\_\+ustrbuf\+\_\+release}} (\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Gets the string of the buffer and free the buffer. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
These functions provide unicode string buffers management. 

The Unicode String Buffer data type is designed to be a mutable string, allowing to append, prepend or insert a string to a buffer. 

\subsection{Macro Definition Documentation}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga2df89d90d995cdcd94006fb0d9015b2e}\label{group__Eina__Unicode__String__Buffer__Group_ga2df89d90d995cdcd94006fb0d9015b2e}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+prepend@{eina\+\_\+ustrbuf\+\_\+prepend}}
\index{eina\+\_\+ustrbuf\+\_\+prepend@{eina\+\_\+ustrbuf\+\_\+prepend}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+prepend}{eina\_ustrbuf\_prepend}}
{\footnotesize\ttfamily \#define eina\+\_\+ustrbuf\+\_\+prepend(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga9d5cc76fb7f56590182e7ea0f0eefacf}{eina\+\_\+ustrbuf\+\_\+insert}}(buf, str, 0)}



Prepends the given string to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to prepend to. \\
\hline
{\em str} & The string to prepend. \\
\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}} on failure.
\end{DoxyReturn}
This macro is calling \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga9d5cc76fb7f56590182e7ea0f0eefacf}{eina\+\_\+ustrbuf\+\_\+insert()}} at position 0.\+If {\ttfamily buf} can\textquotesingle{}t prepend it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga74f79468f265edb54c88737c5ce34d89}\label{group__Eina__Unicode__String__Buffer__Group_ga74f79468f265edb54c88737c5ce34d89}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+prepend\+\_\+escaped@{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+escaped}}
\index{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+escaped@{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+escaped}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+escaped}{eina\_ustrbuf\_prepend\_escaped}}
{\footnotesize\ttfamily \#define eina\+\_\+ustrbuf\+\_\+prepend\+\_\+escaped(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gab455325438ba6417a1bdca7f8c4a26a0}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped}}(buf, str, 0)}



Prepends the given escaped string to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to prepend to. \\
\hline
{\em str} & The string to prepend. \\
\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}} on failure.
\end{DoxyReturn}
This macro is calling \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gab455325438ba6417a1bdca7f8c4a26a0}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped()}} at position 0. If {\ttfamily buf} can\textquotesingle{}t prepend it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gac9c2670138e359fb589070a3022c029b}\label{group__Eina__Unicode__String__Buffer__Group_gac9c2670138e359fb589070a3022c029b}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+prepend\+\_\+n@{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+n}}
\index{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+n@{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+n}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+n}{eina\_ustrbuf\_prepend\_n}}
{\footnotesize\ttfamily \#define eina\+\_\+ustrbuf\+\_\+prepend\+\_\+n(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str,  }\item[{}]{maxlen }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4ab8388942bc326cae4d66475dd340d3}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n}}(buf, str, maxlen, 0)}



Prepends the given escaped string to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to prepend to. \\
\hline
{\em str} & The string to prepend. \\
\hline
{\em maxlen} & The maximum number of Eina\+\_\+\+Unicode $\ast$s to prepend. \\
\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}} on failure.
\end{DoxyReturn}
This macro is calling \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4ab8388942bc326cae4d66475dd340d3}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n()}} at position 0. If {\ttfamily buf} can\textquotesingle{}t prepend it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga506aeb220292c78e6e5c0fc3c77241cd}\label{group__Eina__Unicode__String__Buffer__Group_ga506aeb220292c78e6e5c0fc3c77241cd}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+prepend\+\_\+length@{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+length}}
\index{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+length@{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+length}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+length}{eina\_ustrbuf\_prepend\_length}}
{\footnotesize\ttfamily \#define eina\+\_\+ustrbuf\+\_\+prepend\+\_\+length(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str,  }\item[{}]{length }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4a8e9fa7aa26d929ecabf1fdf29ca83e}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length}}(buf, str, length, 0)}



Prepends the given escaped string to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to prepend to. \\
\hline
{\em str} & The string to prepend. \\
\hline
{\em length} & The exact length to use. \\
\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}} on failure.
\end{DoxyReturn}
This macro is calling \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4a8e9fa7aa26d929ecabf1fdf29ca83e}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length()}} at position 0. If {\ttfamily buf} can\textquotesingle{}t prepend it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga948150887ad0c0d563c8272951be909d}\label{group__Eina__Unicode__String__Buffer__Group_ga948150887ad0c0d563c8272951be909d}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+prepend\+\_\+char@{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+char}}
\index{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+char@{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+char}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+prepend\+\_\+char}{eina\_ustrbuf\_prepend\_char}}
{\footnotesize\ttfamily \#define eina\+\_\+ustrbuf\+\_\+prepend\+\_\+char(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{c }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gacd082fde0314e40ea0751b6414fe6d45}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+char}}(buf, c, 0)}



Prepends the given unicode character to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to prepend to. \\
\hline
{\em c} & The Eina\+\_\+\+Unicode character to prepend. \\
\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}} on failure.
\end{DoxyReturn}
This macro is calling eina\+\_\+ustrbuf\+\_\+insert\+\_\+\+Eina\+\_\+\+Unicode $\ast$() at position 0. If {\ttfamily buf} can\textquotesingle{}t prepend it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. 

\subsection{Function Documentation}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gae65fd48114aef5426d50784d46014d30}\label{group__Eina__Unicode__String__Buffer__Group_gae65fd48114aef5426d50784d46014d30}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+new@{eina\+\_\+ustrbuf\+\_\+new}}
\index{eina\+\_\+ustrbuf\+\_\+new@{eina\+\_\+ustrbuf\+\_\+new}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+new()}{eina\_ustrbuf\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}}$\ast$ eina\+\_\+ustrbuf\+\_\+new (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Creates a new string buffer. 

\begin{DoxyReturn}{Returns}
Newly allocated string buffer instance.
\end{DoxyReturn}
This function creates a new string buffer. On error, {\ttfamily N\+U\+LL} is returned. To free the resources, use \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gabe1f60b2fae2b2880ab35a62724606d6}{eina\+\_\+ustrbuf\+\_\+free()}}.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gabe1f60b2fae2b2880ab35a62724606d6}{eina\+\_\+ustrbuf\+\_\+free()}} 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gafb195dbff55306b5255153927be941cd}{eina\+\_\+ustrbuf\+\_\+string\+\_\+get()}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gac82867081a70ee01519a84edff5fd22f}\label{group__Eina__Unicode__String__Buffer__Group_gac82867081a70ee01519a84edff5fd22f}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+manage\+\_\+new@{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new}}
\index{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new@{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new()}{eina\_ustrbuf\_manage\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}}$\ast$ eina\+\_\+ustrbuf\+\_\+manage\+\_\+new (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str }\end{DoxyParamCaption})}



Creates a new string buffer using the passed string. 

The passed string is used directly as the buffer, it\textquotesingle{}s somehow the opposite function of \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga400816da7f9b4bd4cfa0a8192920b383}{eina\+\_\+ustrbuf\+\_\+string\+\_\+steal}} . The passed string must be malloced.


\begin{DoxyParams}{Parameters}
{\em str} & The string to manage \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Newly allocated string buffer instance
\end{DoxyReturn}
This function creates a new string buffer. On error, {\ttfamily N\+U\+LL} is returned. To free the resources, use \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}{eina\+\_\+strbuf\+\_\+free()}}.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gabe1f60b2fae2b2880ab35a62724606d6}{eina\+\_\+ustrbuf\+\_\+free()}} 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gafb195dbff55306b5255153927be941cd}{eina\+\_\+ustrbuf\+\_\+string\+\_\+get()}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+1.\+0 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga3fe5948e0a957065a11084f43dfcee53}\label{group__Eina__Unicode__String__Buffer__Group_ga3fe5948e0a957065a11084f43dfcee53}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+manage\+\_\+new\+\_\+length@{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new\+\_\+length}}
\index{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new\+\_\+length@{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new\+\_\+length}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new\+\_\+length()}{eina\_ustrbuf\_manage\_new\_length()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}}$\ast$ eina\+\_\+ustrbuf\+\_\+manage\+\_\+new\+\_\+length (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str,  }\item[{size\+\_\+t}]{length }\end{DoxyParamCaption})}



Creates a new string buffer using the passed string. 

The passed string is used directly as the buffer, it\textquotesingle{}s somehow the opposite function of \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga400816da7f9b4bd4cfa0a8192920b383}{eina\+\_\+ustrbuf\+\_\+string\+\_\+steal}} . The passed string must be malloced.


\begin{DoxyParams}{Parameters}
{\em str} & The string to manage \\
\hline
{\em length} & The length of the string. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Newly allocated string buffer instance.
\end{DoxyReturn}
This function creates a new string buffer. On error, {\ttfamily N\+U\+LL} is returned. To free the resources, use \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gabe1f60b2fae2b2880ab35a62724606d6}{eina\+\_\+ustrbuf\+\_\+free()}}.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gac82867081a70ee01519a84edff5fd22f}{eina\+\_\+ustrbuf\+\_\+manage\+\_\+new()}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2.\+0 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gabe1f60b2fae2b2880ab35a62724606d6}\label{group__Eina__Unicode__String__Buffer__Group_gabe1f60b2fae2b2880ab35a62724606d6}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+free@{eina\+\_\+ustrbuf\+\_\+free}}
\index{eina\+\_\+ustrbuf\+\_\+free@{eina\+\_\+ustrbuf\+\_\+free}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+free()}{eina\_ustrbuf\_free()}}
{\footnotesize\ttfamily void eina\+\_\+ustrbuf\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Frees a string buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to free.\\
\hline
\end{DoxyParams}
This function frees the memory of {\ttfamily buf}. {\ttfamily buf} must have been created by \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gae65fd48114aef5426d50784d46014d30}{eina\+\_\+ustrbuf\+\_\+new()}}. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gace4cd475062194c019ea5224bf2ab931}\label{group__Eina__Unicode__String__Buffer__Group_gace4cd475062194c019ea5224bf2ab931}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+reset@{eina\+\_\+ustrbuf\+\_\+reset}}
\index{eina\+\_\+ustrbuf\+\_\+reset@{eina\+\_\+ustrbuf\+\_\+reset}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+reset()}{eina\_ustrbuf\_reset()}}
{\footnotesize\ttfamily void eina\+\_\+ustrbuf\+\_\+reset (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Resets a string buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to reset.\\
\hline
\end{DoxyParams}
This function reset {\ttfamily buf\+:} the buffer len is set to 0, and the string is set to \textquotesingle{}\textbackslash{}0\textquotesingle{}. No memory is free\textquotesingle{}d. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}\label{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+append@{eina\+\_\+ustrbuf\+\_\+append}}
\index{eina\+\_\+ustrbuf\+\_\+append@{eina\+\_\+ustrbuf\+\_\+append}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+append()}{eina\_ustrbuf\_append()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+append (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str }\end{DoxyParamCaption})}



Appends a string to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em str} & The string to append. \\
\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}} on failure.
\end{DoxyReturn}
This function appends {\ttfamily str} to {\ttfamily buf}. It computes the length of {\ttfamily str}, so is slightly slower than \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga97722b96a56cca4eeed4217ca2069c17}{eina\+\_\+ustrbuf\+\_\+append\+\_\+length()}}. If the length is known beforehand, consider using that variant. If {\ttfamily buf} can\textquotesingle{}t append it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga97722b96a56cca4eeed4217ca2069c17}{eina\+\_\+ustrbuf\+\_\+append\+\_\+length()}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gae0d9246a1fdca1192db495f98595f49f}\label{group__Eina__Unicode__String__Buffer__Group_gae0d9246a1fdca1192db495f98595f49f}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+append\+\_\+escaped@{eina\+\_\+ustrbuf\+\_\+append\+\_\+escaped}}
\index{eina\+\_\+ustrbuf\+\_\+append\+\_\+escaped@{eina\+\_\+ustrbuf\+\_\+append\+\_\+escaped}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+append\+\_\+escaped()}{eina\_ustrbuf\_append\_escaped()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+append\+\_\+escaped (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str }\end{DoxyParamCaption})}



Appends an escaped string to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em str} & The string to append. \\
\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}} on failure.
\end{DoxyReturn}
This function appends the escaped string {\ttfamily str} to {\ttfamily buf}. If {\ttfamily str} can not be appended, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise, \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga1f423c6728c19b7291401ade2db6c2c6}\label{group__Eina__Unicode__String__Buffer__Group_ga1f423c6728c19b7291401ade2db6c2c6}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+append\+\_\+n@{eina\+\_\+ustrbuf\+\_\+append\+\_\+n}}
\index{eina\+\_\+ustrbuf\+\_\+append\+\_\+n@{eina\+\_\+ustrbuf\+\_\+append\+\_\+n}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+append\+\_\+n()}{eina\_ustrbuf\_append\_n()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+append\+\_\+n (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str,  }\item[{size\+\_\+t}]{maxlen }\end{DoxyParamCaption})}



Appends a string to a buffer, reallocating as necessary, limited by the given length. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em str} & The string to append. \\
\hline
{\em maxlen} & The maximum number of characters to append. \\
\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}} on failure.
\end{DoxyReturn}
This function appends at most {\ttfamily maxlen} characters of {\ttfamily str} to {\ttfamily buf}. It can\textquotesingle{}t appends more than the length of {\ttfamily str}. It computes the length of {\ttfamily str}, so is slightly slower than \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga97722b96a56cca4eeed4217ca2069c17}{eina\+\_\+ustrbuf\+\_\+append\+\_\+length()}}. If the length is known beforehand, consider using that variant ({\ttfamily maxlen} should then be checked so that it is greater than the size of {\ttfamily str}). If {\ttfamily str} can not be appended, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise, \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga97722b96a56cca4eeed4217ca2069c17}{eina\+\_\+ustrbuf\+\_\+append\+\_\+length()}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga97722b96a56cca4eeed4217ca2069c17}\label{group__Eina__Unicode__String__Buffer__Group_ga97722b96a56cca4eeed4217ca2069c17}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+append\+\_\+length@{eina\+\_\+ustrbuf\+\_\+append\+\_\+length}}
\index{eina\+\_\+ustrbuf\+\_\+append\+\_\+length@{eina\+\_\+ustrbuf\+\_\+append\+\_\+length}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+append\+\_\+length()}{eina\_ustrbuf\_append\_length()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+append\+\_\+length (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str,  }\item[{size\+\_\+t}]{length }\end{DoxyParamCaption})}



Appends a string of exact length to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em str} & The string to append. \\
\hline
{\em length} & The exact length to use. \\
\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}} on failure.
\end{DoxyReturn}
This function appends {\ttfamily str} to {\ttfamily buf}. {\ttfamily str} must be of size at most {\ttfamily length}. It is slightly faster than \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append()}} as it does not compute the size of {\ttfamily str}. It is useful when dealing with strings of known size, such as eina\+\_\+strngshare. If {\ttfamily buf} can\textquotesingle{}t append it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned.

\begin{DoxySeeAlso}{See also}
eina\+\_\+stringshare\+\_\+length() 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1f423c6728c19b7291401ade2db6c2c6}{eina\+\_\+ustrbuf\+\_\+append\+\_\+n()}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gaff2e942dfa402d00c205e9449620f06a}\label{group__Eina__Unicode__String__Buffer__Group_gaff2e942dfa402d00c205e9449620f06a}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+append\+\_\+slice@{eina\+\_\+ustrbuf\+\_\+append\+\_\+slice}}
\index{eina\+\_\+ustrbuf\+\_\+append\+\_\+slice@{eina\+\_\+ustrbuf\+\_\+append\+\_\+slice}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+append\+\_\+slice()}{eina\_ustrbuf\_append\_slice()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+append\+\_\+slice (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}}}]{slice }\end{DoxyParamCaption})}



Appends a slice to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em slice} & The slice to append. \\
\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}} on failure.
\end{DoxyReturn}
This function appends {\ttfamily slice} to {\ttfamily buf}. If {\ttfamily buf} can\textquotesingle{}t append it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned.

\begin{DoxySince}{Since}
1.\+19.\+0 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga1a9ae6645fb473c28cd810ca3c1191de}\label{group__Eina__Unicode__String__Buffer__Group_ga1a9ae6645fb473c28cd810ca3c1191de}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+append\+\_\+char@{eina\+\_\+ustrbuf\+\_\+append\+\_\+char}}
\index{eina\+\_\+ustrbuf\+\_\+append\+\_\+char@{eina\+\_\+ustrbuf\+\_\+append\+\_\+char}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+append\+\_\+char()}{eina\_ustrbuf\_append\_char()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+append\+\_\+char (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{\mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}}}]{c }\end{DoxyParamCaption})}



Appends a character to a string buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em c} & The char to append. \\
\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}} on failure.
\end{DoxyReturn}
This function inserts {\ttfamily c} to {\ttfamily buf}. If it can not insert it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga9d5cc76fb7f56590182e7ea0f0eefacf}\label{group__Eina__Unicode__String__Buffer__Group_ga9d5cc76fb7f56590182e7ea0f0eefacf}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+insert@{eina\+\_\+ustrbuf\+\_\+insert}}
\index{eina\+\_\+ustrbuf\+\_\+insert@{eina\+\_\+ustrbuf\+\_\+insert}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+insert()}{eina\_ustrbuf\_insert()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+insert (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str,  }\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption})}



Inserts a string to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to insert. \\
\hline
{\em str} & The string to insert. \\
\hline
{\em pos} & The position to insert the string. \\
\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}} on failure.
\end{DoxyReturn}
This function inserts {\ttfamily str} to {\ttfamily buf} at position {\ttfamily pos}. It computes the length of {\ttfamily str}, so is slightly slower than \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4a8e9fa7aa26d929ecabf1fdf29ca83e}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length()}}. If the length is known beforehand, consider using that variant. If {\ttfamily buf} can\textquotesingle{}t insert it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gab455325438ba6417a1bdca7f8c4a26a0}\label{group__Eina__Unicode__String__Buffer__Group_gab455325438ba6417a1bdca7f8c4a26a0}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped}}
\index{eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped()}{eina\_ustrbuf\_insert\_escaped()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+insert\+\_\+escaped (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str,  }\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption})}



Inserts an escaped string to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to insert to. \\
\hline
{\em str} & The string to insert. \\
\hline
{\em pos} & The position to insert the string. \\
\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}} on failure.
\end{DoxyReturn}
This function inserts the escaped string {\ttfamily str} to {\ttfamily buf} at position {\ttfamily pos}. If {\ttfamily buf} can\textquotesingle{}t insert {\ttfamily str}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga4ab8388942bc326cae4d66475dd340d3}\label{group__Eina__Unicode__String__Buffer__Group_ga4ab8388942bc326cae4d66475dd340d3}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+insert\+\_\+n@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n}}
\index{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n()}{eina\_ustrbuf\_insert\_n()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+insert\+\_\+n (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str,  }\item[{size\+\_\+t}]{maxlen,  }\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption})}



Inserts a string to a buffer, reallocating as necessary. 

Limited by maxlen.


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to insert to. \\
\hline
{\em str} & The string to insert. \\
\hline
{\em maxlen} & The maximum number of chars to insert. \\
\hline
{\em pos} & The position to insert the string. \\
\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}} on failure.
\end{DoxyReturn}
This function inserts {\ttfamily str} ot {\ttfamily buf} at position {\ttfamily pos}, with at most {\ttfamily maxlen} bytes. The number of inserted characters can not be greater than the length of {\ttfamily str}. It computes the length of {\ttfamily str}, so is slightly slower than \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4a8e9fa7aa26d929ecabf1fdf29ca83e}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length()}}. If the length is known beforehand, consider using that variant ({\ttfamily maxlen} should then be checked so that it is greater than the size of {\ttfamily str}). If {\ttfamily str} can not be inserted, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise, \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga4a8e9fa7aa26d929ecabf1fdf29ca83e}\label{group__Eina__Unicode__String__Buffer__Group_ga4a8e9fa7aa26d929ecabf1fdf29ca83e}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+insert\+\_\+length@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length}}
\index{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+insert\+\_\+length()}{eina\_ustrbuf\_insert\_length()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+insert\+\_\+length (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}} $\ast$}]{str,  }\item[{size\+\_\+t}]{length,  }\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption})}



Inserts a string of exact length to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to insert to. \\
\hline
{\em str} & The string to insert. \\
\hline
{\em length} & The exact length to use. \\
\hline
{\em pos} & The position to insert the string. \\
\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}} on failure.
\end{DoxyReturn}
This function inserts {\ttfamily str} to {\ttfamily buf}. {\ttfamily str} must be of size at most {\ttfamily length}. It is slightly faster than \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga9d5cc76fb7f56590182e7ea0f0eefacf}{eina\+\_\+ustrbuf\+\_\+insert()}} as it does not compute the size of {\ttfamily str}. It is useful when dealing with strings of known size, such as eina\+\_\+strngshare. If {\ttfamily buf} can\textquotesingle{}t insert it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned.

\begin{DoxySeeAlso}{See also}
eina\+\_\+stringshare\+\_\+length() 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga9d5cc76fb7f56590182e7ea0f0eefacf}{eina\+\_\+ustrbuf\+\_\+insert()}} 

\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga4ab8388942bc326cae4d66475dd340d3}{eina\+\_\+ustrbuf\+\_\+insert\+\_\+n()}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gaf067e15471c74d30c50f52a99cf713b7}\label{group__Eina__Unicode__String__Buffer__Group_gaf067e15471c74d30c50f52a99cf713b7}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+insert\+\_\+slice@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+slice}}
\index{eina\+\_\+ustrbuf\+\_\+insert\+\_\+slice@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+slice}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+insert\+\_\+slice()}{eina\_ustrbuf\_insert\_slice()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+insert\+\_\+slice (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}}}]{slice,  }\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption})}



Inserts a slice to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to insert to. \\
\hline
{\em slice} & The slice to insert. \\
\hline
{\em pos} & The position to insert the string. \\
\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}} on failure.
\end{DoxyReturn}
This function inserts {\ttfamily slice} to {\ttfamily buf} at position {\ttfamily pos}. If {\ttfamily buf} can\textquotesingle{}t insert it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned.

\begin{DoxySince}{Since}
1.\+19.\+0 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gacd082fde0314e40ea0751b6414fe6d45}\label{group__Eina__Unicode__String__Buffer__Group_gacd082fde0314e40ea0751b6414fe6d45}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+insert\+\_\+char@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+char}}
\index{eina\+\_\+ustrbuf\+\_\+insert\+\_\+char@{eina\+\_\+ustrbuf\+\_\+insert\+\_\+char}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+insert\+\_\+char()}{eina\_ustrbuf\_insert\_char()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+insert\+\_\+char (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{\mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}}}]{c,  }\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption})}



Inserts a character to a string buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to insert to. \\
\hline
{\em c} & The char to insert. \\
\hline
{\em pos} & The position to insert the char. \\
\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}} on failure.
\end{DoxyReturn}
This function inserts {\ttfamily c} to {\ttfamily buf} at position {\ttfamily pos}. If {\ttfamily buf} can\textquotesingle{}t append it, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} is returned, otherwise \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} is returned. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga6fdf161dc3be55146d266de92878fe45}\label{group__Eina__Unicode__String__Buffer__Group_ga6fdf161dc3be55146d266de92878fe45}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+remove@{eina\+\_\+ustrbuf\+\_\+remove}}
\index{eina\+\_\+ustrbuf\+\_\+remove@{eina\+\_\+ustrbuf\+\_\+remove}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+remove()}{eina\_ustrbuf\_remove()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+ustrbuf\+\_\+remove (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf,  }\item[{size\+\_\+t}]{start,  }\item[{size\+\_\+t}]{end }\end{DoxyParamCaption})}



Removes a slice of the given string buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to remove a slice. \\
\hline
{\em start} & The initial (inclusive) slice position to start removing, in bytes. \\
\hline
{\em end} & The final (non-\/inclusive) slice position to finish removing, in bytes. \\
\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}} on failure.
\end{DoxyReturn}
This function removes a slice of {\ttfamily buf}, starting at {\ttfamily start} (inclusive) and ending at {\ttfamily end} (non-\/inclusive). Both values are in bytes. It returns \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\+I\+N\+A\+\_\+\+F\+A\+L\+SE}} on failure, \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\+I\+N\+A\+\_\+\+T\+R\+UE}} otherwise. 

Referenced by evas\+\_\+textblock\+\_\+cursor\+\_\+char\+\_\+delete(), and evas\+\_\+textblock\+\_\+node\+\_\+format\+\_\+remove\+\_\+pair().

\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gafb195dbff55306b5255153927be941cd}\label{group__Eina__Unicode__String__Buffer__Group_gafb195dbff55306b5255153927be941cd}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+string\+\_\+get@{eina\+\_\+ustrbuf\+\_\+string\+\_\+get}}
\index{eina\+\_\+ustrbuf\+\_\+string\+\_\+get@{eina\+\_\+ustrbuf\+\_\+string\+\_\+get}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+string\+\_\+get()}{eina\_ustrbuf\_string\_get()}}
{\footnotesize\ttfamily const \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}}$\ast$ eina\+\_\+ustrbuf\+\_\+string\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Retrieves a pointer to the contents of a string buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The current string in the string buffer.
\end{DoxyReturn}
This function returns the string contained in {\ttfamily buf}. The returned value must not be modified and will no longer be valid if {\ttfamily buf} is modified. In other words, any \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append()}} or similar will make that pointer invalid.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga400816da7f9b4bd4cfa0a8192920b383}{eina\+\_\+ustrbuf\+\_\+string\+\_\+steal()}} 
\end{DoxySeeAlso}


Referenced by evas\+\_\+object\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+get(), evas\+\_\+textblock\+\_\+cursor\+\_\+char\+\_\+delete(), evas\+\_\+textblock\+\_\+cursor\+\_\+char\+\_\+next(), evas\+\_\+textblock\+\_\+cursor\+\_\+word\+\_\+end(), and evas\+\_\+textblock\+\_\+cursor\+\_\+word\+\_\+start().

\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga400816da7f9b4bd4cfa0a8192920b383}\label{group__Eina__Unicode__String__Buffer__Group_ga400816da7f9b4bd4cfa0a8192920b383}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+string\+\_\+steal@{eina\+\_\+ustrbuf\+\_\+string\+\_\+steal}}
\index{eina\+\_\+ustrbuf\+\_\+string\+\_\+steal@{eina\+\_\+ustrbuf\+\_\+string\+\_\+steal}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+string\+\_\+steal()}{eina\_ustrbuf\_string\_steal()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}}$\ast$ eina\+\_\+ustrbuf\+\_\+string\+\_\+steal (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Steals the contents of a string buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to steal. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The current string in the string buffer.
\end{DoxyReturn}
This function returns the string contained in {\ttfamily buf}. {\ttfamily buf} is then initialized and does not own the returned string anymore. The caller must release the memory of the returned string by calling free().

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_gafb195dbff55306b5255153927be941cd}{eina\+\_\+ustrbuf\+\_\+string\+\_\+get()}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga82cc368e0e2e597f2db9fbae6404b3bf}\label{group__Eina__Unicode__String__Buffer__Group_ga82cc368e0e2e597f2db9fbae6404b3bf}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+string\+\_\+free@{eina\+\_\+ustrbuf\+\_\+string\+\_\+free}}
\index{eina\+\_\+ustrbuf\+\_\+string\+\_\+free@{eina\+\_\+ustrbuf\+\_\+string\+\_\+free}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+string\+\_\+free()}{eina\_ustrbuf\_string\_free()}}
{\footnotesize\ttfamily void eina\+\_\+ustrbuf\+\_\+string\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Frees the contents of a string buffer but not the buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to free the string of.\\
\hline
\end{DoxyParams}
This function frees the string contained in {\ttfamily buf} without freeing {\ttfamily buf}. \mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gaa47c70e6012f47eeae4860be27b2005e}\label{group__Eina__Unicode__String__Buffer__Group_gaa47c70e6012f47eeae4860be27b2005e}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+length\+\_\+get@{eina\+\_\+ustrbuf\+\_\+length\+\_\+get}}
\index{eina\+\_\+ustrbuf\+\_\+length\+\_\+get@{eina\+\_\+ustrbuf\+\_\+length\+\_\+get}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+length\+\_\+get()}{eina\_ustrbuf\_length\_get()}}
{\footnotesize\ttfamily size\+\_\+t eina\+\_\+ustrbuf\+\_\+length\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Retrieves the length of the string buffer content. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The current length of the string, in bytes.
\end{DoxyReturn}
This function returns the length of {\ttfamily buf}. 

Referenced by evas\+\_\+object\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+get(), evas\+\_\+textblock\+\_\+cursor\+\_\+char\+\_\+delete(), evas\+\_\+textblock\+\_\+cursor\+\_\+paragraph\+\_\+char\+\_\+last(), evas\+\_\+textblock\+\_\+cursor\+\_\+paragraph\+\_\+text\+\_\+length\+\_\+get(), evas\+\_\+textblock\+\_\+cursor\+\_\+pos\+\_\+set(), evas\+\_\+textblock\+\_\+cursor\+\_\+word\+\_\+end(), and evas\+\_\+textblock\+\_\+cursor\+\_\+word\+\_\+start().

\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga0129ce8b083b81f8493765d2803a3e1a}\label{group__Eina__Unicode__String__Buffer__Group_ga0129ce8b083b81f8493765d2803a3e1a}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+slice\+\_\+get@{eina\+\_\+ustrbuf\+\_\+slice\+\_\+get}}
\index{eina\+\_\+ustrbuf\+\_\+slice\+\_\+get@{eina\+\_\+ustrbuf\+\_\+slice\+\_\+get}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+slice\+\_\+get()}{eina\_ustrbuf\_slice\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}} eina\+\_\+ustrbuf\+\_\+slice\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Gets a read-\/only slice representing the current ustrbuf contents. 


\begin{DoxyParams}{Parameters}
{\em buf} & The source string. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A read-\/only slice for the current contents. It may become invalid as soon as the {\itshape buf} is changed.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+19 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_gaa354692082a6d33eb586373bcdcdd2a7}\label{group__Eina__Unicode__String__Buffer__Group_gaa354692082a6d33eb586373bcdcdd2a7}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+rw\+\_\+slice\+\_\+get@{eina\+\_\+ustrbuf\+\_\+rw\+\_\+slice\+\_\+get}}
\index{eina\+\_\+ustrbuf\+\_\+rw\+\_\+slice\+\_\+get@{eina\+\_\+ustrbuf\+\_\+rw\+\_\+slice\+\_\+get}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+rw\+\_\+slice\+\_\+get()}{eina\_ustrbuf\_rw\_slice\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Slice__Group_gad43ea51c6434252512a3e7305cea4af3}{Eina\+\_\+\+Rw\+\_\+\+Slice}} eina\+\_\+ustrbuf\+\_\+rw\+\_\+slice\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Gets a read-\/write slice representing the current ustrbuf contents. 


\begin{DoxyParams}{Parameters}
{\em buf} & The source string. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A read-\/write slice for the current contents. It may become invalid as soon as the {\itshape buf} is changed with calls such as \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga23eb33daa92454aaca50e41174c14975}{eina\+\_\+ustrbuf\+\_\+append()}}, \mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga6fdf161dc3be55146d266de92878fe45}{eina\+\_\+ustrbuf\+\_\+remove()}}
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+19.\+0 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Unicode__String__Buffer__Group_ga7cb76d5d165855e6d9597bf1cc4b7e70}\label{group__Eina__Unicode__String__Buffer__Group_ga7cb76d5d165855e6d9597bf1cc4b7e70}} 
\index{Unicode String Buffer@{Unicode String Buffer}!eina\+\_\+ustrbuf\+\_\+release@{eina\+\_\+ustrbuf\+\_\+release}}
\index{eina\+\_\+ustrbuf\+\_\+release@{eina\+\_\+ustrbuf\+\_\+release}!Unicode String Buffer@{Unicode String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+ustrbuf\+\_\+release()}{eina\_ustrbuf\_release()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Unicode__String_ga00d6dbe6710822ef81e9539fc57c4b12}{Eina\+\_\+\+Unicode}}$\ast$ eina\+\_\+ustrbuf\+\_\+release (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Unicode__String__Buffer__Group_ga1eafaa2e98b141efc47bc19d892da81b}{Eina\+\_\+\+U\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Gets the string of the buffer and free the buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The buffer to get the string from and which will be freed\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The string contained by buf. The caller must release the memory of the returned string by calling free().
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+19 
\end{DoxySince}
