\hypertarget{group__Eina__Binary__Buffer__Group}{\section{Binary Buffer}
\label{group__Eina__Binary__Buffer__Group}\index{Binary Buffer@{Binary Buffer}}
}


These functions provide string buffers management.  


\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{typedef struct \hyperlink{struct__Eina__Strbuf}{\+\_\+\+Eina\+\_\+\+Strbuf} \hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf}}\label{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}

\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__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\ast$ \hyperlink{group__Eina__Binary__Buffer__Group_ga3fd61ff27de5e842411aea6c0eb78014}{eina\+\_\+binbuf\+\_\+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__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\ast$ \hyperlink{group__Eina__Binary__Buffer__Group_ga38b3ef59227b54866faa7aa85b730710}{eina\+\_\+binbuf\+\_\+manage\+\_\+new\+\_\+length} (unsigned 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__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\ast$ \hyperlink{group__Eina__Binary__Buffer__Group_ga4e13f280623c9680a6c3520f1e5015e9}{eina\+\_\+binbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length} (const unsigned 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__Binary__Buffer__Group_ga225d04b203e52cac2825cfe8478fa01f}{eina\+\_\+binbuf\+\_\+free} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\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__Binary__Buffer__Group_gabf2fb4392cc13359bf741355b76991a1}{eina\+\_\+binbuf\+\_\+reset} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\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__Binary__Buffer__Group_gab4b8d7a1e45eaf5ec6250a126c6ef967}{eina\+\_\+binbuf\+\_\+append\+\_\+length} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\ast$buf, const unsigned 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__Binary__Buffer__Group_ga0a73c0674ea07814529cedddc1522b33}{eina\+\_\+binbuf\+\_\+append\+\_\+buffer} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\ast$buf, const \hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\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\+\_\+\+Binbuf 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__Binary__Buffer__Group_ga101a344756880e885f676addc550d90b}{eina\+\_\+binbuf\+\_\+append\+\_\+char} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\ast$buf, unsigned 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__Binary__Buffer__Group_ga4d3ce6de335bfff107ff809186768da8}{eina\+\_\+binbuf\+\_\+insert\+\_\+length} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\ast$buf, const unsigned 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__Binary__Buffer__Group_ga3c5f8a122bc7cff86a99d3323a6ba9b1}{eina\+\_\+binbuf\+\_\+insert\+\_\+char} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\ast$buf, unsigned 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__Binary__Buffer__Group_gaef7673ef94bc09f27a556c10bfcc1f6c}{eina\+\_\+binbuf\+\_\+remove} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\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 unsigned char $\ast$ \hyperlink{group__Eina__Binary__Buffer__Group_gace23717e3c4371cc0b3f299147cec187}{eina\+\_\+binbuf\+\_\+string\+\_\+get} (const \hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\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} unsigned char $\ast$ \hyperlink{group__Eina__Binary__Buffer__Group_ga0db56911173efa0164372671cfe3f344}{eina\+\_\+binbuf\+\_\+string\+\_\+steal} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\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__Binary__Buffer__Group_ga091befb5454e6e140263bfb2a9d378dc}{eina\+\_\+binbuf\+\_\+string\+\_\+free} (\hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\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__Binary__Buffer__Group_gade3052a6c39b4be19c25be92687cded3}{eina\+\_\+binbuf\+\_\+length\+\_\+get} (const \hyperlink{group__Eina__Binary__Buffer__Group_ga914e43cfe068d65db0dd3fbb80bcfd2a}{Eina\+\_\+\+Binbuf} $\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}\end{DoxyCompactItemize}


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

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

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


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__Binary__Buffer__Group_ga225d04b203e52cac2825cfe8478fa01f}{eina\+\_\+binbuf\+\_\+free()}.

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Eina__Binary__Buffer__Group_ga225d04b203e52cac2825cfe8478fa01f}{eina\+\_\+binbuf\+\_\+free()} 

eina\+\_\+binbuf\+\_\+append() 

\hyperlink{group__Eina__Binary__Buffer__Group_gace23717e3c4371cc0b3f299147cec187}{eina\+\_\+binbuf\+\_\+string\+\_\+get()} 
\end{DoxySeeAlso}
\hypertarget{group__Eina__Binary__Buffer__Group_ga38b3ef59227b54866faa7aa85b730710}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+manage\+\_\+new\+\_\+length@{eina\+\_\+binbuf\+\_\+manage\+\_\+new\+\_\+length}}
\index{eina\+\_\+binbuf\+\_\+manage\+\_\+new\+\_\+length@{eina\+\_\+binbuf\+\_\+manage\+\_\+new\+\_\+length}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+manage\+\_\+new\+\_\+length}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Binbuf}$\ast$ eina\+\_\+binbuf\+\_\+manage\+\_\+new\+\_\+length (
\begin{DoxyParamCaption}
\item[{unsigned char $\ast$}]{str, }
\item[{size\+\_\+t}]{length}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga38b3ef59227b54866faa7aa85b730710}


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__Binary__Buffer__Group_ga0db56911173efa0164372671cfe3f344}{eina\+\_\+binbuf\+\_\+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__Binary__Buffer__Group_ga225d04b203e52cac2825cfe8478fa01f}{eina\+\_\+binbuf\+\_\+free()}.

\begin{DoxySeeAlso}{See also}
eina\+\_\+binbuf\+\_\+manage\+\_\+new() 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+2.\+0 
\end{DoxySince}
\hypertarget{group__Eina__Binary__Buffer__Group_ga4e13f280623c9680a6c3520f1e5015e9}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length@{eina\+\_\+binbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length}}
\index{eina\+\_\+binbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length@{eina\+\_\+binbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Binbuf}$\ast$ eina\+\_\+binbuf\+\_\+manage\+\_\+read\+\_\+only\+\_\+new\+\_\+length (
\begin{DoxyParamCaption}
\item[{const unsigned char $\ast$}]{str, }
\item[{size\+\_\+t}]{length}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga4e13f280623c9680a6c3520f1e5015e9}


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__Binary__Buffer__Group_ga0db56911173efa0164372671cfe3f344}{eina\+\_\+binbuf\+\_\+string\+\_\+steal} . The passed string will not be touched.


\begin{DoxyParams}{Parameters}
{\em str} & the string to start from \\
\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__Binary__Buffer__Group_ga225d04b203e52cac2825cfe8478fa01f}{eina\+\_\+binbuf\+\_\+free()}. It will not touch the internal buffer. Any changing operation will create a fresh new memory, copy old data there and starting modifying that one.

\begin{DoxySeeAlso}{See also}
eina\+\_\+binbuf\+\_\+manage\+\_\+new() 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+9.\+0 
\end{DoxySince}


Referenced by edje\+\_\+edit\+\_\+sound\+\_\+samplebuffer\+\_\+get().

\hypertarget{group__Eina__Binary__Buffer__Group_ga225d04b203e52cac2825cfe8478fa01f}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+free@{eina\+\_\+binbuf\+\_\+free}}
\index{eina\+\_\+binbuf\+\_\+free@{eina\+\_\+binbuf\+\_\+free}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+free}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+binbuf\+\_\+free (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga225d04b203e52cac2825cfe8478fa01f}


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__Binary__Buffer__Group_ga3fd61ff27de5e842411aea6c0eb78014}{eina\+\_\+binbuf\+\_\+new()}. \hypertarget{group__Eina__Binary__Buffer__Group_gabf2fb4392cc13359bf741355b76991a1}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+reset@{eina\+\_\+binbuf\+\_\+reset}}
\index{eina\+\_\+binbuf\+\_\+reset@{eina\+\_\+binbuf\+\_\+reset}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+reset}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+binbuf\+\_\+reset (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_gabf2fb4392cc13359bf741355b76991a1}


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. \hypertarget{group__Eina__Binary__Buffer__Group_gab4b8d7a1e45eaf5ec6250a126c6ef967}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+append\+\_\+length@{eina\+\_\+binbuf\+\_\+append\+\_\+length}}
\index{eina\+\_\+binbuf\+\_\+append\+\_\+length@{eina\+\_\+binbuf\+\_\+append\+\_\+length}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+append\+\_\+length}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} eina\+\_\+binbuf\+\_\+append\+\_\+length (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf, }
\item[{const unsigned char $\ast$}]{str, }
\item[{size\+\_\+t}]{length}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_gab4b8d7a1e45eaf5ec6250a126c6ef967}


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 eina\+\_\+binbuf\+\_\+append() as it does not compute the size of {\ttfamily str}. It is useful when dealing with strings of known size, such as eina\+\_\+strngshare. If {\ttfamily buf} can'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() 

eina\+\_\+binbuf\+\_\+append() 

eina\+\_\+binbuf\+\_\+append\+\_\+n() 
\end{DoxySeeAlso}
\hypertarget{group__Eina__Binary__Buffer__Group_ga0a73c0674ea07814529cedddc1522b33}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+append\+\_\+buffer@{eina\+\_\+binbuf\+\_\+append\+\_\+buffer}}
\index{eina\+\_\+binbuf\+\_\+append\+\_\+buffer@{eina\+\_\+binbuf\+\_\+append\+\_\+buffer}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+append\+\_\+buffer}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} {\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} eina\+\_\+binbuf\+\_\+append\+\_\+buffer (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf, }
\item[{const {\bf Eina\+\_\+\+Binbuf} $\ast$}]{data}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga0a73c0674ea07814529cedddc1522b33}


Append an Eina\+\_\+\+Binbuf 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 {\ttfamily N\+U\+L\+L}. It is slightly faster than eina\+\_\+binbuf\+\_\+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}
eina\+\_\+binbuf\+\_\+append() 

eina\+\_\+binbuf\+\_\+append\+\_\+n() 

\hyperlink{group__Eina__Binary__Buffer__Group_gab4b8d7a1e45eaf5ec6250a126c6ef967}{eina\+\_\+binbuf\+\_\+append\+\_\+length()} 
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+9.\+0 
\end{DoxySince}
\hypertarget{group__Eina__Binary__Buffer__Group_ga101a344756880e885f676addc550d90b}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+append\+\_\+char@{eina\+\_\+binbuf\+\_\+append\+\_\+char}}
\index{eina\+\_\+binbuf\+\_\+append\+\_\+char@{eina\+\_\+binbuf\+\_\+append\+\_\+char}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+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} eina\+\_\+binbuf\+\_\+append\+\_\+char (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf, }
\item[{unsigned char}]{c}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga101a344756880e885f676addc550d90b}


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. \hypertarget{group__Eina__Binary__Buffer__Group_ga4d3ce6de335bfff107ff809186768da8}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+insert\+\_\+length@{eina\+\_\+binbuf\+\_\+insert\+\_\+length}}
\index{eina\+\_\+binbuf\+\_\+insert\+\_\+length@{eina\+\_\+binbuf\+\_\+insert\+\_\+length}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+insert\+\_\+length}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} eina\+\_\+binbuf\+\_\+insert\+\_\+length (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf, }
\item[{const unsigned char $\ast$}]{str, }
\item[{size\+\_\+t}]{length, }
\item[{size\+\_\+t}]{pos}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga4d3ce6de335bfff107ff809186768da8}


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 eina\+\_\+binbuf\+\_\+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() 

eina\+\_\+binbuf\+\_\+insert() 

eina\+\_\+binbuf\+\_\+insert\+\_\+n() 
\end{DoxySeeAlso}
\hypertarget{group__Eina__Binary__Buffer__Group_ga3c5f8a122bc7cff86a99d3323a6ba9b1}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+insert\+\_\+char@{eina\+\_\+binbuf\+\_\+insert\+\_\+char}}
\index{eina\+\_\+binbuf\+\_\+insert\+\_\+char@{eina\+\_\+binbuf\+\_\+insert\+\_\+char}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+insert\+\_\+char}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} {\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} eina\+\_\+binbuf\+\_\+insert\+\_\+char (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf, }
\item[{unsigned char}]{c, }
\item[{size\+\_\+t}]{pos}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga3c5f8a122bc7cff86a99d3323a6ba9b1}


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__Binary__Buffer__Group_gaef7673ef94bc09f27a556c10bfcc1f6c}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+remove@{eina\+\_\+binbuf\+\_\+remove}}
\index{eina\+\_\+binbuf\+\_\+remove@{eina\+\_\+binbuf\+\_\+remove}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+remove}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} eina\+\_\+binbuf\+\_\+remove (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf, }
\item[{size\+\_\+t}]{start, }
\item[{size\+\_\+t}]{end}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_gaef7673ef94bc09f27a556c10bfcc1f6c}


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. \hypertarget{group__Eina__Binary__Buffer__Group_gace23717e3c4371cc0b3f299147cec187}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+string\+\_\+get@{eina\+\_\+binbuf\+\_\+string\+\_\+get}}
\index{eina\+\_\+binbuf\+\_\+string\+\_\+get@{eina\+\_\+binbuf\+\_\+string\+\_\+get}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+string\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} const unsigned char$\ast$ eina\+\_\+binbuf\+\_\+string\+\_\+get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_gace23717e3c4371cc0b3f299147cec187}


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 eina\+\_\+binbuf\+\_\+append() or similar will make that pointer invalid.

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Eina__Binary__Buffer__Group_ga0db56911173efa0164372671cfe3f344}{eina\+\_\+binbuf\+\_\+string\+\_\+steal()} 
\end{DoxySeeAlso}
\hypertarget{group__Eina__Binary__Buffer__Group_ga0db56911173efa0164372671cfe3f344}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+string\+\_\+steal@{eina\+\_\+binbuf\+\_\+string\+\_\+steal}}
\index{eina\+\_\+binbuf\+\_\+string\+\_\+steal@{eina\+\_\+binbuf\+\_\+string\+\_\+steal}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+string\+\_\+steal}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} unsigned char$\ast$ eina\+\_\+binbuf\+\_\+string\+\_\+steal (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga0db56911173efa0164372671cfe3f344}


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__Binary__Buffer__Group_gace23717e3c4371cc0b3f299147cec187}{eina\+\_\+binbuf\+\_\+string\+\_\+get()} 
\end{DoxySeeAlso}
\hypertarget{group__Eina__Binary__Buffer__Group_ga091befb5454e6e140263bfb2a9d378dc}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+string\+\_\+free@{eina\+\_\+binbuf\+\_\+string\+\_\+free}}
\index{eina\+\_\+binbuf\+\_\+string\+\_\+free@{eina\+\_\+binbuf\+\_\+string\+\_\+free}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+string\+\_\+free}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+binbuf\+\_\+string\+\_\+free (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_ga091befb5454e6e140263bfb2a9d378dc}


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}. \hypertarget{group__Eina__Binary__Buffer__Group_gade3052a6c39b4be19c25be92687cded3}{\index{Binary Buffer@{Binary Buffer}!eina\+\_\+binbuf\+\_\+length\+\_\+get@{eina\+\_\+binbuf\+\_\+length\+\_\+get}}
\index{eina\+\_\+binbuf\+\_\+length\+\_\+get@{eina\+\_\+binbuf\+\_\+length\+\_\+get}!Binary Buffer@{Binary Buffer}}
\subsubsection[{eina\+\_\+binbuf\+\_\+length\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} size\+\_\+t eina\+\_\+binbuf\+\_\+length\+\_\+get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Binbuf} $\ast$}]{buf}
\end{DoxyParamCaption}
)}}\label{group__Eina__Binary__Buffer__Group_gade3052a6c39b4be19c25be92687cded3}


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