\hypertarget{group__Eina__String__Buffer__Group}{}\section{String Buffer}
\label{group__Eina__String__Buffer__Group}\index{String Buffer@{String Buffer}}


These functions provide string buffers management.  


\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga1816dd2a9e1071a3ca35e4ad2e862402}{eina\+\_\+strbuf\+\_\+prepend}}(buf,  str)~\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga0990bbe862fcf90e5c259a5b2c3a9a66}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_gae1014eaec5abac59c810a874ba95d0c1}{eina\+\_\+strbuf\+\_\+prepend\+\_\+escaped}}(buf,  str)~\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga04719a5613488bbbd17f9eb75933d2c1}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga56b481419ab90f7420a50f56d4559aa2}{eina\+\_\+strbuf\+\_\+prepend\+\_\+n}}(buf,  str,  maxlen)~\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaaf6f39311db7d7d074ea087ae4ee7c63}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga322886c027a063e92b1daa0a806272cc}{eina\+\_\+strbuf\+\_\+prepend\+\_\+length}}(buf,  str,  length)~\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga548eb8a66646b753cce9091051b1ea08}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_gac979572ea69d8f3de67cedb0d7011553}{eina\+\_\+strbuf\+\_\+prepend\+\_\+char}}(buf,  c)~\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaf019380a09f1dcf8473b64b4ff699543}{eina\+\_\+strbuf\+\_\+insert\+\_\+char}}(buf, c, 0)
\begin{DoxyCompactList}\small\item\em Prepends the given character to the given buffer. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group__Eina__String__Buffer__Group_gabc989298d3db5b39eb68c15eed75fe88}{eina\+\_\+strbuf\+\_\+prepend\+\_\+printf}}(buf,  fmt, ...)~\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga8dca9fa4f4d792e32ab0b3b3542de8ab}{eina\+\_\+strbuf\+\_\+insert\+\_\+printf}}(buf, fmt, 0, \#\# \+\_\+\+\_\+\+V\+A\+\_\+\+A\+R\+G\+S\+\_\+\+\_\+)
\begin{DoxyCompactList}\small\item\em Prepends the given string to the given buffer. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga7e54fa58ee7a21ef21a781d9728cf839}{eina\+\_\+strbuf\+\_\+prepend\+\_\+vprintf}}(buf,  fmt,  args)~\mbox{\hyperlink{group__Eina__String__Buffer__Group_gae0cb598486b360b1ba06848b485d593f}{eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf}}(buf, fmt, 0, args)
\begin{DoxyCompactList}\small\item\em Prepends the given string to the given buffer. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group__Eina__String__Buffer__Group_gadb9be08a24e6b4a8702ca9930cf1ea17}{eina\+\_\+strbuf\+\_\+replace\+\_\+first}}(buf,  str,  with)~\mbox{\hyperlink{group__Eina__String__Buffer__Group_gab86896d681b3dc51022a0555d41f20f1}{eina\+\_\+strbuf\+\_\+replace}}(buf, str, with, 1)
\begin{DoxyCompactList}\small\item\em Prepends the given character to the given buffer. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}\label{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}} 
typedef struct \mbox{\hyperlink{struct__Eina__Strbuf}{\+\_\+\+Eina\+\_\+\+Strbuf}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}}
\begin{DoxyCompactList}\small\item\em Type for a string buffer. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$ \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga6f3c9ce942e61364a10ec7c0ea01cedc}{eina\+\_\+strbuf\+\_\+new}} (void)
\begin{DoxyCompactList}\small\item\em Creates a new string buffer. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$ \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga458a02a82d743856819ae239fd94e95d}{eina\+\_\+strbuf\+\_\+manage\+\_\+new}} (char $\ast$str)
\begin{DoxyCompactList}\small\item\em Creates a new string buffer using the passed string. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$ \mbox{\hyperlink{group__Eina__String__Buffer__Group_gae4f4e9f6f1a7135027357144c655d944}{eina\+\_\+strbuf\+\_\+manage\+\_\+new\+\_\+length}} (char $\ast$str, size\+\_\+t length)
\begin{DoxyCompactList}\small\item\em Creates a new string buffer using the passed string. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$ \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga5ae85082ac2f6a00621b4a5703850759}{eina\+\_\+strbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length}} (const char $\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__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}{eina\+\_\+strbuf\+\_\+free}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Frees a string buffer. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga9f3435de2169ee40306c0111fa1a60b6}{eina\+\_\+strbuf\+\_\+reset}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\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__String__Buffer__Group_ga408b371f57f35a8f5391c2e85ab28b35}{eina\+\_\+strbuf\+\_\+append\+\_\+escaped}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\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__String__Buffer__Group_ga8a66b98b4c957658c87f4a79c2f1b10b}{eina\+\_\+strbuf\+\_\+append\+\_\+n}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\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__String__Buffer__Group_gaad4f562f3a36881f12a4df5154e04b26}{eina\+\_\+strbuf\+\_\+append\+\_\+length}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\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__String__Buffer__Group_ga919d8dbf60bdbfa71cd71b3b8345233b}{eina\+\_\+strbuf\+\_\+append\+\_\+slice}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}} slice)
\begin{DoxyCompactList}\small\item\em Append a slice to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_gae6aaf2952c53d0bac97fa36f2570c15b}{eina\+\_\+strbuf\+\_\+append\+\_\+buffer}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$data)
\begin{DoxyCompactList}\small\item\em Appends an Eina\+\_\+\+Strbuf to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga8afef8fb6f9aedcd6a81603bef0c7f86}{eina\+\_\+strbuf\+\_\+append\+\_\+char}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, char 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__String__Buffer__Group_ga436897daafadbf56f2e3d7c0d4d21040}{eina\+\_\+strbuf\+\_\+append\+\_\+printf}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\ast$fmt,...) \mbox{\hyperlink{group__Eina__Types__Group_ga50265482f1d9b18e4b98e97cfa2c8d05}{E\+I\+N\+A\+\_\+\+P\+R\+I\+N\+TF}}(2
\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__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga4e1679239587f6f9f1c3c27838e4e6a1}{eina\+\_\+strbuf\+\_\+append\+\_\+vprintf}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\ast$fmt, va\+\_\+list args)
\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__String__Buffer__Group_ga0990bbe862fcf90e5c259a5b2c3a9a66}{eina\+\_\+strbuf\+\_\+insert}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\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__String__Buffer__Group_ga04719a5613488bbbd17f9eb75933d2c1}{eina\+\_\+strbuf\+\_\+insert\+\_\+escaped}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\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__String__Buffer__Group_gaaf6f39311db7d7d074ea087ae4ee7c63}{eina\+\_\+strbuf\+\_\+insert\+\_\+n}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\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__String__Buffer__Group_ga548eb8a66646b753cce9091051b1ea08}{eina\+\_\+strbuf\+\_\+insert\+\_\+length}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\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__String__Buffer__Group_gaf08bff3ea809afef9892f845b313da10}{eina\+\_\+strbuf\+\_\+insert\+\_\+slice}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}} slice, size\+\_\+t pos)
\begin{DoxyCompactList}\small\item\em Insert a slice to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_gaf019380a09f1dcf8473b64b4ff699543}{eina\+\_\+strbuf\+\_\+insert\+\_\+char}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, char 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__String__Buffer__Group_ga8dca9fa4f4d792e32ab0b3b3542de8ab}{eina\+\_\+strbuf\+\_\+insert\+\_\+printf}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\ast$fmt, size\+\_\+t pos,...) \mbox{\hyperlink{group__Eina__Types__Group_ga50265482f1d9b18e4b98e97cfa2c8d05}{E\+I\+N\+A\+\_\+\+P\+R\+I\+N\+TF}}(2
\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__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_gae0cb598486b360b1ba06848b485d593f}{eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\ast$fmt, size\+\_\+t pos, va\+\_\+list args)
\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__String__Buffer__Group_gac7ead92f4ce23c16b7a33d40ce3bf5cd}{eina\+\_\+strbuf\+\_\+remove}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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 char $\ast$ \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga66c7c19a2b240448fbd2dae6c6161023}{eina\+\_\+strbuf\+\_\+string\+\_\+get}} (const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Retrieves a pointer to the contents of a string buffer. \end{DoxyCompactList}\item 
char $\ast$ \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga2cd6a08bf222465ebbd30e72f9f3bfb9}{eina\+\_\+strbuf\+\_\+string\+\_\+steal}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Steals the contents of a string buffer. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga51b004c36c1296daede8b62f16a62af0}{eina\+\_\+strbuf\+\_\+string\+\_\+free}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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__String__Buffer__Group_gaa6ef2a1cb7f79070508e6bf158caeccc}{eina\+\_\+strbuf\+\_\+length\+\_\+get}} (const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Retrieves the length of the string buffer content. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_gab86896d681b3dc51022a0555d41f20f1}{eina\+\_\+strbuf\+\_\+replace}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\ast$str, const char $\ast$with, unsigned int n)
\begin{DoxyCompactList}\small\item\em Replaces the n-\/th string with an other string. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Eina__String__Buffer__Group_gab86cdc70b13b7f6b1c168ed2b563d600}{eina\+\_\+strbuf\+\_\+replace\+\_\+all}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, const char $\ast$str, const char $\ast$with)
\begin{DoxyCompactList}\small\item\em Replaces all strings with an other string. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga55635b9822580cc86900f325581fd4f9}{eina\+\_\+strbuf\+\_\+trim}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Trims the string buffer. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__String__Buffer__Group_gab776bbb23bb2b2161d64c644dcaede33}{eina\+\_\+strbuf\+\_\+ltrim}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Left trims the string buffer. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga8a42d1a27c716bf00db38242743c8dac}{eina\+\_\+strbuf\+\_\+rtrim}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Right trims the string buffer. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eina__String__Buffer__Group_gaa6fbcb0fdebd3e8ec9ba466c2c7b3aaa}{eina\+\_\+strbuf\+\_\+tolower}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Converts the string to lower case. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$ \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga4c68ed255853465641092387f2bb14c9}{eina\+\_\+strbuf\+\_\+substr\+\_\+get}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf, size\+\_\+t pos, size\+\_\+t len)
\begin{DoxyCompactList}\small\item\em Obtains substring from the src. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_gacc99b95a2e9d2c03fad91f5a0f5117f2}{eina\+\_\+strbuf\+\_\+slice\+\_\+get}} (const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Gets a read-\/only slice representing the current strbuf contents. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Slice__Group_gad43ea51c6434252512a3e7305cea4af3}{Eina\+\_\+\+Rw\+\_\+\+Slice}} \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga294b4a4951e816887178b3eb11eaa4c2}{eina\+\_\+strbuf\+\_\+rw\+\_\+slice\+\_\+get}} (const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$buf)
\begin{DoxyCompactList}\small\item\em Gets a read-\/write slice representing the current strbuf contents. \end{DoxyCompactList}\item 
char $\ast$ \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga00f3ffa2ea0516bb46e4ee6b927b062c}{eina\+\_\+strbuf\+\_\+release}} (\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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 string buffers management. 

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

For more information see \mbox{\hyperlink{tutorial_strbuf}{this example}}. 

\subsection{Macro Definition Documentation}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga1816dd2a9e1071a3ca35e4ad2e862402}\label{group__Eina__String__Buffer__Group_ga1816dd2a9e1071a3ca35e4ad2e862402}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+prepend@{eina\+\_\+strbuf\+\_\+prepend}}
\index{eina\+\_\+strbuf\+\_\+prepend@{eina\+\_\+strbuf\+\_\+prepend}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+prepend}{eina\_strbuf\_prepend}}
{\footnotesize\ttfamily \#define eina\+\_\+strbuf\+\_\+prepend(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga0990bbe862fcf90e5c259a5b2c3a9a66}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga0990bbe862fcf90e5c259a5b2c3a9a66}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_gae1014eaec5abac59c810a874ba95d0c1}\label{group__Eina__String__Buffer__Group_gae1014eaec5abac59c810a874ba95d0c1}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+prepend\+\_\+escaped@{eina\+\_\+strbuf\+\_\+prepend\+\_\+escaped}}
\index{eina\+\_\+strbuf\+\_\+prepend\+\_\+escaped@{eina\+\_\+strbuf\+\_\+prepend\+\_\+escaped}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+prepend\+\_\+escaped}{eina\_strbuf\_prepend\_escaped}}
{\footnotesize\ttfamily \#define eina\+\_\+strbuf\+\_\+prepend\+\_\+escaped(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga04719a5613488bbbd17f9eb75933d2c1}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga04719a5613488bbbd17f9eb75933d2c1}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga56b481419ab90f7420a50f56d4559aa2}\label{group__Eina__String__Buffer__Group_ga56b481419ab90f7420a50f56d4559aa2}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+prepend\+\_\+n@{eina\+\_\+strbuf\+\_\+prepend\+\_\+n}}
\index{eina\+\_\+strbuf\+\_\+prepend\+\_\+n@{eina\+\_\+strbuf\+\_\+prepend\+\_\+n}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+prepend\+\_\+n}{eina\_strbuf\_prepend\_n}}
{\footnotesize\ttfamily \#define eina\+\_\+strbuf\+\_\+prepend\+\_\+n(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str,  }\item[{}]{maxlen }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaaf6f39311db7d7d074ea087ae4ee7c63}{eina\+\_\+strbuf\+\_\+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 chars 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__String__Buffer__Group_gaaf6f39311db7d7d074ea087ae4ee7c63}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga322886c027a063e92b1daa0a806272cc}\label{group__Eina__String__Buffer__Group_ga322886c027a063e92b1daa0a806272cc}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+prepend\+\_\+length@{eina\+\_\+strbuf\+\_\+prepend\+\_\+length}}
\index{eina\+\_\+strbuf\+\_\+prepend\+\_\+length@{eina\+\_\+strbuf\+\_\+prepend\+\_\+length}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+prepend\+\_\+length}{eina\_strbuf\_prepend\_length}}
{\footnotesize\ttfamily \#define eina\+\_\+strbuf\+\_\+prepend\+\_\+length(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str,  }\item[{}]{length }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga548eb8a66646b753cce9091051b1ea08}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga548eb8a66646b753cce9091051b1ea08}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_gac979572ea69d8f3de67cedb0d7011553}\label{group__Eina__String__Buffer__Group_gac979572ea69d8f3de67cedb0d7011553}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+prepend\+\_\+char@{eina\+\_\+strbuf\+\_\+prepend\+\_\+char}}
\index{eina\+\_\+strbuf\+\_\+prepend\+\_\+char@{eina\+\_\+strbuf\+\_\+prepend\+\_\+char}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+prepend\+\_\+char}{eina\_strbuf\_prepend\_char}}
{\footnotesize\ttfamily \#define eina\+\_\+strbuf\+\_\+prepend\+\_\+char(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{c }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaf019380a09f1dcf8473b64b4ff699543}{eina\+\_\+strbuf\+\_\+insert\+\_\+char}}(buf, c, 0)}



Prepends the given character to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to prepend to. \\
\hline
{\em c} & The 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 \mbox{\hyperlink{group__Eina__String__Buffer__Group_gaf019380a09f1dcf8473b64b4ff699543}{eina\+\_\+strbuf\+\_\+insert\+\_\+char()}} 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__String__Buffer__Group_gabc989298d3db5b39eb68c15eed75fe88}\label{group__Eina__String__Buffer__Group_gabc989298d3db5b39eb68c15eed75fe88}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+prepend\+\_\+printf@{eina\+\_\+strbuf\+\_\+prepend\+\_\+printf}}
\index{eina\+\_\+strbuf\+\_\+prepend\+\_\+printf@{eina\+\_\+strbuf\+\_\+prepend\+\_\+printf}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+prepend\+\_\+printf}{eina\_strbuf\_prepend\_printf}}
{\footnotesize\ttfamily \#define eina\+\_\+strbuf\+\_\+prepend\+\_\+printf(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{fmt,  }\item[{}]{... }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga8dca9fa4f4d792e32ab0b3b3542de8ab}{eina\+\_\+strbuf\+\_\+insert\+\_\+printf}}(buf, fmt, 0, \#\# \+\_\+\+\_\+\+V\+A\+\_\+\+A\+R\+G\+S\+\_\+\+\_\+)}



Prepends the given string to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to prepend to. \\
\hline
{\em fmt} & 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__String__Buffer__Group_ga8dca9fa4f4d792e32ab0b3b3542de8ab}{eina\+\_\+strbuf\+\_\+insert\+\_\+printf()}} 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__String__Buffer__Group_ga7e54fa58ee7a21ef21a781d9728cf839}\label{group__Eina__String__Buffer__Group_ga7e54fa58ee7a21ef21a781d9728cf839}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+prepend\+\_\+vprintf@{eina\+\_\+strbuf\+\_\+prepend\+\_\+vprintf}}
\index{eina\+\_\+strbuf\+\_\+prepend\+\_\+vprintf@{eina\+\_\+strbuf\+\_\+prepend\+\_\+vprintf}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+prepend\+\_\+vprintf}{eina\_strbuf\_prepend\_vprintf}}
{\footnotesize\ttfamily \#define eina\+\_\+strbuf\+\_\+prepend\+\_\+vprintf(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{fmt,  }\item[{}]{args }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__String__Buffer__Group_gae0cb598486b360b1ba06848b485d593f}{eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf}}(buf, fmt, 0, args)}



Prepends the given string to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to prepend to. \\
\hline
{\em fmt} & The string to prepend. \\
\hline
{\em args} & The variable arguments. \\
\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__String__Buffer__Group_gae0cb598486b360b1ba06848b485d593f}{eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf()}} 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__String__Buffer__Group_gadb9be08a24e6b4a8702ca9930cf1ea17}\label{group__Eina__String__Buffer__Group_gadb9be08a24e6b4a8702ca9930cf1ea17}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+replace\+\_\+first@{eina\+\_\+strbuf\+\_\+replace\+\_\+first}}
\index{eina\+\_\+strbuf\+\_\+replace\+\_\+first@{eina\+\_\+strbuf\+\_\+replace\+\_\+first}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+replace\+\_\+first}{eina\_strbuf\_replace\_first}}
{\footnotesize\ttfamily \#define eina\+\_\+strbuf\+\_\+replace\+\_\+first(\begin{DoxyParamCaption}\item[{}]{buf,  }\item[{}]{str,  }\item[{}]{with }\end{DoxyParamCaption})~\mbox{\hyperlink{group__Eina__String__Buffer__Group_gab86896d681b3dc51022a0555d41f20f1}{eina\+\_\+strbuf\+\_\+replace}}(buf, str, with, 1)}



Prepends the given character to the given buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to work with. \\
\hline
{\em str} & The string to replace. \\
\hline
{\em with} & The replaceing 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 macro is calling \mbox{\hyperlink{group__Eina__String__Buffer__Group_gab86896d681b3dc51022a0555d41f20f1}{eina\+\_\+strbuf\+\_\+replace()}} with the n-\/th occurrence equal to {\ttfamily 1}. If {\ttfamily buf} can\textquotesingle{}t replace 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__String__Buffer__Group_ga6f3c9ce942e61364a10ec7c0ea01cedc}\label{group__Eina__String__Buffer__Group_ga6f3c9ce942e61364a10ec7c0ea01cedc}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+new@{eina\+\_\+strbuf\+\_\+new}}
\index{eina\+\_\+strbuf\+\_\+new@{eina\+\_\+strbuf\+\_\+new}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+new()}{eina\_strbuf\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}}$\ast$ eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}{eina\+\_\+strbuf\+\_\+free()}}.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}{eina\+\_\+strbuf\+\_\+free()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga66c7c19a2b240448fbd2dae6c6161023}{eina\+\_\+strbuf\+\_\+string\+\_\+get()}} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}


Referenced by ecore\+\_\+file\+\_\+app\+\_\+exe\+\_\+get(), edje\+\_\+available\+\_\+modules\+\_\+get(), edje\+\_\+edit\+\_\+color\+\_\+classes\+\_\+source\+\_\+generate(), edje\+\_\+edit\+\_\+data\+\_\+source\+\_\+generate(), edje\+\_\+init(), edje\+\_\+object\+\_\+part\+\_\+text\+\_\+escaped\+\_\+set(), eina\+\_\+simple\+\_\+xml\+\_\+node\+\_\+dump(), elm\+\_\+theme\+\_\+get(), evas\+\_\+object\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+get(), evas\+\_\+textblock\+\_\+cursor\+\_\+content\+\_\+get(), evas\+\_\+textblock\+\_\+style\+\_\+set(), evas\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+to\+\_\+utf8(), and evas\+\_\+textblock\+\_\+text\+\_\+utf8\+\_\+to\+\_\+markup().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga458a02a82d743856819ae239fd94e95d}\label{group__Eina__String__Buffer__Group_ga458a02a82d743856819ae239fd94e95d}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+manage\+\_\+new@{eina\+\_\+strbuf\+\_\+manage\+\_\+new}}
\index{eina\+\_\+strbuf\+\_\+manage\+\_\+new@{eina\+\_\+strbuf\+\_\+manage\+\_\+new}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+manage\+\_\+new()}{eina\_strbuf\_manage\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}}$\ast$ eina\+\_\+strbuf\+\_\+manage\+\_\+new (\begin{DoxyParamCaption}\item[{char $\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__String__Buffer__Group_ga2cd6a08bf222465ebbd30e72f9f3bfb9}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}{eina\+\_\+strbuf\+\_\+free()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga66c7c19a2b240448fbd2dae6c6161023}{eina\+\_\+strbuf\+\_\+string\+\_\+get()}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+1.\+0 
\end{DoxySince}


Referenced by eina\+\_\+strbuf\+\_\+substr\+\_\+get().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gae4f4e9f6f1a7135027357144c655d944}\label{group__Eina__String__Buffer__Group_gae4f4e9f6f1a7135027357144c655d944}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+manage\+\_\+new\+\_\+length@{eina\+\_\+strbuf\+\_\+manage\+\_\+new\+\_\+length}}
\index{eina\+\_\+strbuf\+\_\+manage\+\_\+new\+\_\+length@{eina\+\_\+strbuf\+\_\+manage\+\_\+new\+\_\+length}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+manage\+\_\+new\+\_\+length()}{eina\_strbuf\_manage\_new\_length()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}}$\ast$ eina\+\_\+strbuf\+\_\+manage\+\_\+new\+\_\+length (\begin{DoxyParamCaption}\item[{char $\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__String__Buffer__Group_ga2cd6a08bf222465ebbd30e72f9f3bfb9}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}{eina\+\_\+strbuf\+\_\+free()}}.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga458a02a82d743856819ae239fd94e95d}{eina\+\_\+strbuf\+\_\+manage\+\_\+new()}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2.\+0 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga5ae85082ac2f6a00621b4a5703850759}\label{group__Eina__String__Buffer__Group_ga5ae85082ac2f6a00621b4a5703850759}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length@{eina\+\_\+strbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length}}
\index{eina\+\_\+strbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length@{eina\+\_\+strbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length()}{eina\_strbuf\_manage\_read\_only\_new\_length()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}}$\ast$ eina\+\_\+strbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length (\begin{DoxyParamCaption}\item[{const char $\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__String__Buffer__Group_ga2cd6a08bf222465ebbd30e72f9f3bfb9}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}{eina\+\_\+strbuf\+\_\+free()}}.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga458a02a82d743856819ae239fd94e95d}{eina\+\_\+strbuf\+\_\+manage\+\_\+new()}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+9.\+0 
\end{DoxySince}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}\label{group__Eina__String__Buffer__Group_ga482e9f90bc8e0e17811e825975a2ba85}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+free@{eina\+\_\+strbuf\+\_\+free}}
\index{eina\+\_\+strbuf\+\_\+free@{eina\+\_\+strbuf\+\_\+free}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+free()}{eina\_strbuf\_free()}}
{\footnotesize\ttfamily void eina\+\_\+strbuf\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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__String__Buffer__Group_ga6f3c9ce942e61364a10ec7c0ea01cedc}{eina\+\_\+strbuf\+\_\+new()}}. \begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}


Referenced by ecore\+\_\+file\+\_\+app\+\_\+exe\+\_\+get(), edje\+\_\+available\+\_\+modules\+\_\+get(), edje\+\_\+edit\+\_\+color\+\_\+classes\+\_\+source\+\_\+generate(), edje\+\_\+edit\+\_\+data\+\_\+source\+\_\+generate(), edje\+\_\+edit\+\_\+full\+\_\+source\+\_\+generate(), edje\+\_\+edit\+\_\+print\+\_\+internal\+\_\+status(), edje\+\_\+init(), edje\+\_\+object\+\_\+part\+\_\+text\+\_\+escaped\+\_\+set(), eina\+\_\+simple\+\_\+xml\+\_\+node\+\_\+dump(), elm\+\_\+theme\+\_\+get(), evas\+\_\+object\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+get(), evas\+\_\+textblock\+\_\+cursor\+\_\+content\+\_\+get(), evas\+\_\+textblock\+\_\+style\+\_\+set(), evas\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+to\+\_\+utf8(), and evas\+\_\+textblock\+\_\+text\+\_\+utf8\+\_\+to\+\_\+markup().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga9f3435de2169ee40306c0111fa1a60b6}\label{group__Eina__String__Buffer__Group_ga9f3435de2169ee40306c0111fa1a60b6}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+reset@{eina\+\_\+strbuf\+\_\+reset}}
\index{eina\+\_\+strbuf\+\_\+reset@{eina\+\_\+strbuf\+\_\+reset}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+reset()}{eina\_strbuf\_reset()}}
{\footnotesize\ttfamily void eina\+\_\+strbuf\+\_\+reset (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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. \begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}


Referenced by edje\+\_\+available\+\_\+modules\+\_\+get().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}\label{group__Eina__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append@{eina\+\_\+strbuf\+\_\+append}}
\index{eina\+\_\+strbuf\+\_\+append@{eina\+\_\+strbuf\+\_\+append}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append()}{eina\_strbuf\_append()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\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__String__Buffer__Group_gaad4f562f3a36881f12a4df5154e04b26}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaad4f562f3a36881f12a4df5154e04b26}{eina\+\_\+strbuf\+\_\+append\+\_\+length()}} 
\end{DoxySeeAlso}


Referenced by ecore\+\_\+file\+\_\+app\+\_\+exe\+\_\+get(), edje\+\_\+object\+\_\+part\+\_\+text\+\_\+escaped\+\_\+set(), and evas\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+to\+\_\+utf8().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga408b371f57f35a8f5391c2e85ab28b35}\label{group__Eina__String__Buffer__Group_ga408b371f57f35a8f5391c2e85ab28b35}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append\+\_\+escaped@{eina\+\_\+strbuf\+\_\+append\+\_\+escaped}}
\index{eina\+\_\+strbuf\+\_\+append\+\_\+escaped@{eina\+\_\+strbuf\+\_\+append\+\_\+escaped}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append\+\_\+escaped()}{eina\_strbuf\_append\_escaped()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append\+\_\+escaped (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\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 escapes and then appends the 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. \begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga8a66b98b4c957658c87f4a79c2f1b10b}\label{group__Eina__String__Buffer__Group_ga8a66b98b4c957658c87f4a79c2f1b10b}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append\+\_\+n@{eina\+\_\+strbuf\+\_\+append\+\_\+n}}
\index{eina\+\_\+strbuf\+\_\+append\+\_\+n@{eina\+\_\+strbuf\+\_\+append\+\_\+n}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append\+\_\+n()}{eina\_strbuf\_append\_n()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append\+\_\+n (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\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 append more than the length of {\ttfamily str}. It computes the length of {\ttfamily str}, so it is slightly slower than \mbox{\hyperlink{group__Eina__String__Buffer__Group_gaad4f562f3a36881f12a4df5154e04b26}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaad4f562f3a36881f12a4df5154e04b26}{eina\+\_\+strbuf\+\_\+append\+\_\+length()}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gaad4f562f3a36881f12a4df5154e04b26}\label{group__Eina__String__Buffer__Group_gaad4f562f3a36881f12a4df5154e04b26}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append\+\_\+length@{eina\+\_\+strbuf\+\_\+append\+\_\+length}}
\index{eina\+\_\+strbuf\+\_\+append\+\_\+length@{eina\+\_\+strbuf\+\_\+append\+\_\+length}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append\+\_\+length()}{eina\_strbuf\_append\_length()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append\+\_\+length (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\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__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} as it does not compute the size of {\ttfamily str}. It is useful when dealing with strings of known size, such as eina\+\_\+stringshare. 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__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga8a66b98b4c957658c87f4a79c2f1b10b}{eina\+\_\+strbuf\+\_\+append\+\_\+n()}} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}


Referenced by edje\+\_\+object\+\_\+part\+\_\+text\+\_\+escaped\+\_\+set(), eina\+\_\+strbuf\+\_\+append\+\_\+vprintf(), evas\+\_\+textblock\+\_\+style\+\_\+set(), and evas\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+to\+\_\+utf8().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga919d8dbf60bdbfa71cd71b3b8345233b}\label{group__Eina__String__Buffer__Group_ga919d8dbf60bdbfa71cd71b3b8345233b}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append\+\_\+slice@{eina\+\_\+strbuf\+\_\+append\+\_\+slice}}
\index{eina\+\_\+strbuf\+\_\+append\+\_\+slice@{eina\+\_\+strbuf\+\_\+append\+\_\+slice}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append\+\_\+slice()}{eina\_strbuf\_append\_slice()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append\+\_\+slice (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}}}]{slice }\end{DoxyParamCaption})}



Append 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__String__Buffer__Group_gae6aaf2952c53d0bac97fa36f2570c15b}\label{group__Eina__String__Buffer__Group_gae6aaf2952c53d0bac97fa36f2570c15b}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append\+\_\+buffer@{eina\+\_\+strbuf\+\_\+append\+\_\+buffer}}
\index{eina\+\_\+strbuf\+\_\+append\+\_\+buffer@{eina\+\_\+strbuf\+\_\+append\+\_\+buffer}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append\+\_\+buffer()}{eina\_strbuf\_append\_buffer()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append\+\_\+buffer (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{data }\end{DoxyParamCaption})}



Appends an Eina\+\_\+\+Strbuf to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em data} & The string buffer 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 data} to {\ttfamily buf}. {\ttfamily data} must be allocated and different from . It is slightly faster than \mbox{\hyperlink{group__Eina__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} as it does not compute the size of {\ttfamily str}. 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__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga8a66b98b4c957658c87f4a79c2f1b10b}{eina\+\_\+strbuf\+\_\+append\+\_\+n()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaad4f562f3a36881f12a4df5154e04b26}{eina\+\_\+strbuf\+\_\+append\+\_\+length()}} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+9.\+0 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga8afef8fb6f9aedcd6a81603bef0c7f86}\label{group__Eina__String__Buffer__Group_ga8afef8fb6f9aedcd6a81603bef0c7f86}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append\+\_\+char@{eina\+\_\+strbuf\+\_\+append\+\_\+char}}
\index{eina\+\_\+strbuf\+\_\+append\+\_\+char@{eina\+\_\+strbuf\+\_\+append\+\_\+char}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append\+\_\+char()}{eina\_strbuf\_append\_char()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append\+\_\+char (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{char}]{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. \begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}


Referenced by ecore\+\_\+file\+\_\+app\+\_\+exe\+\_\+get(), elm\+\_\+theme\+\_\+get(), and evas\+\_\+textblock\+\_\+style\+\_\+set().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga436897daafadbf56f2e3d7c0d4d21040}\label{group__Eina__String__Buffer__Group_ga436897daafadbf56f2e3d7c0d4d21040}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append\+\_\+printf@{eina\+\_\+strbuf\+\_\+append\+\_\+printf}}
\index{eina\+\_\+strbuf\+\_\+append\+\_\+printf@{eina\+\_\+strbuf\+\_\+append\+\_\+printf}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append\+\_\+printf()}{eina\_strbuf\_append\_printf()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append\+\_\+printf (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\ast$}]{fmt,  }\item[{}]{... }\end{DoxyParamCaption})}



Appends a string to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em fmt} & 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 string defined by the format {\ttfamily fmt} to {\ttfamily buf}. {\ttfamily fmt} must be of a valid format for printf family of functions. If it 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}
\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}


Referenced by edje\+\_\+available\+\_\+modules\+\_\+get(), and edje\+\_\+init().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga4e1679239587f6f9f1c3c27838e4e6a1}\label{group__Eina__String__Buffer__Group_ga4e1679239587f6f9f1c3c27838e4e6a1}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+append\+\_\+vprintf@{eina\+\_\+strbuf\+\_\+append\+\_\+vprintf}}
\index{eina\+\_\+strbuf\+\_\+append\+\_\+vprintf@{eina\+\_\+strbuf\+\_\+append\+\_\+vprintf}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+append\+\_\+vprintf()}{eina\_strbuf\_append\_vprintf()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+append\+\_\+vprintf (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\ast$}]{fmt,  }\item[{va\+\_\+list}]{args }\end{DoxyParamCaption})}



Appends a string to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to append to. \\
\hline
{\em fmt} & The string to append. \\
\hline
{\em args} & The variable arguments. \\
\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}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga436897daafadbf56f2e3d7c0d4d21040}{eina\+\_\+strbuf\+\_\+append\+\_\+printf()}} 
\end{DoxySeeAlso}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE, and eina\+\_\+strbuf\+\_\+append\+\_\+length().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga0990bbe862fcf90e5c259a5b2c3a9a66}\label{group__Eina__String__Buffer__Group_ga0990bbe862fcf90e5c259a5b2c3a9a66}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+insert@{eina\+\_\+strbuf\+\_\+insert}}
\index{eina\+\_\+strbuf\+\_\+insert@{eina\+\_\+strbuf\+\_\+insert}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+insert()}{eina\_strbuf\_insert()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+insert (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\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__String__Buffer__Group_ga548eb8a66646b753cce9091051b1ea08}{eina\+\_\+strbuf\+\_\+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. 

Referenced by eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga04719a5613488bbbd17f9eb75933d2c1}\label{group__Eina__String__Buffer__Group_ga04719a5613488bbbd17f9eb75933d2c1}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+insert\+\_\+escaped@{eina\+\_\+strbuf\+\_\+insert\+\_\+escaped}}
\index{eina\+\_\+strbuf\+\_\+insert\+\_\+escaped@{eina\+\_\+strbuf\+\_\+insert\+\_\+escaped}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+insert\+\_\+escaped()}{eina\_strbuf\_insert\_escaped()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+insert\+\_\+escaped (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\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 escapes and inserts the 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. \begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gaaf6f39311db7d7d074ea087ae4ee7c63}\label{group__Eina__String__Buffer__Group_gaaf6f39311db7d7d074ea087ae4ee7c63}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+insert\+\_\+n@{eina\+\_\+strbuf\+\_\+insert\+\_\+n}}
\index{eina\+\_\+strbuf\+\_\+insert\+\_\+n@{eina\+\_\+strbuf\+\_\+insert\+\_\+n}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+insert\+\_\+n()}{eina\_strbuf\_insert\_n()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+insert\+\_\+n (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\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} to {\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__String__Buffer__Group_ga548eb8a66646b753cce9091051b1ea08}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga548eb8a66646b753cce9091051b1ea08}\label{group__Eina__String__Buffer__Group_ga548eb8a66646b753cce9091051b1ea08}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+insert\+\_\+length@{eina\+\_\+strbuf\+\_\+insert\+\_\+length}}
\index{eina\+\_\+strbuf\+\_\+insert\+\_\+length@{eina\+\_\+strbuf\+\_\+insert\+\_\+length}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+insert\+\_\+length()}{eina\_strbuf\_insert\_length()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+insert\+\_\+length (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\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__String__Buffer__Group_ga0990bbe862fcf90e5c259a5b2c3a9a66}{eina\+\_\+strbuf\+\_\+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__String__Buffer__Group_ga0990bbe862fcf90e5c259a5b2c3a9a66}{eina\+\_\+strbuf\+\_\+insert()}} 

\mbox{\hyperlink{group__Eina__String__Buffer__Group_gaaf6f39311db7d7d074ea087ae4ee7c63}{eina\+\_\+strbuf\+\_\+insert\+\_\+n()}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gaf08bff3ea809afef9892f845b313da10}\label{group__Eina__String__Buffer__Group_gaf08bff3ea809afef9892f845b313da10}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+insert\+\_\+slice@{eina\+\_\+strbuf\+\_\+insert\+\_\+slice}}
\index{eina\+\_\+strbuf\+\_\+insert\+\_\+slice@{eina\+\_\+strbuf\+\_\+insert\+\_\+slice}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+insert\+\_\+slice()}{eina\_strbuf\_insert\_slice()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+insert\+\_\+slice (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}}}]{slice,  }\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption})}



Insert 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__String__Buffer__Group_gaf019380a09f1dcf8473b64b4ff699543}\label{group__Eina__String__Buffer__Group_gaf019380a09f1dcf8473b64b4ff699543}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+insert\+\_\+char@{eina\+\_\+strbuf\+\_\+insert\+\_\+char}}
\index{eina\+\_\+strbuf\+\_\+insert\+\_\+char@{eina\+\_\+strbuf\+\_\+insert\+\_\+char}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+insert\+\_\+char()}{eina\_strbuf\_insert\_char()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+insert\+\_\+char (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{char}]{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__String__Buffer__Group_ga8dca9fa4f4d792e32ab0b3b3542de8ab}\label{group__Eina__String__Buffer__Group_ga8dca9fa4f4d792e32ab0b3b3542de8ab}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+insert\+\_\+printf@{eina\+\_\+strbuf\+\_\+insert\+\_\+printf}}
\index{eina\+\_\+strbuf\+\_\+insert\+\_\+printf@{eina\+\_\+strbuf\+\_\+insert\+\_\+printf}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+insert\+\_\+printf()}{eina\_strbuf\_insert\_printf()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+insert\+\_\+printf (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\ast$}]{fmt,  }\item[{size\+\_\+t}]{pos,  }\item[{}]{... }\end{DoxyParamCaption})}



Inserts a string to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to insert. \\
\hline
{\em fmt} & 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 insert a string as described by the format {\ttfamily fmt} to {\ttfamily buf} at the position {\ttfamily pos}. {\ttfamily fmt} must be of a valid format for printf family of functions. If it 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{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gae0cb598486b360b1ba06848b485d593f}\label{group__Eina__String__Buffer__Group_gae0cb598486b360b1ba06848b485d593f}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf@{eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf}}
\index{eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf@{eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf()}{eina\_strbuf\_insert\_vprintf()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+insert\+\_\+vprintf (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\ast$}]{fmt,  }\item[{size\+\_\+t}]{pos,  }\item[{va\+\_\+list}]{args }\end{DoxyParamCaption})}



Inserts a string to a buffer, reallocating as necessary. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to insert. \\
\hline
{\em fmt} & The string to insert. \\
\hline
{\em pos} & The position to insert the string. \\
\hline
{\em args} & The variable arguments. \\
\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}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga8dca9fa4f4d792e32ab0b3b3542de8ab}{eina\+\_\+strbuf\+\_\+insert\+\_\+printf}} 
\end{DoxySeeAlso}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+SE, and eina\+\_\+strbuf\+\_\+insert().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gac7ead92f4ce23c16b7a33d40ce3bf5cd}\label{group__Eina__String__Buffer__Group_gac7ead92f4ce23c16b7a33d40ce3bf5cd}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+remove@{eina\+\_\+strbuf\+\_\+remove}}
\index{eina\+\_\+strbuf\+\_\+remove@{eina\+\_\+strbuf\+\_\+remove}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+remove()}{eina\_strbuf\_remove()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+remove (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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. \begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga66c7c19a2b240448fbd2dae6c6161023}\label{group__Eina__String__Buffer__Group_ga66c7c19a2b240448fbd2dae6c6161023}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+string\+\_\+get@{eina\+\_\+strbuf\+\_\+string\+\_\+get}}
\index{eina\+\_\+strbuf\+\_\+string\+\_\+get@{eina\+\_\+strbuf\+\_\+string\+\_\+get}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+string\+\_\+get()}{eina\_strbuf\_string\_get()}}
{\footnotesize\ttfamily const char$\ast$ eina\+\_\+strbuf\+\_\+string\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}} or similar will make that pointer invalid. The pointer returned by this function {\bfseries must not} be freed.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga2cd6a08bf222465ebbd30e72f9f3bfb9}{eina\+\_\+strbuf\+\_\+string\+\_\+steal()}} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}


Referenced by edje\+\_\+available\+\_\+modules\+\_\+get(), edje\+\_\+edit\+\_\+color\+\_\+classes\+\_\+source\+\_\+generate(), edje\+\_\+edit\+\_\+data\+\_\+source\+\_\+generate(), edje\+\_\+init(), edje\+\_\+object\+\_\+part\+\_\+text\+\_\+escaped\+\_\+set(), eldbus\+\_\+signal\+\_\+handler\+\_\+match\+\_\+extra\+\_\+vset(), eldbus\+\_\+signal\+\_\+handler\+\_\+ref(), eldbus\+\_\+signal\+\_\+handler\+\_\+unref(), elm\+\_\+theme\+\_\+get(), and evas\+\_\+object\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+get().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga2cd6a08bf222465ebbd30e72f9f3bfb9}\label{group__Eina__String__Buffer__Group_ga2cd6a08bf222465ebbd30e72f9f3bfb9}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+string\+\_\+steal@{eina\+\_\+strbuf\+\_\+string\+\_\+steal}}
\index{eina\+\_\+strbuf\+\_\+string\+\_\+steal@{eina\+\_\+strbuf\+\_\+string\+\_\+steal}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+string\+\_\+steal()}{eina\_strbuf\_string\_steal()}}
{\footnotesize\ttfamily char$\ast$ eina\+\_\+strbuf\+\_\+string\+\_\+steal (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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__String__Buffer__Group_ga66c7c19a2b240448fbd2dae6c6161023}{eina\+\_\+strbuf\+\_\+string\+\_\+get()}} 
\end{DoxySeeAlso}


Referenced by ecore\+\_\+file\+\_\+app\+\_\+exe\+\_\+get(), edje\+\_\+edit\+\_\+full\+\_\+source\+\_\+generate(), eina\+\_\+simple\+\_\+xml\+\_\+node\+\_\+dump(), evas\+\_\+textblock\+\_\+cursor\+\_\+content\+\_\+get(), evas\+\_\+textblock\+\_\+style\+\_\+set(), evas\+\_\+textblock\+\_\+text\+\_\+markup\+\_\+to\+\_\+utf8(), and evas\+\_\+textblock\+\_\+text\+\_\+utf8\+\_\+to\+\_\+markup().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga51b004c36c1296daede8b62f16a62af0}\label{group__Eina__String__Buffer__Group_ga51b004c36c1296daede8b62f16a62af0}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+string\+\_\+free@{eina\+\_\+strbuf\+\_\+string\+\_\+free}}
\index{eina\+\_\+strbuf\+\_\+string\+\_\+free@{eina\+\_\+strbuf\+\_\+string\+\_\+free}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+string\+\_\+free()}{eina\_strbuf\_string\_free()}}
{\footnotesize\ttfamily void eina\+\_\+strbuf\+\_\+string\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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__String__Buffer__Group_gaa6ef2a1cb7f79070508e6bf158caeccc}\label{group__Eina__String__Buffer__Group_gaa6ef2a1cb7f79070508e6bf158caeccc}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+length\+\_\+get@{eina\+\_\+strbuf\+\_\+length\+\_\+get}}
\index{eina\+\_\+strbuf\+\_\+length\+\_\+get@{eina\+\_\+strbuf\+\_\+length\+\_\+get}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+length\+\_\+get()}{eina\_strbuf\_length\_get()}}
{\footnotesize\ttfamily size\+\_\+t eina\+\_\+strbuf\+\_\+length\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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}. \begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gab86896d681b3dc51022a0555d41f20f1}\label{group__Eina__String__Buffer__Group_gab86896d681b3dc51022a0555d41f20f1}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+replace@{eina\+\_\+strbuf\+\_\+replace}}
\index{eina\+\_\+strbuf\+\_\+replace@{eina\+\_\+strbuf\+\_\+replace}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+replace()}{eina\_strbuf\_replace()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eina\+\_\+strbuf\+\_\+replace (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\ast$}]{str,  }\item[{const char $\ast$}]{with,  }\item[{unsigned int}]{n }\end{DoxyParamCaption})}



Replaces the n-\/th string with an other string. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to work with. \\
\hline
{\em str} & The string to replace. \\
\hline
{\em with} & The replacing string. \\
\hline
{\em n} & The number of the fitting 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 replaces the n-\/th occurrence of {\ttfamily str} in {\ttfamily buf} with {\ttfamily with}. 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. \mbox{\Hypertarget{group__Eina__String__Buffer__Group_gab86cdc70b13b7f6b1c168ed2b563d600}\label{group__Eina__String__Buffer__Group_gab86cdc70b13b7f6b1c168ed2b563d600}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+replace\+\_\+all@{eina\+\_\+strbuf\+\_\+replace\+\_\+all}}
\index{eina\+\_\+strbuf\+\_\+replace\+\_\+all@{eina\+\_\+strbuf\+\_\+replace\+\_\+all}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+replace\+\_\+all()}{eina\_strbuf\_replace\_all()}}
{\footnotesize\ttfamily int eina\+\_\+strbuf\+\_\+replace\+\_\+all (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{const char $\ast$}]{str,  }\item[{const char $\ast$}]{with }\end{DoxyParamCaption})}



Replaces all strings with an other string. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to work with. \\
\hline
{\em str} & The string to replace. \\
\hline
{\em with} & The replacing string. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
How often the string was replaced.
\end{DoxyReturn}
This function replaces all the occurrences of {\ttfamily str} in {\ttfamily buf} with the string {\ttfamily with}. This function returns the number of times {\ttfamily str} has been replaced. On failure, it returns {\ttfamily 0}. \begin{Desc}
\item[Examples\+: ]\par
\mbox{\hyperlink{eina_strbuf_01_8c-example}{eina\+\_\+strbuf\+\_\+01.\+c}}.\end{Desc}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga55635b9822580cc86900f325581fd4f9}\label{group__Eina__String__Buffer__Group_ga55635b9822580cc86900f325581fd4f9}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+trim@{eina\+\_\+strbuf\+\_\+trim}}
\index{eina\+\_\+strbuf\+\_\+trim@{eina\+\_\+strbuf\+\_\+trim}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+trim()}{eina\_strbuf\_trim()}}
{\footnotesize\ttfamily void eina\+\_\+strbuf\+\_\+trim (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Trims the string buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to work with.\\
\hline
\end{DoxyParams}
This function skips whitespaces in the beginning and the end of the buffer. \mbox{\Hypertarget{group__Eina__String__Buffer__Group_gab776bbb23bb2b2161d64c644dcaede33}\label{group__Eina__String__Buffer__Group_gab776bbb23bb2b2161d64c644dcaede33}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+ltrim@{eina\+\_\+strbuf\+\_\+ltrim}}
\index{eina\+\_\+strbuf\+\_\+ltrim@{eina\+\_\+strbuf\+\_\+ltrim}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+ltrim()}{eina\_strbuf\_ltrim()}}
{\footnotesize\ttfamily void eina\+\_\+strbuf\+\_\+ltrim (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Left trims the string buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to work with.\\
\hline
\end{DoxyParams}
This function skips whitespaces in the beginning of the buffer. \mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga8a42d1a27c716bf00db38242743c8dac}\label{group__Eina__String__Buffer__Group_ga8a42d1a27c716bf00db38242743c8dac}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+rtrim@{eina\+\_\+strbuf\+\_\+rtrim}}
\index{eina\+\_\+strbuf\+\_\+rtrim@{eina\+\_\+strbuf\+\_\+rtrim}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+rtrim()}{eina\_strbuf\_rtrim()}}
{\footnotesize\ttfamily void eina\+\_\+strbuf\+\_\+rtrim (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Right trims the string buffer. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to work with.\\
\hline
\end{DoxyParams}
This function skips whitespaces in the end of the buffer. \mbox{\Hypertarget{group__Eina__String__Buffer__Group_gaa6fbcb0fdebd3e8ec9ba466c2c7b3aaa}\label{group__Eina__String__Buffer__Group_gaa6fbcb0fdebd3e8ec9ba466c2c7b3aaa}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+tolower@{eina\+\_\+strbuf\+\_\+tolower}}
\index{eina\+\_\+strbuf\+\_\+tolower@{eina\+\_\+strbuf\+\_\+tolower}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+tolower()}{eina\_strbuf\_tolower()}}
{\footnotesize\ttfamily void eina\+\_\+strbuf\+\_\+tolower (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Converts the string to lower case. 


\begin{DoxyParams}{Parameters}
{\em buf} & The string buffer to work with.\\
\hline
\end{DoxyParams}
This function converts all the characters in the strbuf to lower case.

\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}


References eina\+\_\+str\+\_\+tolower().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga4c68ed255853465641092387f2bb14c9}\label{group__Eina__String__Buffer__Group_ga4c68ed255853465641092387f2bb14c9}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+substr\+\_\+get@{eina\+\_\+strbuf\+\_\+substr\+\_\+get}}
\index{eina\+\_\+strbuf\+\_\+substr\+\_\+get@{eina\+\_\+strbuf\+\_\+substr\+\_\+get}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+substr\+\_\+get()}{eina\_strbuf\_substr\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}}$\ast$ eina\+\_\+strbuf\+\_\+substr\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf,  }\item[{size\+\_\+t}]{pos,  }\item[{size\+\_\+t}]{len }\end{DoxyParamCaption})}



Obtains substring from the src. 


\begin{DoxyParams}{Parameters}
{\em buf} & The src string. \\
\hline
{\em pos} & The position in the source string from which the substring should be created. The first character is denoted by a value of 0 (not 1). \\
\hline
{\em len} & The length from pos that should be copied to substring.\\
\hline
\end{DoxyParams}
This function creates a Eina\+\_\+\+Strbuf which is a substring of buf which is passed from pos position with len length. If buf is N\+U\+LL then returns N\+U\+LL. If len is 0, then an empty strbuf is returned.

\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}


References eina\+\_\+strbuf\+\_\+manage\+\_\+new().

\mbox{\Hypertarget{group__Eina__String__Buffer__Group_gacc99b95a2e9d2c03fad91f5a0f5117f2}\label{group__Eina__String__Buffer__Group_gacc99b95a2e9d2c03fad91f5a0f5117f2}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+slice\+\_\+get@{eina\+\_\+strbuf\+\_\+slice\+\_\+get}}
\index{eina\+\_\+strbuf\+\_\+slice\+\_\+get@{eina\+\_\+strbuf\+\_\+slice\+\_\+get}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+slice\+\_\+get()}{eina\_strbuf\_slice\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Slice__Group_gab75399abc5bb50cf1135cb8485cbedcc}{Eina\+\_\+\+Slice}} eina\+\_\+strbuf\+\_\+slice\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Gets a read-\/only slice representing the current strbuf 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__String__Buffer__Group_ga294b4a4951e816887178b3eb11eaa4c2}\label{group__Eina__String__Buffer__Group_ga294b4a4951e816887178b3eb11eaa4c2}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+rw\+\_\+slice\+\_\+get@{eina\+\_\+strbuf\+\_\+rw\+\_\+slice\+\_\+get}}
\index{eina\+\_\+strbuf\+\_\+rw\+\_\+slice\+\_\+get@{eina\+\_\+strbuf\+\_\+rw\+\_\+slice\+\_\+get}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+rw\+\_\+slice\+\_\+get()}{eina\_strbuf\_rw\_slice\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Slice__Group_gad43ea51c6434252512a3e7305cea4af3}{Eina\+\_\+\+Rw\+\_\+\+Slice}} eina\+\_\+strbuf\+\_\+rw\+\_\+slice\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+Strbuf}} $\ast$}]{buf }\end{DoxyParamCaption})}



Gets a read-\/write slice representing the current strbuf 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__String__Buffer__Group_gaded50fb52b2dda9bbfce89b7028ac23e}{eina\+\_\+strbuf\+\_\+append()}}, \mbox{\hyperlink{group__Eina__String__Buffer__Group_gac7ead92f4ce23c16b7a33d40ce3bf5cd}{eina\+\_\+strbuf\+\_\+remove()}}
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+19.\+0 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__String__Buffer__Group_ga00f3ffa2ea0516bb46e4ee6b927b062c}\label{group__Eina__String__Buffer__Group_ga00f3ffa2ea0516bb46e4ee6b927b062c}} 
\index{String Buffer@{String Buffer}!eina\+\_\+strbuf\+\_\+release@{eina\+\_\+strbuf\+\_\+release}}
\index{eina\+\_\+strbuf\+\_\+release@{eina\+\_\+strbuf\+\_\+release}!String Buffer@{String Buffer}}
\subsubsection{\texorpdfstring{eina\+\_\+strbuf\+\_\+release()}{eina\_strbuf\_release()}}
{\footnotesize\ttfamily char$\ast$ eina\+\_\+strbuf\+\_\+release (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\+\_\+\+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}
