\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 \hyperlink{group__Eina__String__Buffer__Group_ga1816dd2a9e1071a3ca35e4ad2e862402}{eina\-\_\-strbuf\-\_\-prepend}(buf, str)~\hyperlink{group__Eina__String__Buffer__Group_gaae2418baea275ee8d10750158ae0f69c}{eina\-\_\-strbuf\-\_\-insert}(buf, str, 0)
\begin{DoxyCompactList}\small\item\em Prepend the given string to the given buffer. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eina__String__Buffer__Group_gae1014eaec5abac59c810a874ba95d0c1}{eina\-\_\-strbuf\-\_\-prepend\-\_\-escaped}(buf, str)~\hyperlink{group__Eina__String__Buffer__Group_ga3291e2ce3e7d0e82bb47f4a32c8fbc0b}{eina\-\_\-strbuf\-\_\-insert\-\_\-escaped}(buf, str, 0)
\begin{DoxyCompactList}\small\item\em Prepend the given escaped string to the given buffer. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eina__String__Buffer__Group_ga56b481419ab90f7420a50f56d4559aa2}{eina\-\_\-strbuf\-\_\-prepend\-\_\-n}(buf, str, maxlen)~\hyperlink{group__Eina__String__Buffer__Group_ga870503b16c127857c9ba6f9094faf352}{eina\-\_\-strbuf\-\_\-insert\-\_\-n}(buf, str, maxlen, 0)
\begin{DoxyCompactList}\small\item\em Prepend the given escaped string to the given buffer. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eina__String__Buffer__Group_ga322886c027a063e92b1daa0a806272cc}{eina\-\_\-strbuf\-\_\-prepend\-\_\-length}(buf, str, length)~\hyperlink{group__Eina__String__Buffer__Group_ga418a1f3f0b2afa6c9c3d83bf5f28ce12}{eina\-\_\-strbuf\-\_\-insert\-\_\-length}(buf, str, length, 0)
\begin{DoxyCompactList}\small\item\em Prepend the given escaped string to the given buffer. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eina__String__Buffer__Group_gac979572ea69d8f3de67cedb0d7011553}{eina\-\_\-strbuf\-\_\-prepend\-\_\-char}(buf, c)~\hyperlink{group__Eina__String__Buffer__Group_gaa4123d4c77a6cffdc1dd72e8d39dd6a9}{eina\-\_\-strbuf\-\_\-insert\-\_\-char}(buf, c, 0)
\begin{DoxyCompactList}\small\item\em Prepend the given character to the given buffer. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eina__String__Buffer__Group_gabc989298d3db5b39eb68c15eed75fe88}{eina\-\_\-strbuf\-\_\-prepend\-\_\-printf}(buf, fmt,...)~\hyperlink{group__Eina__String__Buffer__Group_gadc2a9499f87a3a962bf30878fc4c893e}{eina\-\_\-strbuf\-\_\-insert\-\_\-printf}(buf, fmt, 0, \#\# \-\_\-\-\_\-\-V\-A\-\_\-\-A\-R\-G\-S\-\_\-\-\_\-)
\begin{DoxyCompactList}\small\item\em Prepend the given string to the given buffer. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eina__String__Buffer__Group_ga7e54fa58ee7a21ef21a781d9728cf839}{eina\-\_\-strbuf\-\_\-prepend\-\_\-vprintf}(buf, fmt, args)~\hyperlink{group__Eina__String__Buffer__Group_ga8c122e3d295312293856973d710cc574}{eina\-\_\-strbuf\-\_\-insert\-\_\-vprintf}(buf, fmt, 0, args)
\begin{DoxyCompactList}\small\item\em Prepend the given string to the given buffer. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eina__String__Buffer__Group_gadb9be08a24e6b4a8702ca9930cf1ea17}{eina\-\_\-strbuf\-\_\-replace\-\_\-first}(buf, str, with)~\hyperlink{group__Eina__String__Buffer__Group_ga31557d517c60cda33c9102cc89e2403a}{eina\-\_\-strbuf\-\_\-replace}(buf, str, with, 1)
\begin{DoxyCompactList}\small\item\em Prepend the given character to the given buffer. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{typedef struct \hyperlink{struct__Eina__Strbuf}{\-\_\-\-Eina\-\_\-\-Strbuf} \hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf}}\label{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}

\begin{DoxyCompactList}\small\item\em Type for a string buffer. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$ \hyperlink{group__Eina__String__Buffer__Group_ga83a74d63ed9f602c8653e99282e74e78}{eina\-\_\-strbuf\-\_\-new} (void) \hyperlink{group__Eina__Types__Group_gaabeaa41dd47f4b4d3991b10ba00bc59c}{E\-I\-N\-A\-\_\-\-M\-A\-L\-L\-O\-C} \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Create a new string buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$ \hyperlink{group__Eina__String__Buffer__Group_ga0559e0baa1dccb7d280a07042be5b9ca}{eina\-\_\-strbuf\-\_\-manage\-\_\-new} (char $\ast$str) \hyperlink{group__Eina__Types__Group_gaabeaa41dd47f4b4d3991b10ba00bc59c}{E\-I\-N\-A\-\_\-\-M\-A\-L\-L\-O\-C} \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Create a new string buffer using the passed string. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$ \hyperlink{group__Eina__String__Buffer__Group_gad22ec2e748394dda506ef7bc9dc08c11}{eina\-\_\-strbuf\-\_\-manage\-\_\-new\-\_\-length} (char $\ast$str, size\-\_\-t length) \hyperlink{group__Eina__Types__Group_gaabeaa41dd47f4b4d3991b10ba00bc59c}{E\-I\-N\-A\-\_\-\-M\-A\-L\-L\-O\-C} \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Create a new string buffer using the passed string. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$ \hyperlink{group__Eina__String__Buffer__Group_gada31ae30e6b6b0c554757560a3698a92}{eina\-\_\-strbuf\-\_\-manage\-\_\-read\-\_\-only\-\_\-new\-\_\-length} (const char $\ast$str, size\-\_\-t length) \hyperlink{group__Eina__Types__Group_gaabeaa41dd47f4b4d3991b10ba00bc59c}{E\-I\-N\-A\-\_\-\-M\-A\-L\-L\-O\-C} \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Create a new string buffer using the passed string. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}{eina\-\_\-strbuf\-\_\-free} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Free a string buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__String__Buffer__Group_ga59d4d2a65bff12844a9165e73fcadc03}{eina\-\_\-strbuf\-\_\-reset} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Reset a string buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Append a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga447e5835b53017615dfb487f062dd850}{eina\-\_\-strbuf\-\_\-append\-\_\-escaped} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Append an escaped string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga4d26fd66d54dea31fee6f5ecc140cbb4}{eina\-\_\-strbuf\-\_\-append\-\_\-n} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str, size\-\_\-t maxlen) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Append a string to a buffer, reallocating as necessary, limited by the given length. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga020109f080ebe17ebd6a45675842d686}{eina\-\_\-strbuf\-\_\-append\-\_\-length} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str, size\-\_\-t length) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Append a string of exact length to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_gaacbaa0080730e9794b5c690a35bed1c6}{eina\-\_\-strbuf\-\_\-append\-\_\-buffer} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const \hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$data) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Append an Eina\-\_\-\-Strbuf to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga74180672d940d88653aa68e3717432ca}{eina\-\_\-strbuf\-\_\-append\-\_\-char} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, char c) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Append a character to a string buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga534a406b49950cbde39b4b67d0739dfc}{eina\-\_\-strbuf\-\_\-append\-\_\-printf} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$fmt,...) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Append a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hypertarget{group__Eina__String__Buffer__Group_ga695182773645274fe6e6115847bc25f5}{\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} {\bfseries E\-I\-N\-A\-\_\-\-P\-R\-I\-N\-T\-F} (2, 3)}\label{group__Eina__String__Buffer__Group_ga695182773645274fe6e6115847bc25f5}

\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_gab49bd72a1b0292a206e562697240cd24}{eina\-\_\-strbuf\-\_\-append\-\_\-vprintf} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$fmt, va\-\_\-list args) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Append a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_gaae2418baea275ee8d10750158ae0f69c}{eina\-\_\-strbuf\-\_\-insert} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str, size\-\_\-t pos) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Insert a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga3291e2ce3e7d0e82bb47f4a32c8fbc0b}{eina\-\_\-strbuf\-\_\-insert\-\_\-escaped} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str, size\-\_\-t pos) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Insert an escaped string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga870503b16c127857c9ba6f9094faf352}{eina\-\_\-strbuf\-\_\-insert\-\_\-n} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str, size\-\_\-t maxlen, size\-\_\-t pos) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Insert a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga418a1f3f0b2afa6c9c3d83bf5f28ce12}{eina\-\_\-strbuf\-\_\-insert\-\_\-length} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str, size\-\_\-t length, size\-\_\-t pos) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Insert a string of exact length to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \\*
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_gaa4123d4c77a6cffdc1dd72e8d39dd6a9}{eina\-\_\-strbuf\-\_\-insert\-\_\-char} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, char c, size\-\_\-t pos) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Insert a character to a string buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_gadc2a9499f87a3a962bf30878fc4c893e}{eina\-\_\-strbuf\-\_\-insert\-\_\-printf} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$fmt, size\-\_\-t pos,...) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Insert a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hypertarget{group__Eina__String__Buffer__Group_gad36f0ee267ae1f00c592f86da332d77d}{\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} {\bfseries E\-I\-N\-A\-\_\-\-P\-R\-I\-N\-T\-F} (2, 4)}\label{group__Eina__String__Buffer__Group_gad36f0ee267ae1f00c592f86da332d77d}

\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga8c122e3d295312293856973d710cc574}{eina\-\_\-strbuf\-\_\-insert\-\_\-vprintf} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$fmt, size\-\_\-t pos, va\-\_\-list args) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Insert a string to a buffer, reallocating as necessary. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga62eb8cfd371cf3f01af5ea81a91ee0cf}{eina\-\_\-strbuf\-\_\-remove} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, size\-\_\-t start, size\-\_\-t end) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Remove a slice of the given string buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} const char $\ast$ \hyperlink{group__Eina__String__Buffer__Group_gacaf291ef7ad6a66a196cdb17d6575ae2}{eina\-\_\-strbuf\-\_\-string\-\_\-get} (const \hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1) \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Retrieve a pointer to the contents of a string buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} char $\ast$ \hyperlink{group__Eina__String__Buffer__Group_ga56b2b61d7473dea10d9e73828ffb9016}{eina\-\_\-strbuf\-\_\-string\-\_\-steal} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_gaabeaa41dd47f4b4d3991b10ba00bc59c}{E\-I\-N\-A\-\_\-\-M\-A\-L\-L\-O\-C} \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T} \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Steal the contents of a string buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__String__Buffer__Group_ga36e03da419b1bb86d189198549fad77a}{eina\-\_\-strbuf\-\_\-string\-\_\-free} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Free the contents of a string buffer but not the buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} size\-\_\-t \hyperlink{group__Eina__String__Buffer__Group_ga7071b03b6963145842af987ff66c66db}{eina\-\_\-strbuf\-\_\-length\-\_\-get} (const \hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1) \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Retrieve the length of the string buffer content. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__String__Buffer__Group_ga31557d517c60cda33c9102cc89e2403a}{eina\-\_\-strbuf\-\_\-replace} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str, const char $\ast$with, unsigned int n) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Replace the n-\/th string with an other string. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__Eina__String__Buffer__Group_ga0bd961149bc1ef4d45ccac78529ba2b8}{eina\-\_\-strbuf\-\_\-replace\-\_\-all} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf, const char $\ast$str, const char $\ast$with) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1
\begin{DoxyCompactList}\small\item\em Replace all strings with an other string. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__String__Buffer__Group_ga781ad354ec9c64ee6dad250bc26e5ac3}{eina\-\_\-strbuf\-\_\-trim} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Trim the string buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__String__Buffer__Group_ga5e408c9099eb7c90a32be80117a5c6a3}{eina\-\_\-strbuf\-\_\-ltrim} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Left trim the string buffer. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__String__Buffer__Group_gaa7bb7bcba9edfd84ddd34a4d50844446}{eina\-\_\-strbuf\-\_\-rtrim} (\hyperlink{group__Eina__String__Buffer__Group_ga467437cff14cf09945351b739abf702c}{Eina\-\_\-\-Strbuf} $\ast$buf) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Right trim the string 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 \hyperlink{tutorial_strbuf}{this example}. 

\subsection{Macro Definition Documentation}
\hypertarget{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[{eina\-\_\-strbuf\-\_\-prepend}]{\setlength{\rightskip}{0pt plus 5cm}\#define eina\-\_\-strbuf\-\_\-prepend(
\begin{DoxyParamCaption}
\item[{}]{buf, }
\item[{}]{str}
\end{DoxyParamCaption}
)~{\bf eina\-\_\-strbuf\-\_\-insert}(buf, str, 0)}}\label{group__Eina__String__Buffer__Group_ga1816dd2a9e1071a3ca35e4ad2e862402}


Prepend 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This macro is calling \hyperlink{group__Eina__String__Buffer__Group_gaae2418baea275ee8d10750158ae0f69c}{eina\-\_\-strbuf\-\_\-insert()} at position 0. If {\ttfamily buf} can't prepend it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{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[{eina\-\_\-strbuf\-\_\-prepend\-\_\-escaped}]{\setlength{\rightskip}{0pt plus 5cm}\#define eina\-\_\-strbuf\-\_\-prepend\-\_\-escaped(
\begin{DoxyParamCaption}
\item[{}]{buf, }
\item[{}]{str}
\end{DoxyParamCaption}
)~{\bf eina\-\_\-strbuf\-\_\-insert\-\_\-escaped}(buf, str, 0)}}\label{group__Eina__String__Buffer__Group_gae1014eaec5abac59c810a874ba95d0c1}


Prepend 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This macro is calling \hyperlink{group__Eina__String__Buffer__Group_ga3291e2ce3e7d0e82bb47f4a32c8fbc0b}{eina\-\_\-strbuf\-\_\-insert\-\_\-escaped()} at position 0. If {\ttfamily buf} can't prepend it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{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[{eina\-\_\-strbuf\-\_\-prepend\-\_\-n}]{\setlength{\rightskip}{0pt plus 5cm}\#define eina\-\_\-strbuf\-\_\-prepend\-\_\-n(
\begin{DoxyParamCaption}
\item[{}]{buf, }
\item[{}]{str, }
\item[{}]{maxlen}
\end{DoxyParamCaption}
)~{\bf eina\-\_\-strbuf\-\_\-insert\-\_\-n}(buf, str, maxlen, 0)}}\label{group__Eina__String__Buffer__Group_ga56b481419ab90f7420a50f56d4559aa2}


Prepend 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This macro is calling \hyperlink{group__Eina__String__Buffer__Group_ga870503b16c127857c9ba6f9094faf352}{eina\-\_\-strbuf\-\_\-insert\-\_\-n()} at position 0. If {\ttfamily buf} can't prepend it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{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[{eina\-\_\-strbuf\-\_\-prepend\-\_\-length}]{\setlength{\rightskip}{0pt plus 5cm}\#define eina\-\_\-strbuf\-\_\-prepend\-\_\-length(
\begin{DoxyParamCaption}
\item[{}]{buf, }
\item[{}]{str, }
\item[{}]{length}
\end{DoxyParamCaption}
)~{\bf eina\-\_\-strbuf\-\_\-insert\-\_\-length}(buf, str, length, 0)}}\label{group__Eina__String__Buffer__Group_ga322886c027a063e92b1daa0a806272cc}


Prepend 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This macro is calling \hyperlink{group__Eina__String__Buffer__Group_ga418a1f3f0b2afa6c9c3d83bf5f28ce12}{eina\-\_\-strbuf\-\_\-insert\-\_\-length()} at position 0. If {\ttfamily buf} can't prepend it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{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[{eina\-\_\-strbuf\-\_\-prepend\-\_\-char}]{\setlength{\rightskip}{0pt plus 5cm}\#define eina\-\_\-strbuf\-\_\-prepend\-\_\-char(
\begin{DoxyParamCaption}
\item[{}]{buf, }
\item[{}]{c}
\end{DoxyParamCaption}
)~{\bf eina\-\_\-strbuf\-\_\-insert\-\_\-char}(buf, c, 0)}}\label{group__Eina__String__Buffer__Group_gac979572ea69d8f3de67cedb0d7011553}


Prepend 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This macro is calling \hyperlink{group__Eina__String__Buffer__Group_gaa4123d4c77a6cffdc1dd72e8d39dd6a9}{eina\-\_\-strbuf\-\_\-insert\-\_\-char()} at position 0. If {\ttfamily buf} can't prepend it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{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[{eina\-\_\-strbuf\-\_\-prepend\-\_\-printf}]{\setlength{\rightskip}{0pt plus 5cm}\#define eina\-\_\-strbuf\-\_\-prepend\-\_\-printf(
\begin{DoxyParamCaption}
\item[{}]{buf, }
\item[{}]{fmt, }
\item[{}]{...}
\end{DoxyParamCaption}
)~{\bf eina\-\_\-strbuf\-\_\-insert\-\_\-printf}(buf, fmt, 0, \#\# \-\_\-\-\_\-\-V\-A\-\_\-\-A\-R\-G\-S\-\_\-\-\_\-)}}\label{group__Eina__String__Buffer__Group_gabc989298d3db5b39eb68c15eed75fe88}


Prepend 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This macro is calling \hyperlink{group__Eina__String__Buffer__Group_gadc2a9499f87a3a962bf30878fc4c893e}{eina\-\_\-strbuf\-\_\-insert\-\_\-printf()} at position 0. If {\ttfamily buf} can't prepend it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{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[{eina\-\_\-strbuf\-\_\-prepend\-\_\-vprintf}]{\setlength{\rightskip}{0pt plus 5cm}\#define eina\-\_\-strbuf\-\_\-prepend\-\_\-vprintf(
\begin{DoxyParamCaption}
\item[{}]{buf, }
\item[{}]{fmt, }
\item[{}]{args}
\end{DoxyParamCaption}
)~{\bf eina\-\_\-strbuf\-\_\-insert\-\_\-vprintf}(buf, fmt, 0, args)}}\label{group__Eina__String__Buffer__Group_ga7e54fa58ee7a21ef21a781d9728cf839}


Prepend 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This macro is calling \hyperlink{group__Eina__String__Buffer__Group_ga8c122e3d295312293856973d710cc574}{eina\-\_\-strbuf\-\_\-insert\-\_\-vprintf()} at position 0.\-If {\ttfamily buf} can't prepend it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{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[{eina\-\_\-strbuf\-\_\-replace\-\_\-first}]{\setlength{\rightskip}{0pt plus 5cm}\#define eina\-\_\-strbuf\-\_\-replace\-\_\-first(
\begin{DoxyParamCaption}
\item[{}]{buf, }
\item[{}]{str, }
\item[{}]{with}
\end{DoxyParamCaption}
)~{\bf eina\-\_\-strbuf\-\_\-replace}(buf, str, with, 1)}}\label{group__Eina__String__Buffer__Group_gadb9be08a24e6b4a8702ca9930cf1ea17}


Prepend 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This macro is calling \hyperlink{group__Eina__String__Buffer__Group_ga31557d517c60cda33c9102cc89e2403a}{eina\-\_\-strbuf\-\_\-replace()} with the n-\/th occurrence equal to {\ttfamily 1}. If {\ttfamily buf} can't replace it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. 

\subsection{Function Documentation}
\hypertarget{group__Eina__String__Buffer__Group_ga83a74d63ed9f602c8653e99282e74e78}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-new@{eina\-\_\-strbuf\-\_\-new}}
\index{eina\-\_\-strbuf\-\_\-new@{eina\-\_\-strbuf\-\_\-new}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-new}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Strbuf}$\ast$ eina\-\_\-strbuf\-\_\-new (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga83a74d63ed9f602c8653e99282e74e78}


Create 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\-L\-L} is returned. To free the resources, use \hyperlink{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}{eina\-\_\-strbuf\-\_\-free()}.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}{eina\-\_\-strbuf\-\_\-free()} 

\hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append()} 

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


Referenced by eeze\-\_\-disk\-\_\-eject(), eeze\-\_\-disk\-\_\-mount(), eeze\-\_\-disk\-\_\-unmount(), eina\-\_\-log\-\_\-print\-\_\-cb\-\_\-journald(), 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().

\hypertarget{group__Eina__String__Buffer__Group_ga0559e0baa1dccb7d280a07042be5b9ca}{\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[{eina\-\_\-strbuf\-\_\-manage\-\_\-new}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Strbuf}$\ast$ eina\-\_\-strbuf\-\_\-manage\-\_\-new (
\begin{DoxyParamCaption}
\item[{char $\ast$}]{str}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga0559e0baa1dccb7d280a07042be5b9ca}


Create a new string buffer using the passed string. 

The passed string is used directly as the buffer, it's somehow the opposite function of \hyperlink{group__Eina__String__Buffer__Group_ga56b2b61d7473dea10d9e73828ffb9016}{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\-L\-L} is returned. To free the resources, use \hyperlink{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}{eina\-\_\-strbuf\-\_\-free()}.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}{eina\-\_\-strbuf\-\_\-free()} 

\hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append()} 

\hyperlink{group__Eina__String__Buffer__Group_gacaf291ef7ad6a66a196cdb17d6575ae2}{eina\-\_\-strbuf\-\_\-string\-\_\-get()} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-1.\-0 
\end{DoxySince}
\hypertarget{group__Eina__String__Buffer__Group_gad22ec2e748394dda506ef7bc9dc08c11}{\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[{eina\-\_\-strbuf\-\_\-manage\-\_\-new\-\_\-length}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Strbuf}$\ast$ eina\-\_\-strbuf\-\_\-manage\-\_\-new\-\_\-length (
\begin{DoxyParamCaption}
\item[{char $\ast$}]{str, }
\item[{size\-\_\-t}]{length}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gad22ec2e748394dda506ef7bc9dc08c11}


Create a new string buffer using the passed string. 

The passed string is used directly as the buffer, it's somehow the opposite function of \hyperlink{group__Eina__String__Buffer__Group_ga56b2b61d7473dea10d9e73828ffb9016}{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\-L\-L} is returned. To free the resources, use \hyperlink{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}{eina\-\_\-strbuf\-\_\-free()}.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga0559e0baa1dccb7d280a07042be5b9ca}{eina\-\_\-strbuf\-\_\-manage\-\_\-new()} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-2.\-0 
\end{DoxySince}
\hypertarget{group__Eina__String__Buffer__Group_gada31ae30e6b6b0c554757560a3698a92}{\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[{eina\-\_\-strbuf\-\_\-manage\-\_\-read\-\_\-only\-\_\-new\-\_\-length}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Strbuf}$\ast$ eina\-\_\-strbuf\-\_\-manage\-\_\-read\-\_\-only\-\_\-new\-\_\-length (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{str, }
\item[{size\-\_\-t}]{length}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gada31ae30e6b6b0c554757560a3698a92}


Create a new string buffer using the passed string. 

The passed string is used directly as the buffer, it's somehow the opposite function of \hyperlink{group__Eina__String__Buffer__Group_ga56b2b61d7473dea10d9e73828ffb9016}{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\-L\-L} is returned. To free the resources, use \hyperlink{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}{eina\-\_\-strbuf\-\_\-free()}.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga0559e0baa1dccb7d280a07042be5b9ca}{eina\-\_\-strbuf\-\_\-manage\-\_\-new()} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-9.\-0 
\end{DoxySince}
\hypertarget{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-free@{eina\-\_\-strbuf\-\_\-free}}
\index{eina\-\_\-strbuf\-\_\-free@{eina\-\_\-strbuf\-\_\-free}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-free}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-strbuf\-\_\-free (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga35331525102f5cd40350c3951fbd2786}


Free 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 \hyperlink{group__Eina__String__Buffer__Group_ga83a74d63ed9f602c8653e99282e74e78}{eina\-\_\-strbuf\-\_\-new()}. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}


Referenced by edje\-\_\-edit\-\_\-print\-\_\-internal\-\_\-status(), eeze\-\_\-disk\-\_\-free(), eina\-\_\-log\-\_\-print\-\_\-cb\-\_\-journald(), 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().

\hypertarget{group__Eina__String__Buffer__Group_ga59d4d2a65bff12844a9165e73fcadc03}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-reset@{eina\-\_\-strbuf\-\_\-reset}}
\index{eina\-\_\-strbuf\-\_\-reset@{eina\-\_\-strbuf\-\_\-reset}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-reset}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-strbuf\-\_\-reset (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga59d4d2a65bff12844a9165e73fcadc03}


Reset 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 '\textbackslash{}0'. No memory is free'd. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}
\hypertarget{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-append@{eina\-\_\-strbuf\-\_\-append}}
\index{eina\-\_\-strbuf\-\_\-append@{eina\-\_\-strbuf\-\_\-append}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-append}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-append (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}


Append 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This function appends {\ttfamily str} to {\ttfamily buf}. It computes the length of {\ttfamily str}, so is slightly slower than \hyperlink{group__Eina__String__Buffer__Group_ga020109f080ebe17ebd6a45675842d686}{eina\-\_\-strbuf\-\_\-append\-\_\-length()}. If the length is known beforehand, consider using that variant. If {\ttfamily buf} can't append it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append()} 

\hyperlink{group__Eina__String__Buffer__Group_ga020109f080ebe17ebd6a45675842d686}{eina\-\_\-strbuf\-\_\-append\-\_\-length()} 
\end{DoxySeeAlso}


Referenced by eeze\-\_\-disk\-\_\-mount(), and evas\-\_\-textblock\-\_\-text\-\_\-markup\-\_\-to\-\_\-utf8().

\hypertarget{group__Eina__String__Buffer__Group_ga447e5835b53017615dfb487f062dd850}{\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[{eina\-\_\-strbuf\-\_\-append\-\_\-escaped}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-append\-\_\-escaped (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga447e5835b53017615dfb487f062dd850}


Append 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This function escapes and then appends the string {\ttfamily str} to {\ttfamily buf}. If {\ttfamily str} can not be appended, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise, \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}
\hypertarget{group__Eina__String__Buffer__Group_ga4d26fd66d54dea31fee6f5ecc140cbb4}{\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[{eina\-\_\-strbuf\-\_\-append\-\_\-n}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-append\-\_\-n (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str, }
\item[{size\-\_\-t}]{maxlen}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga4d26fd66d54dea31fee6f5ecc140cbb4}


Append 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This function appends at most {\ttfamily maxlen} characters of {\ttfamily str} to {\ttfamily buf}. It can't append more than the length of {\ttfamily str}. It computes the length of {\ttfamily str}, so it is slightly slower than \hyperlink{group__Eina__String__Buffer__Group_ga020109f080ebe17ebd6a45675842d686}{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, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise, \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append()} 

\hyperlink{group__Eina__String__Buffer__Group_ga020109f080ebe17ebd6a45675842d686}{eina\-\_\-strbuf\-\_\-append\-\_\-length()} 
\end{DoxySeeAlso}
\hypertarget{group__Eina__String__Buffer__Group_ga020109f080ebe17ebd6a45675842d686}{\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[{eina\-\_\-strbuf\-\_\-append\-\_\-length}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-append\-\_\-length (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str, }
\item[{size\-\_\-t}]{length}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga020109f080ebe17ebd6a45675842d686}


Append 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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 \hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{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't append it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned.

\begin{DoxySeeAlso}{See Also}
eina\-\_\-stringshare\-\_\-length() 

\hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append()} 

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


Referenced by evas\-\_\-textblock\-\_\-style\-\_\-set(), and evas\-\_\-textblock\-\_\-text\-\_\-markup\-\_\-to\-\_\-utf8().

\hypertarget{group__Eina__String__Buffer__Group_gaacbaa0080730e9794b5c690a35bed1c6}{\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[{eina\-\_\-strbuf\-\_\-append\-\_\-buffer}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-append\-\_\-buffer (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const {\bf Eina\-\_\-\-Strbuf} $\ast$}]{data}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gaacbaa0080730e9794b5c690a35bed1c6}


Append 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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 \hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append()} as it does not compute the size of {\ttfamily str}. If {\ttfamily buf} can't append it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append()} 

\hyperlink{group__Eina__String__Buffer__Group_ga4d26fd66d54dea31fee6f5ecc140cbb4}{eina\-\_\-strbuf\-\_\-append\-\_\-n()} 

\hyperlink{group__Eina__String__Buffer__Group_ga020109f080ebe17ebd6a45675842d686}{eina\-\_\-strbuf\-\_\-append\-\_\-length()} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\-9.\-0 
\end{DoxySince}
\hypertarget{group__Eina__String__Buffer__Group_ga74180672d940d88653aa68e3717432ca}{\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[{eina\-\_\-strbuf\-\_\-append\-\_\-char}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-append\-\_\-char (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{char}]{c}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga74180672d940d88653aa68e3717432ca}


Append 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This function inserts {\ttfamily c} to {\ttfamily buf}. If it can not insert it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}


Referenced by evas\-\_\-textblock\-\_\-style\-\_\-set().

\hypertarget{group__Eina__String__Buffer__Group_ga534a406b49950cbde39b4b67d0739dfc}{\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[{eina\-\_\-strbuf\-\_\-append\-\_\-printf}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-append\-\_\-printf (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{fmt, }
\item[{}]{...}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga534a406b49950cbde39b4b67d0739dfc}


Append 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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't insert it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned.

\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{eina\-\_\-strbuf\-\_\-append()} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}


Referenced by eeze\-\_\-disk\-\_\-eject(), eeze\-\_\-disk\-\_\-mount(), eeze\-\_\-disk\-\_\-unmount(), and eina\-\_\-log\-\_\-print\-\_\-cb\-\_\-journald().

\hypertarget{group__Eina__String__Buffer__Group_gab49bd72a1b0292a206e562697240cd24}{\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[{eina\-\_\-strbuf\-\_\-append\-\_\-vprintf}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-append\-\_\-vprintf (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{fmt, }
\item[{va\-\_\-list}]{args}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gab49bd72a1b0292a206e562697240cd24}


Append 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_ga534a406b49950cbde39b4b67d0739dfc}{eina\-\_\-strbuf\-\_\-append\-\_\-printf()} 
\end{DoxySeeAlso}
\hypertarget{group__Eina__String__Buffer__Group_gaae2418baea275ee8d10750158ae0f69c}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-insert@{eina\-\_\-strbuf\-\_\-insert}}
\index{eina\-\_\-strbuf\-\_\-insert@{eina\-\_\-strbuf\-\_\-insert}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-insert}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-insert (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str, }
\item[{size\-\_\-t}]{pos}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gaae2418baea275ee8d10750158ae0f69c}


Insert 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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 \hyperlink{group__Eina__String__Buffer__Group_ga418a1f3f0b2afa6c9c3d83bf5f28ce12}{eina\-\_\-strbuf\-\_\-insert\-\_\-length()}. If the length is known beforehand, consider using that variant. If {\ttfamily buf} can't insert it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{group__Eina__String__Buffer__Group_ga3291e2ce3e7d0e82bb47f4a32c8fbc0b}{\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[{eina\-\_\-strbuf\-\_\-insert\-\_\-escaped}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-insert\-\_\-escaped (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str, }
\item[{size\-\_\-t}]{pos}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga3291e2ce3e7d0e82bb47f4a32c8fbc0b}


Insert 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This function escapes and inserts the string {\ttfamily str} to {\ttfamily buf} at position {\ttfamily pos}. If {\ttfamily buf} can't insert {\ttfamily str}, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}
\hypertarget{group__Eina__String__Buffer__Group_ga870503b16c127857c9ba6f9094faf352}{\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[{eina\-\_\-strbuf\-\_\-insert\-\_\-n}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-insert\-\_\-n (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str, }
\item[{size\-\_\-t}]{maxlen, }
\item[{size\-\_\-t}]{pos}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga870503b16c127857c9ba6f9094faf352}


Insert 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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 \hyperlink{group__Eina__String__Buffer__Group_ga418a1f3f0b2afa6c9c3d83bf5f28ce12}{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, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise, \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{group__Eina__String__Buffer__Group_ga418a1f3f0b2afa6c9c3d83bf5f28ce12}{\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[{eina\-\_\-strbuf\-\_\-insert\-\_\-length}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-insert\-\_\-length (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str, }
\item[{size\-\_\-t}]{length, }
\item[{size\-\_\-t}]{pos}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga418a1f3f0b2afa6c9c3d83bf5f28ce12}


Insert 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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 \hyperlink{group__Eina__String__Buffer__Group_gaae2418baea275ee8d10750158ae0f69c}{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't insert it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned.

\begin{DoxySeeAlso}{See Also}
eina\-\_\-stringshare\-\_\-length() 

\hyperlink{group__Eina__String__Buffer__Group_gaae2418baea275ee8d10750158ae0f69c}{eina\-\_\-strbuf\-\_\-insert()} 

\hyperlink{group__Eina__String__Buffer__Group_ga870503b16c127857c9ba6f9094faf352}{eina\-\_\-strbuf\-\_\-insert\-\_\-n()} 
\end{DoxySeeAlso}
\hypertarget{group__Eina__String__Buffer__Group_gaa4123d4c77a6cffdc1dd72e8d39dd6a9}{\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[{eina\-\_\-strbuf\-\_\-insert\-\_\-char}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} {\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-insert\-\_\-char (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{char}]{c, }
\item[{size\-\_\-t}]{pos}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gaa4123d4c77a6cffdc1dd72e8d39dd6a9}


Insert 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This function inserts {\ttfamily c} to {\ttfamily buf} at position {\ttfamily pos}. If {\ttfamily buf} can't append it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \hypertarget{group__Eina__String__Buffer__Group_gadc2a9499f87a3a962bf30878fc4c893e}{\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[{eina\-\_\-strbuf\-\_\-insert\-\_\-printf}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-insert\-\_\-printf (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{fmt, }
\item[{size\-\_\-t}]{pos, }
\item[{}]{...}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gadc2a9499f87a3a962bf30878fc4c893e}


Insert 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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't insert it, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned, otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}
\hypertarget{group__Eina__String__Buffer__Group_ga8c122e3d295312293856973d710cc574}{\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[{eina\-\_\-strbuf\-\_\-insert\-\_\-vprintf}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-insert\-\_\-vprintf (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{fmt, }
\item[{size\-\_\-t}]{pos, }
\item[{va\-\_\-list}]{args}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga8c122e3d295312293856973d710cc574}


Insert 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
\begin{DoxySeeAlso}{See Also}
\hyperlink{group__Eina__String__Buffer__Group_gadc2a9499f87a3a962bf30878fc4c893e}{eina\-\_\-strbuf\-\_\-insert\-\_\-printf} 
\end{DoxySeeAlso}
\hypertarget{group__Eina__String__Buffer__Group_ga62eb8cfd371cf3f01af5ea81a91ee0cf}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-remove@{eina\-\_\-strbuf\-\_\-remove}}
\index{eina\-\_\-strbuf\-\_\-remove@{eina\-\_\-strbuf\-\_\-remove}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-remove}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-remove (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{size\-\_\-t}]{start, }
\item[{size\-\_\-t}]{end}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga62eb8cfd371cf3f01af5ea81a91ee0cf}


Remove 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}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} 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 \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure, \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} otherwise. \begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}
\hypertarget{group__Eina__String__Buffer__Group_gacaf291ef7ad6a66a196cdb17d6575ae2}{\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[{eina\-\_\-strbuf\-\_\-string\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} const char$\ast$ eina\-\_\-strbuf\-\_\-string\-\_\-get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gacaf291ef7ad6a66a196cdb17d6575ae2}


Retrieve 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 \hyperlink{group__Eina__String__Buffer__Group_ga12e6eb787d5e9d2483cc28e664c85e9d}{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}
\hyperlink{group__Eina__String__Buffer__Group_ga56b2b61d7473dea10d9e73828ffb9016}{eina\-\_\-strbuf\-\_\-string\-\_\-steal()} 
\end{DoxySeeAlso}
\begin{Desc}
\item[Examples\-: ]\par
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}


Referenced by eeze\-\_\-disk\-\_\-eject(), eeze\-\_\-disk\-\_\-mount(), eeze\-\_\-disk\-\_\-unmount(), eina\-\_\-log\-\_\-print\-\_\-cb\-\_\-journald(), eldbus\-\_\-signal\-\_\-handler\-\_\-match\-\_\-extra\-\_\-vset(), eldbus\-\_\-signal\-\_\-handler\-\_\-ref(), and eldbus\-\_\-signal\-\_\-handler\-\_\-unref().

\hypertarget{group__Eina__String__Buffer__Group_ga56b2b61d7473dea10d9e73828ffb9016}{\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[{eina\-\_\-strbuf\-\_\-string\-\_\-steal}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} char$\ast$ eina\-\_\-strbuf\-\_\-string\-\_\-steal (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga56b2b61d7473dea10d9e73828ffb9016}


Steal 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}
\hyperlink{group__Eina__String__Buffer__Group_gacaf291ef7ad6a66a196cdb17d6575ae2}{eina\-\_\-strbuf\-\_\-string\-\_\-get()} 
\end{DoxySeeAlso}


Referenced by 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().

\hypertarget{group__Eina__String__Buffer__Group_ga36e03da419b1bb86d189198549fad77a}{\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[{eina\-\_\-strbuf\-\_\-string\-\_\-free}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-strbuf\-\_\-string\-\_\-free (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga36e03da419b1bb86d189198549fad77a}


Free 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}. 

Referenced by eeze\-\_\-disk\-\_\-mount(), and eeze\-\_\-disk\-\_\-unmount().

\hypertarget{group__Eina__String__Buffer__Group_ga7071b03b6963145842af987ff66c66db}{\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[{eina\-\_\-strbuf\-\_\-length\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} size\-\_\-t eina\-\_\-strbuf\-\_\-length\-\_\-get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga7071b03b6963145842af987ff66c66db}


Retrieve 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
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}
\hypertarget{group__Eina__String__Buffer__Group_ga31557d517c60cda33c9102cc89e2403a}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-replace@{eina\-\_\-strbuf\-\_\-replace}}
\index{eina\-\_\-strbuf\-\_\-replace@{eina\-\_\-strbuf\-\_\-replace}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-replace}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-strbuf\-\_\-replace (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str, }
\item[{const char $\ast$}]{with, }
\item[{unsigned int}]{n}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga31557d517c60cda33c9102cc89e2403a}


Replace 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 replaceing string. \\
\hline
{\em n} & The number of the fitting string. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure.
\end{DoxyReturn}
This function replaces the n-\/th occurrence of {\ttfamily str} in {\ttfamily buf} with {\ttfamily with}. It returns \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} on failure, \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} otherwise. \hypertarget{group__Eina__String__Buffer__Group_ga0bd961149bc1ef4d45ccac78529ba2b8}{\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[{eina\-\_\-strbuf\-\_\-replace\-\_\-all}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int eina\-\_\-strbuf\-\_\-replace\-\_\-all (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf, }
\item[{const char $\ast$}]{str, }
\item[{const char $\ast$}]{with}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga0bd961149bc1ef4d45ccac78529ba2b8}


Replace 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 replaceing 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
\hyperlink{eina_strbuf_01_8c-example}{eina\-\_\-strbuf\-\_\-01.\-c}.\end{Desc}
\hypertarget{group__Eina__String__Buffer__Group_ga781ad354ec9c64ee6dad250bc26e5ac3}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-trim@{eina\-\_\-strbuf\-\_\-trim}}
\index{eina\-\_\-strbuf\-\_\-trim@{eina\-\_\-strbuf\-\_\-trim}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-trim}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int {\bf E\-A\-P\-I} void eina\-\_\-strbuf\-\_\-trim (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga781ad354ec9c64ee6dad250bc26e5ac3}


Trim 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. \hypertarget{group__Eina__String__Buffer__Group_ga5e408c9099eb7c90a32be80117a5c6a3}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-ltrim@{eina\-\_\-strbuf\-\_\-ltrim}}
\index{eina\-\_\-strbuf\-\_\-ltrim@{eina\-\_\-strbuf\-\_\-ltrim}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-ltrim}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-strbuf\-\_\-ltrim (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_ga5e408c9099eb7c90a32be80117a5c6a3}


Left trim 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. \hypertarget{group__Eina__String__Buffer__Group_gaa7bb7bcba9edfd84ddd34a4d50844446}{\index{String Buffer@{String Buffer}!eina\-\_\-strbuf\-\_\-rtrim@{eina\-\_\-strbuf\-\_\-rtrim}}
\index{eina\-\_\-strbuf\-\_\-rtrim@{eina\-\_\-strbuf\-\_\-rtrim}!String Buffer@{String Buffer}}
\subsubsection[{eina\-\_\-strbuf\-\_\-rtrim}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-strbuf\-\_\-rtrim (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Strbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__String__Buffer__Group_gaa7bb7bcba9edfd84ddd34a4d50844446}


Right trim 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. 