Branch: refs/heads/document-messages Author: Colomban Wendling ban@herbesfolles.org Committer: Colomban Wendling ban@herbesfolles.org Date: Mon, 26 Dec 2011 14:30:07 Commit: d76d72518a5c46acd5dc142d1f627d30978875eb https://github.com/geany/geany/commit/d76d72518a5c46acd5dc142d1f627d30978875...
Log Message: ----------- Import upstream MIO changes
Modified Paths: -------------- tagmanager/mio/mio.c tagmanager/mio/mio.h
Modified: tagmanager/mio/mio.c 35 files changed, 35 insertions(+), 0 deletions(-) =================================================================== @@ -18,6 +18,16 @@ * */
+/* Hack to force ANSI compliance by not using va_copy() even if present. + * This relies on the fact G_VA_COPY is maybe defined as va_copy in + * glibconfig.h, so we undef it, but gutils.h takes care of defining a + * compiler-specific implementation if not already defined. + * This needs to come before any other GLib inclusion. */ +#ifdef MIO_FORCE_ANSI +# include <glibconfig.h> +# undef G_VA_COPY +#endif + #include "mio.h" #include "mio-file.c" #include "mio-memory.c" @@ -31,6 +41,31 @@
/** + * SECTION:mio + * @short_description: The MIO object + * @include: mio/mio.h + * + * The #MIO object replicates the C file I/O API with support of both standard + * file based operations and in-memory operations. Its goal is to ease the port + * of an application that uses C file I/O API to perform in-memory operations. + * + * A #MIO object is created using mio_new_file() or mio_new_memory(), depending + * on whether you want file or in-memory operations, and destroyed using + * mio_free(). There is also some other convenient API to create file-based + * #MIO objects for more complex cases, such as mio_new_file_full() and + * mio_new_fp(). + * + * Once the #MIO object is created, you can perform standard I/O operations on + * it transparently without the need to care about the effective underlying + * operations. + * + * The I/O API is almost exactly a replication of the standard C file I/O API + * with the significant difference that the first parameter is always the #MIO + * object to work on. + */ + + +/** * mio_new_file_full: * @filename: Filename to open, passed as-is to @open_func as the first argument * @mode: Mode in which open the file, passed as-is to @open_func as the second
Modified: tagmanager/mio/mio.h 2 files changed, 1 insertions(+), 1 deletions(-) =================================================================== @@ -93,7 +93,7 @@ struct _MIOPos { #endif union { fpos_t file; - size_t mem; + gsize mem; } impl; };
@@ Diff output truncated at 100000 characters. @@
-------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).