Eina_Strbuf example

First thing always is including Eina:

#include <stdio.h>
#include <Eina.h>

Next we initialize eina and create a string buffer to play with:

int main(int argc, char **argv)
{
buf = eina_strbuf_new();

Here you can see two different ways of creating a buffer with the same contents. We could create them in simpler ways, but this gives us an opportunity to demonstrate several functions in action:

eina_strbuf_append_length(buf, "buffe", 5);
printf("%s\n", eina_strbuf_string_get(buf));
printf("%s\n", eina_strbuf_string_get(buf));
eina_strbuf_append_escaped(buf, "my buffer");
printf("%s\n", eina_strbuf_string_get(buf));

Next we use the printf family of functions to create a formated string, add, remove and replace some content:

eina_strbuf_append_printf(buf, "%s%c", "buffe", 'r');
eina_strbuf_insert_printf(buf, " %s: %d", 6, "length", eina_strbuf_length_get(buf));
printf("%s\n", eina_strbuf_string_get(buf));
eina_strbuf_remove(buf, 0, 7);
printf("%s\n", eina_strbuf_string_get(buf));
eina_strbuf_replace_all(buf, "length", "size");
printf("%s\n", eina_strbuf_string_get(buf));

Once done we free our string buffer, shut down Eina and end the application:

return 0;
}