[evolution-data-server/wip/camel-more-gobject] Fix/mute introspection warnings in Camel



commit e71b0277d51961a6477bcd48773be4e98174f2f4
Author: Milan Crha <mcrha redhat com>
Date:   Mon Nov 7 17:24:02 2016 +0100

    Fix/mute introspection warnings in Camel

 src/camel/camel-async-closure.c   |    8 +++---
 src/camel/camel-block-file.c      |    6 ++--
 src/camel/camel-cipher-context.c  |   15 ++++++++---
 src/camel/camel-folder-thread.c   |    2 +-
 src/camel/camel-folder.c          |   19 +------------
 src/camel/camel-folder.h          |    4 +-
 src/camel/camel-iconv.c           |   28 ++++++++++++--------
 src/camel/camel-memchunk.c        |   14 +++++-----
 src/camel/camel-mempool.c         |   10 +++---
 src/camel/camel-message-info.c    |    2 +-
 src/camel/camel-mime-part-utils.c |   52 ++++++++++++++++++++++++++++++++++++-
 src/camel/camel-mime-part-utils.h |    4 +++
 src/camel/camel-msgport.c         |   19 +++++++------
 src/camel/camel-object-bag.c      |    2 +-
 src/camel/camel-provider.c        |   36 +++++++++++++++++++++++++
 src/camel/camel-provider.h        |    3 ++
 src/camel/camel-search-private.c  |    6 ++++
 src/camel/camel-sexp.c            |    8 +++---
 src/camel/camel-store-summary.c   |   12 ++++----
 src/camel/camel-stream-fs.c       |    2 +-
 src/camel/camel-trie.c            |    8 +++---
 src/camel/camel-uid-cache.c       |    2 +-
 src/camel/camel-url-scanner.c     |   20 +++++++++++++-
 23 files changed, 199 insertions(+), 83 deletions(-)
---
diff --git a/src/camel/camel-async-closure.c b/src/camel/camel-async-closure.c
index f765571..970c363 100644
--- a/src/camel/camel-async-closure.c
+++ b/src/camel/camel-async-closure.c
@@ -59,7 +59,7 @@ struct _CamelAsyncClosure {
 };
 
 /**
- * camel_async_closure_new:
+ * camel_async_closure_new: (skip)
  *
  * Creates a new #CamelAsyncClosure for use with asynchronous functions.
  *
@@ -96,7 +96,7 @@ camel_async_closure_unlock_mutex_cb (gpointer user_data)
 }
 
 /**
- * camel_async_closure_wait:
+ * camel_async_closure_wait: (skip)
  * @closure: a #CamelAsyncClosure
  *
  * Call this function immediately after starting an asynchronous operation.
@@ -136,7 +136,7 @@ camel_async_closure_wait (CamelAsyncClosure *closure)
 }
 
 /**
- * camel_async_closure_free:
+ * camel_async_closure_free: (skip)
  * @closure: a #CamelAsyncClosure
  *
  * Frees the @closure and the resources it holds.
@@ -162,7 +162,7 @@ camel_async_closure_free (CamelAsyncClosure *closure)
 }
 
 /**
- * camel_async_closure_callback:
+ * camel_async_closure_callback: (skip)
  * @source_object: a #GObject or %NULL
  * @result: a #GAsyncResult
  * @closure: a #CamelAsyncClosure
diff --git a/src/camel/camel-block-file.c b/src/camel/camel-block-file.c
index 9115afe..c0b333f 100644
--- a/src/camel/camel-block-file.c
+++ b/src/camel/camel-block-file.c
@@ -440,7 +440,7 @@ camel_block_file_get_root_block (CamelBlockFile *bs)
  * camel_block_file_get_cache_limit:
  * @bs: a #CamelBlockFile
  *
- * Returns: (transfer none): Current block cache limit of @bs.
+ * Returns: Current block cache limit of @bs.
  *
  * Since: 3.24
  **/
@@ -531,7 +531,7 @@ camel_block_file_delete (CamelBlockFile *bs)
 }
 
 /**
- * camel_block_file_new_block:
+ * camel_block_file_new_block: (skip)
  * @bs:
  *
  * Allocate a new block, return a pointer to it.  Old blocks
@@ -603,7 +603,7 @@ camel_block_file_free_block (CamelBlockFile *bs,
 }
 
 /**
- * camel_block_file_get_block:
+ * camel_block_file_get_block: (skip)
  * @bs:
  * @id:
  *
diff --git a/src/camel/camel-cipher-context.c b/src/camel/camel-cipher-context.c
index 0fcffff..d05a866 100644
--- a/src/camel/camel-cipher-context.c
+++ b/src/camel/camel-cipher-context.c
@@ -1179,6 +1179,13 @@ camel_cipher_validity_add_certinfo (CamelCipherValidity *vin,
 
 /**
  * camel_cipher_validity_add_certinfo_ex:
+ * @vin: a #CamelCipherValidity
+ * @mode: a #CamelCipherValidityMode, where to add the additional certificate information
+ * @name: a name to add
+ * @email: an e-mail address to add
+ * @cert_data: (nullable) (destroy cert_data_free): a certificate data, or %NULL
+ * @cert_data_free: (nullable): a destroy function for @cert_data; required, when @cert_data is not %NULL
+ * @cert_data_clone: (nullable) (scope call): a copy function for @cert_data, to copy the data; required, 
when @cert_data is not %NULL
  *
  * Add a cert info to the signer or encrypter info, with extended data set.
  *
@@ -1270,9 +1277,9 @@ camel_cipher_validity_get_certinfo_property (CamelCipherValidity *vin,
  * @mode: which cipher validity part to use
  * @info_index: a 0-based index of the requested #CamelCipherCertInfo
  * @name: a property name
- * @value: (nullable): a property value, or %NULL
+ * @value: (nullable) (destroy value_free): a property value, or %NULL
  * @value_free: (nullable): a free function for the @value
- * @value_clone: (nullable): a clone function for the @value
+ * @value_clone: (nullable) (scope call): a clone function for the @value
  *
  * Sets a named property @name value @value for the given @info_index
  * of the @mode validity part. If the @value is %NULL, then the property
@@ -1428,9 +1435,9 @@ camel_cipher_certinfo_get_property (CamelCipherCertInfo *cert_info,
  * camel_cipher_certinfo_set_property:
  * @cert_info: a #CamelCipherCertInfo
  * @name: a property name
- * @value: (nullable): a property value, or %NULL
+ * @value: (nullable) (destroy value_free): a property value, or %NULL
  * @value_free: (nullable): a free function for the @value
- * @value_clone: (nullable): a clone function for the @value
+ * @value_clone: (nullable) (scope call): a clone function for the @value
  *
  * Sets a named property @name value @value for the given @cert_info.
  * If the @value is %NULL, then the property is removed. With a non-%NULL
diff --git a/src/camel/camel-folder-thread.c b/src/camel/camel-folder-thread.c
index 2b3d78e..bfe3ebc 100644
--- a/src/camel/camel-folder-thread.c
+++ b/src/camel/camel-folder-thread.c
@@ -650,7 +650,7 @@ thread_summary (CamelFolderThread *thread,
 }
 
 /**
- * camel_folder_thread_messages_new:
+ * camel_folder_thread_messages_new: (skip)
  * @folder:
  * @uids: (element-type utf8): The subset of uid's to thread.  If NULL. then thread all
  * uid's in @folder.
diff --git a/src/camel/camel-folder.c b/src/camel/camel-folder.c
index 3d221c8..460da61 100644
--- a/src/camel/camel-folder.c
+++ b/src/camel/camel-folder.c
@@ -1300,6 +1300,7 @@ camel_folder_class_init (CamelFolderClass *class)
        /**
         * CamelFolder::changed
         * @folder: the #CamelFolder which emitted the signal
+        * @changes: the #CamelFolderChangeInfo with the list of changes
         **/
        signals[CHANGED] = g_signal_new (
                "changed",
@@ -1308,7 +1309,7 @@ camel_folder_class_init (CamelFolderClass *class)
                G_STRUCT_OFFSET (CamelFolderClass, changed),
                NULL, NULL, NULL,
                G_TYPE_NONE, 1,
-               G_TYPE_POINTER);
+               CAMEL_TYPE_FOLDER_CHANGE_INFO);
 
        /**
         * CamelFolder::deleted
@@ -2673,22 +2674,6 @@ camel_folder_quota_info_free (CamelFolderQuotaInfo *info)
 }
 
 /**
- * camel_folder_free_nop:
- * @folder: a #CamelFolder
- * @array: an array of uids or #CamelMessageInfo
- *
- * "Frees" the provided array by doing nothing. Used by #CamelFolder
- * subclasses as an implementation for free_uids, or free_summary when
- * the returned array is "static" information and should not be freed.
- **/
-void
-camel_folder_free_nop (CamelFolder *folder,
-                       GPtrArray *array)
-{
-       ;
-}
-
-/**
  * camel_folder_free_shallow:
  * @folder: a #CamelFolder
  * @array: (element-type utf8): an array of uids or #CamelMessageInfo
diff --git a/src/camel/camel-folder.h b/src/camel/camel-folder.h
index a8188c8..f68a192 100644
--- a/src/camel/camel-folder.h
+++ b/src/camel/camel-folder.h
@@ -49,6 +49,8 @@
        (G_TYPE_INSTANCE_GET_CLASS \
        ((obj), CAMEL_TYPE_FOLDER, CamelFolderClass))
 
+#define CAMEL_TYPE_FOLDER_CHANGE_INFO (camel_folder_change_info_get_type ())
+
 /**
  * CAMEL_FOLDER_ERROR:
  *
@@ -380,8 +382,6 @@ CamelFolderQuotaInfo *
 CamelFolderQuotaInfo *
                camel_folder_quota_info_clone   (const CamelFolderQuotaInfo *info);
 void           camel_folder_quota_info_free    (CamelFolderQuotaInfo *info);
-void           camel_folder_free_nop           (CamelFolder *folder,
-                                                GPtrArray *array);
 void           camel_folder_free_shallow       (CamelFolder *folder,
                                                 GPtrArray *array);
 void           camel_folder_free_deep          (CamelFolder *folder,
diff --git a/src/camel/camel-iconv.c b/src/camel/camel-iconv.c
index ed5b2fe..723707f 100644
--- a/src/camel/camel-iconv.c
+++ b/src/camel/camel-iconv.c
@@ -369,12 +369,18 @@ flush_entry (struct _iconv_cache *ic)
        g_free (ic);
 }
 
-/* This should run pretty quick, its called a lot */
+/**
+ * camel_iconv_open: (skip)
+ * @to: charset to convert to
+ * @from: charset to covert from
+ *
+ * Returns: a #GIConv for the conversion from charset @from to charset @to, or (GIConv) -1 on error.
+ **/
 GIConv
-camel_iconv_open (const gchar *oto,
-                  const gchar *ofrom)
+camel_iconv_open (const gchar *to,
+                  const gchar *from)
 {
-       const gchar *to, *from;
+       const gchar *nto, *nfrom;
        gchar *tofrom;
        gsize tofrom_len;
        struct _iconv_cache *ic;
@@ -382,16 +388,16 @@ camel_iconv_open (const gchar *oto,
        gint errnosav;
        GIConv ip;
 
-       if (oto == NULL || ofrom == NULL) {
+       if (to == NULL || from == NULL) {
                errno = EINVAL;
                return (GIConv) -1;
        }
 
-       to = camel_iconv_charset_name (oto);
-       from = camel_iconv_charset_name (ofrom);
-       tofrom_len = strlen (to) + strlen (from) + 2;
+       nto = camel_iconv_charset_name (to);
+       nfrom = camel_iconv_charset_name (from);
+       tofrom_len = strlen (nto) + strlen (nfrom) + 2;
        tofrom = g_alloca (tofrom_len);
-       g_snprintf (tofrom, tofrom_len, "%s%%%s", to, from);
+       g_snprintf (tofrom, tofrom_len, "%s%%%s", nto, nfrom);
 
        G_LOCK (iconv);
 
@@ -449,7 +455,7 @@ camel_iconv_open (const gchar *oto,
                }
        } else {
                cd (printf ("creating new iconv converter '%s'\n", ic->conv));
-               ip = g_iconv_open (to, from);
+               ip = g_iconv_open (nto, nfrom);
                in = g_malloc (sizeof (*in));
                in->ip = ip;
                in->parent = ic;
@@ -459,7 +465,7 @@ camel_iconv_open (const gchar *oto,
                        in->busy = TRUE;
                } else {
                        errnosav = errno;
-                       g_warning ("Could not open converter for '%s' to '%s' charset", from, to);
+                       g_warning ("Could not open converter for '%s' to '%s' charset", nfrom, nto);
                        in->busy = FALSE;
                        errno = errnosav;
                }
diff --git a/src/camel/camel-memchunk.c b/src/camel/camel-memchunk.c
index d99f3de..8f3991b 100644
--- a/src/camel/camel-memchunk.c
+++ b/src/camel/camel-memchunk.c
@@ -72,7 +72,7 @@ struct _CamelMemChunk {
 };
 
 /**
- * camel_memchunk_new:
+ * camel_memchunk_new: (skip)
  * @atomcount: the number of atoms stored in a single malloc'd block of memory
  * @atomsize: the size of each allocation
  *
@@ -102,7 +102,7 @@ camel_memchunk_new (gint atomcount,
 }
 
 /**
- * camel_memchunk_alloc:
+ * camel_memchunk_alloc: (skip)
  * @memchunk: an #CamelMemChunk
  *
  * Allocate a new atom size block of memory from an #CamelMemChunk.
@@ -141,7 +141,7 @@ camel_memchunk_alloc (CamelMemChunk *memchunk)
 }
 
 /**
- * camel_memchunk_alloc0:
+ * camel_memchunk_alloc0: (skip)
  * @memchunk: an #CamelMemChunk
  *
  * Allocate a new atom size block of memory from an #CamelMemChunk,
@@ -164,7 +164,7 @@ camel_memchunk_alloc0 (CamelMemChunk *memchunk)
 }
 
 /**
- * camel_memchunk_free:
+ * camel_memchunk_free: (skip)
  * @memchunk: an #CamelMemChunk
  * @mem: address of atom to free
  *
@@ -194,7 +194,7 @@ camel_memchunk_free (CamelMemChunk *memchunk,
 }
 
 /**
- * camel_memchunk_empty:
+ * camel_memchunk_empty: (skip)
  * @memchunk: an #CamelMemChunk
  *
  * Clean out the memchunk buffers.  Marks all allocated memory as free blocks,
@@ -250,7 +250,7 @@ tree_search (struct _cleaninfo *a,
 }
 
 /**
- * camel_memchunk_clean:
+ * camel_memchunk_clean: (skip)
  * @memchunk: an #CamelMemChunk
  *
  * Scan all empty blocks and check for blocks which can be free'd
@@ -328,7 +328,7 @@ camel_memchunk_clean (CamelMemChunk *memchunk)
 }
 
 /**
- * camel_memchunk_destroy:
+ * camel_memchunk_destroy: (skip)
  * @memchunk: an #CamelMemChunk
  *
  * Free the memchunk header, and all associated memory.
diff --git a/src/camel/camel-mempool.c b/src/camel/camel-mempool.c
index bc2fade..2c9bc2b 100644
--- a/src/camel/camel-mempool.c
+++ b/src/camel/camel-mempool.c
@@ -41,7 +41,7 @@ struct _CamelMemPool {
 };
 
 /**
- * camel_mempool_new:
+ * camel_mempool_new: (skip)
  * @blocksize: The base blocksize to use for all system alocations.
  * @threshold: If the allocation exceeds the threshold, then it is
  * allocated separately and stored in a separate list.
@@ -94,7 +94,7 @@ camel_mempool_new (gint blocksize,
 }
 
 /**
- * camel_mempool_alloc:
+ * camel_mempool_alloc: (skip)
  * @pool: a #CamelMemPool
  * @size:
  *
@@ -137,7 +137,7 @@ camel_mempool_alloc (CamelMemPool *pool,
 }
 
 /**
- * camel_mempool_strdup:
+ * camel_mempool_strdup: (skip)
  * @pool: a #CamelMemPool
  * @str:
  *
@@ -158,7 +158,7 @@ camel_mempool_strdup (CamelMemPool *pool,
 }
 
 /**
- * camel_mempool_flush:
+ * camel_mempool_flush: (skip)
  * @pool: a #CamelMemPool
  * @freeall: free all system allocated blocks as well
  *
@@ -203,7 +203,7 @@ camel_mempool_flush (CamelMemPool *pool,
 }
 
 /**
- * camel_mempool_destroy:
+ * camel_mempool_destroy: (skip)
  * @pool: a #CamelMemPool
  *
  * Free all memory associated with a mempool.
diff --git a/src/camel/camel-message-info.c b/src/camel/camel-message-info.c
index 864e572..01664e3 100644
--- a/src/camel/camel-message-info.c
+++ b/src/camel/camel-message-info.c
@@ -2790,7 +2790,7 @@ camel_message_info_dup_references (const CamelMessageInfo *mi)
 /**
  * camel_message_info_take_references:
  * @mi: a #CamelMessageInfo
- * @references: (transfer full) (nullable): a references to set
+ * @references: (element-type guint64) (transfer full) (nullable): a references to set
  *
  * Takes encoded In-Reply-To and References headers of the associated message
  * as an array of guint64 numbers, partial MD5 sums. Each value can be
diff --git a/src/camel/camel-mime-part-utils.c b/src/camel/camel-mime-part-utils.c
index a87408f..77ab61b 100644
--- a/src/camel/camel-mime-part-utils.c
+++ b/src/camel/camel-mime-part-utils.c
@@ -151,13 +151,17 @@ camel_mime_part_construct_content_from_parser (CamelMimePart *dw,
        return success;
 }
 
+G_DEFINE_BOXED_TYPE (CamelMessageContentInfo,
+               camel_message_content_info,
+               camel_message_content_info_copy,
+               camel_message_content_info_free)
 
 /**
  * camel_message_content_info_new:
  *
  * Allocate a new #CamelMessageContentInfo.
  *
- * Returns: a newly allocated #CamelMessageContentInfo
+ * Returns: (transfer full): a newly allocated #CamelMessageContentInfo
  **/
 CamelMessageContentInfo *
 camel_message_content_info_new (void)
@@ -166,6 +170,52 @@ camel_message_content_info_new (void)
 }
 
 /**
+ * camel_message_content_info_copy:
+ * @src: (nullable): a source #CamelMessageContentInfo to copy
+ *
+ * Returns: a copy of @src, or %NULL, if @src was %NULL
+ *
+ * Since: 3.24
+ **/
+CamelMessageContentInfo *
+camel_message_content_info_copy (const CamelMessageContentInfo *src)
+{
+       CamelMessageContentInfo *res;
+
+       if (!src)
+               return NULL;
+
+       res = camel_message_content_info_new ();
+
+       if (src->type) {
+               gchar *content_type;
+
+               content_type = camel_content_type_format (src->type);
+               res->type = camel_content_type_decode (content_type);
+
+               g_free (content_type);
+       }
+
+       res->id = g_strdup (src->id);
+       res->description = g_strdup (src->description);
+       res->encoding = g_strdup (src->encoding);
+       res->size = src->size;
+
+       res->next = camel_message_content_info_copy (src->next);
+       res->childs = camel_message_content_info_copy (src->childs);
+
+       if (res->childs) {
+               CamelMessageContentInfo *child;
+
+               for (child = res->childs; child; child = child->next) {
+                       child->parent = res;
+               }
+       }
+
+       return res;
+}
+
+/**
  * camel_message_content_info_free:
  * @ci: a #CamelMessageContentInfo
  *
diff --git a/src/camel/camel-mime-part-utils.h b/src/camel/camel-mime-part-utils.h
index dbb4175..a31f2be 100644
--- a/src/camel/camel-mime-part-utils.h
+++ b/src/camel/camel-mime-part-utils.h
@@ -53,8 +53,12 @@ struct _CamelMessageContentInfo {
        guint32 size;
 };
 
+GType          camel_message_content_info_get_type
+                                               (void) G_GNUC_CONST;
 CamelMessageContentInfo *
                camel_message_content_info_new  (void);
+CamelMessageContentInfo *
+               camel_message_content_info_copy (const CamelMessageContentInfo *src);
 void           camel_message_content_info_free (CamelMessageContentInfo *ci);
 CamelMessageContentInfo *
                camel_message_content_info_new_from_headers
diff --git a/src/camel/camel-msgport.c b/src/camel/camel-msgport.c
index d604cb5..75ee41f 100644
--- a/src/camel/camel-msgport.c
+++ b/src/camel/camel-msgport.c
@@ -238,7 +238,7 @@ msgport_sync_with_prpipe (PRFileDesc *prfd)
 }
 
 /**
- * camel_msgport_new:
+ * camel_msgport_new: (skip)
  *
  * Since: 2.24
  **/
@@ -258,7 +258,7 @@ camel_msgport_new (void)
 }
 
 /**
- * camel_msgport_destroy:
+ * camel_msgport_destroy: (skip)
  *
  * Since: 2.24
  **/
@@ -281,7 +281,7 @@ camel_msgport_destroy (CamelMsgPort *msgport)
 }
 
 /**
- * camel_msgport_fd:
+ * camel_msgport_fd: (skip)
  *
  * Since: 2.24
  **/
@@ -302,9 +302,10 @@ camel_msgport_fd (CamelMsgPort *msgport)
 }
 
 /**
- * camel_msgport_prfd:
+ * camel_msgport_prfd: (skip)
  *
  * Returns: (transfer none):
+ *
  * Since: 2.24
  **/
 PRFileDesc *
@@ -324,7 +325,7 @@ camel_msgport_prfd (CamelMsgPort *msgport)
 }
 
 /**
- * camel_msgport_push:
+ * camel_msgport_push: (skip)
  *
  * Since: 2.24
  **/
@@ -375,7 +376,7 @@ camel_msgport_push (CamelMsgPort *msgport,
 }
 
 /**
- * camel_msgport_pop:
+ * camel_msgport_pop: (skip)
  *
  * Since: 2.24
  **/
@@ -403,7 +404,7 @@ camel_msgport_pop (CamelMsgPort *msgport)
 }
 
 /**
- * camel_msgport_try_pop:
+ * camel_msgport_try_pop: (skip)
  *
  * Since: 2.24
  **/
@@ -429,7 +430,7 @@ camel_msgport_try_pop (CamelMsgPort *msgport)
 }
 
 /**
- * camel_msgport_timeout_pop:
+ * camel_msgport_timeout_pop: (skip)
  * @msgport: a #CamelMsgPort
  * @timeout: number of microseconds to wait
  *
@@ -458,7 +459,7 @@ camel_msgport_timeout_pop (CamelMsgPort *msgport,
 }
 
 /**
- * camel_msgport_reply:
+ * camel_msgport_reply: (skip)
  *
  * Since: 2.24
  **/
diff --git a/src/camel/camel-object-bag.c b/src/camel/camel-object-bag.c
index e7ae173..b489014 100644
--- a/src/camel/camel-object-bag.c
+++ b/src/camel/camel-object-bag.c
@@ -151,7 +151,7 @@ wref_free_func (gpointer p)
 }
 
 /**
- * camel_object_bag_new:
+ * camel_object_bag_new: (skip)
  * @key_hash_func: (scope call): a hashing function for keys
  * @key_equal_func: (scope call): a comparison function for keys
  * @key_copy_func: (scope call): a function to copy keys
diff --git a/src/camel/camel-provider.c b/src/camel/camel-provider.c
index 625dd10..c9c3bd1 100644
--- a/src/camel/camel-provider.c
+++ b/src/camel/camel-provider.c
@@ -47,6 +47,42 @@ static GRecMutex provider_lock;
 #define LOCK()         (g_rec_mutex_lock(&provider_lock))
 #define UNLOCK()       (g_rec_mutex_unlock(&provider_lock))
 
+CamelProvider *        camel_provider_copy             (CamelProvider *provider);
+void           camel_provider_free             (CamelProvider *provider);
+
+G_DEFINE_BOXED_TYPE (CamelProvider, camel_provider, camel_provider_copy, camel_provider_free)
+
+/*
+ * camel_provider_copy:
+ * @provider: a #CamelProvider to copy
+ *
+ * The function returns @provider, because providers are not allocated
+ * on heap. It's defined only for the introspection purposes.
+ *
+ * Returns: (transfer full): the @provider
+ *
+ * Since: 3.24
+ */
+CamelProvider *
+camel_provider_copy (CamelProvider *provider)
+{
+       return provider;
+}
+
+/*
+ * camel_provider_free:
+ * @provider: a #CamelProvider to copy
+ *
+ * The function does nothing, because providers are not allocated
+ * on heap. It's defined only for the introspection purposes.
+ *
+ * Since: 3.24
+ */
+void
+camel_provider_free (CamelProvider *provider)
+{
+}
+
 /* The vfolder provider is always available */
 static CamelProvider vee_provider = {
        "vfolder",
diff --git a/src/camel/camel-provider.h b/src/camel/camel-provider.h
index 0f09117..1a1d642 100644
--- a/src/camel/camel-provider.h
+++ b/src/camel/camel-provider.h
@@ -196,6 +196,9 @@ struct _CamelProviderModule {
        guint loaded : 1;
 };
 
+/* Introspection function */
+GType          camel_provider_get_type         (void) G_GNUC_CONST;
+
 void           camel_provider_init             (void);
 gboolean       camel_provider_load             (const gchar *path,
                                                 GError **error);
diff --git a/src/camel/camel-search-private.c b/src/camel/camel-search-private.c
index f722779..8a38f0f 100644
--- a/src/camel/camel-search-private.c
+++ b/src/camel/camel-search-private.c
@@ -46,6 +46,9 @@
  *
  * A small issue is that case-insenstivity won't work entirely correct
  * for utf8 strings. */
+/**
+ * camel_search_build_match_regex: (skip)
+ **/
 gint
 camel_search_build_match_regex (regex_t *pattern,
                                 camel_search_flags_t type,
@@ -500,6 +503,9 @@ camel_search_header_match (const gchar *value,
 
 /* Performs a 'slow' content-based match. */
 /* There is also an identical copy of this in camel-filter-search.c. */
+/**
+ * camel_search_message_body_contains: (skip)
+ **/
 gboolean
 camel_search_message_body_contains (CamelDataWrapper *object,
                                     regex_t *pattern)
diff --git a/src/camel/camel-sexp.c b/src/camel/camel-sexp.c
index dd5bd4b..5487d79 100644
--- a/src/camel/camel-sexp.c
+++ b/src/camel/camel-sexp.c
@@ -199,7 +199,7 @@ camel_sexp_error (CamelSExp *sexp)
 }
 
 /**
- * camel_sexp_result_new:
+ * camel_sexp_result_new: (skip)
  *
  * Since: 3.4
  **/
@@ -768,7 +768,7 @@ term_eval_begin (CamelSExp *sexp,
 }
 
 /**
- * camel_sexp_term_eval:
+ * camel_sexp_term_eval: (skip)
  *
  * Since: 3.4
  **/
@@ -1288,7 +1288,7 @@ parse_values (CamelSExp *sexp,
 }
 
 /**
- * camel_sexp_parse_value:
+ * camel_sexp_parse_value: (skip)
  *
  * Since: 3.4
  **/
@@ -1729,7 +1729,7 @@ camel_sexp_parse (CamelSExp *sexp)
 }
 
 /**
- * camel_sexp_eval:
+ * camel_sexp_eval: (skip)
  *
  * Since: 3.4
  **/
diff --git a/src/camel/camel-store-summary.c b/src/camel/camel-store-summary.c
index ff9c206..85fda17 100644
--- a/src/camel/camel-store-summary.c
+++ b/src/camel/camel-store-summary.c
@@ -396,7 +396,7 @@ camel_store_summary_array_free (CamelStoreSummary *summary,
 }
 
 /**
- * camel_store_summary_path:
+ * camel_store_summary_path: (skip)
  * @summary: a #CamelStoreSummary object
  * @path: path to the item
  *
@@ -615,13 +615,13 @@ camel_store_summary_add (CamelStoreSummary *summary,
 }
 
 /**
- * camel_store_summary_add_from_path:
+ * camel_store_summary_add_from_path: (skip)
  * @summary: a #CamelStoreSummary object
  * @path: item path
  *
  * Build a new info record based on the name, and add it to the summary.
  *
- * Returns: the newly added record
+ * Returns: (transfer none): the newly added record
  **/
 CamelStoreInfo *
 camel_store_summary_add_from_path (CamelStoreSummary *summary,
@@ -657,13 +657,13 @@ camel_store_summary_add_from_path (CamelStoreSummary *summary,
 }
 
 /**
- * camel_store_summary_info_ref:
+ * camel_store_summary_info_ref: (skip)
  * @summary: a #CamelStoreSummary object
  * @info: a #CamelStoreInfo
  *
  * Add an extra reference to @info.
  *
- * Returns: the @info argument
+ * Returns: (transfer full): the @info argument
  **/
 CamelStoreInfo *
 camel_store_summary_info_ref (CamelStoreSummary *summary,
@@ -772,7 +772,7 @@ camel_store_summary_remove_path (CamelStoreSummary *summary,
 }
 
 /**
- * camel_store_summary_info_new:
+ * camel_store_summary_info_new: (skip)
  * @summary: a #CamelStoreSummary object
  *
  * Allocate a new #CamelStoreInfo, suitable for adding to this
diff --git a/src/camel/camel-stream-fs.c b/src/camel/camel-stream-fs.c
index 49f2fee..beceb3d 100644
--- a/src/camel/camel-stream-fs.c
+++ b/src/camel/camel-stream-fs.c
@@ -303,7 +303,7 @@ camel_stream_fs_new_with_fd (gint fd)
  * camel_stream_fs_new_with_name:
  * @name: a local filename
  * @flags: flags as in open(2)
- * @mode: a file mode
+ * @mode: (type guint32): a file mode
  * @error: return location for a #GError, or %NULL
  *
  * Creates a new #CamelStreamFs corresponding to the named file, flags,
diff --git a/src/camel/camel-trie.c b/src/camel/camel-trie.c
index 641643f..e2f4c33 100644
--- a/src/camel/camel-trie.c
+++ b/src/camel/camel-trie.c
@@ -101,7 +101,7 @@ trie_utf8_getc (const guchar **in,
 }
 
 /**
- * camel_trie_new:
+ * camel_trie_new: (skip)
  * @icase: Case sensitivity for the #CamelTrie.
  *
  * Creates a new #CamelTrie. If @icase is %TRUE, then pattern matching
@@ -132,7 +132,7 @@ camel_trie_new (gboolean icase)
 }
 
 /**
- * camel_trie_free:
+ * camel_trie_free: (skip)
  * @trie: The #CamelTrie to free.
  *
  * Frees the memory associated with the #CamelTrie @trie.
@@ -232,7 +232,7 @@ dump_trie (struct _trie_state *s,
 */
 
 /**
- * camel_trie_add:
+ * camel_trie_add: (skip)
  * @trie: The #CamelTrie to add a pattern to.
  * @pattern: The pattern to add.
  * @pattern_id: The id to use for the pattern.
@@ -329,7 +329,7 @@ camel_trie_add (CamelTrie *trie,
  */
 
 /**
- * camel_trie_search:
+ * camel_trie_search: (skip)
  * @trie: The #CamelTrie to search in.
  * @buffer: (array length=buflen) (type gchar): The string to match against a pattern in @trie.
  * @buflen: The length of @buffer.
diff --git a/src/camel/camel-uid-cache.c b/src/camel/camel-uid-cache.c
index e6fbc28..23237f5 100644
--- a/src/camel/camel-uid-cache.c
+++ b/src/camel/camel-uid-cache.c
@@ -38,7 +38,7 @@ struct _uid_state {
 };
 
 /**
- * camel_uid_cache_new:
+ * camel_uid_cache_new: (skip)
  * @filename: path to load the cache from
  *
  * Creates a new UID cache, initialized from @filename. If @filename
diff --git a/src/camel/camel-url-scanner.c b/src/camel/camel-url-scanner.c
index 1438d70..d86a9bc 100644
--- a/src/camel/camel-url-scanner.c
+++ b/src/camel/camel-url-scanner.c
@@ -32,6 +32,11 @@ struct _CamelUrlScanner {
        CamelTrie *trie;
 };
 
+/**
+ * camel_url_scanner_new: (skip)
+ *
+ * Returns: (transfer full): Creates a new #CamelUrlScanner
+ **/
 CamelUrlScanner *
 camel_url_scanner_new (void)
 {
@@ -44,6 +49,12 @@ camel_url_scanner_new (void)
        return scanner;
 }
 
+/**
+ * camel_url_scanner_free: (skip)
+ * @scanner: a #CamelUrlScanner
+ *
+ * Frees the @scanner.
+ **/
 void
 camel_url_scanner_free (CamelUrlScanner *scanner)
 {
@@ -54,6 +65,13 @@ camel_url_scanner_free (CamelUrlScanner *scanner)
        g_free (scanner);
 }
 
+/**
+ * camel_url_scanner_add: (skip)
+ * @scanner: a #CamelUrlScanner
+ * @pattern: a #CamelUrlPattern to add
+ *
+ * Adds a new @pattern into the scanner
+ **/
 void
 camel_url_scanner_add (CamelUrlScanner *scanner,
                        CamelUrlPattern *pattern)
@@ -65,7 +83,7 @@ camel_url_scanner_add (CamelUrlScanner *scanner,
 }
 
 /**
- * camel_url_scanner_scan:
+ * camel_url_scanner_scan: (skip)
  * @scanner: a #CamelUrlScanner object.
  * @in: (array length=inlen) (type gchar): the url to scan.
  * @inlen: length of the in array.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]