Eina: eina_strbuf example and documentation.

SVN revision: 60762
This commit is contained in:
Jonas M. Gastal 2011-06-28 14:38:17 +00:00
parent 1eb2a44f08
commit 2587a69af7
3 changed files with 76 additions and 2 deletions

View File

@ -29,7 +29,8 @@ SRCS = \
eina_inlist_01.c \
eina_inlist_02.c \
eina_inlist_03.c \
eina_str_01.c
eina_str_01.c \
eina_strbuf_01.c
pkglib_PROGRAMS =
@ -58,6 +59,7 @@ pkglib_PROGRAMS += \
eina_inlist_01 \
eina_inlist_02 \
eina_inlist_03 \
eina_str_01
eina_str_01 \
eina_strbuf_01
endif

View File

@ -0,0 +1,41 @@
//Compile with:
//gcc -Wall -o eina_strbuf_01 eina_strbuf_01.c `pkg-config --cflags --libs eina`
#include <stdio.h>
#include <Eina.h>
int main(int argc, char **argv)
{
Eina_Strbuf *buf;
eina_init();
buf = eina_strbuf_new();
eina_strbuf_append_length(buf, "buffe", 5);
eina_strbuf_append_char(buf, 'r');
printf("%s\n", eina_strbuf_string_get(buf));
eina_strbuf_insert_escaped(buf, "my ", 0);
printf("%s\n", eina_strbuf_string_get(buf));
eina_strbuf_reset(buf);
eina_strbuf_append_escaped(buf, "my buffer");
printf("%s\n", eina_strbuf_string_get(buf));
eina_strbuf_reset(buf);
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));
eina_strbuf_free(buf);
eina_shutdown();
return 0;
}

View File

@ -6,6 +6,35 @@
#include "eina_types.h"
/**
* @page tutorial_strbuf Eina_Strbuf example
* @dontinclude eina_strbuf_01.c
*
* First thing always is including Eina:
* @skipline #include
* @until #include
*
* Next we initialize eina and create a string buffer to play with:
* @until 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
* oportunity to demonstrate several functions in action:
* @until strbuf_reset
* @until strbuf_reset
*
* Next we use the printf family of functions to create a formated string,
* add, remove and replace some content:
* @until strbuf_string_get
* @until strbuf_string_get
* @until strbuf_string_get
*
* Once done we free our string buffer, shut down Eina and end the application:
* @until }
*
* @example eina_strbuf_01.c
*/
/**
* @addtogroup Eina_String_Buffer_Group String Buffer
*
@ -14,6 +43,8 @@
* 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 @ref tutorial_strbuf "this example".
*
* @{
*/