## EMailPartList EMailPartList |

## Synopsis

    struct              EMailPartList;
    EMailPartList *     e_mail_part_list_new                (CamelMimeMessage *message,
                                                             const gchar *message_uid,
                                                             CamelFolder *folder);
    CamelFolder *       e_mail_part_list_get_folder         (EMailPartList *part_list);
    CamelMimeMessage *  e_mail_part_list_get_message        (EMailPartList *part_list);
    const gchar *       e_mail_part_list_get_message_uid    (EMailPartList *part_list);
    void                e_mail_part_list_add_part           (EMailPartList *part_list,
                                                             EMailPart *part);
    EMailPart *         e_mail_part_list_ref_part           (EMailPartList *part_list,
                                                             const gchar *part_id);
    guint               e_mail_part_list_queue_parts        (EMailPartList *part_list,
                                                             const gchar *part_id,
                                                             GQueue *result_queue);
    gboolean            e_mail_part_list_is_empty           (EMailPartList *part_list);
    CamelObjectBag *    e_mail_part_list_get_registry       (void);

## Object Hierarchy

      GObject
       +----EMailPartList

## Properties

      "folder"                   CamelFolder*          : Read / Write / Construct Only
      "message"                  CamelMimeMessage*     : Read / Write / Construct Only
      "message-uid"              gchar*                : Read / Write / Construct Only

## Description

## Details

### struct EMailPartList

    struct EMailPartList;

### e_mail_part_list_new ()

    EMailPartList *     e_mail_part_list_new                (CamelMimeMessage *message,
                                                             const gchar *message_uid,
                                                             CamelFolder *folder);

### e_mail_part_list_get_folder ()

    CamelFolder *       e_mail_part_list_get_folder         (EMailPartList *part_list);

### e_mail_part_list_get_message ()

    CamelMimeMessage *  e_mail_part_list_get_message        (EMailPartList *part_list);

### e_mail_part_list_get_message_uid ()

    const gchar *       e_mail_part_list_get_message_uid    (EMailPartList *part_list);

### e_mail_part_list_add_part ()

    void                e_mail_part_list_add_part           (EMailPartList *part_list,
                                                             EMailPart *part);

### e_mail_part_list_ref_part ()

    EMailPart *         e_mail_part_list_ref_part           (EMailPartList *part_list,
                                                             const gchar *part_id);

### e_mail_part_list_queue_parts ()

    guint               e_mail_part_list_queue_parts        (EMailPartList *part_list,
                                                             const gchar *part_id,
                                                             GQueue *result_queue);

Populates `result_queue` with a sequence of EMailPart instances beginning with the part having `part_id`. If `part_id` is `NULL`, the entire sequence of EMailPart instances is queued.

Each EMailPart is referenced for thread-safety and should be unreferenced with `g_object_unref()`.

`part_list` : | an EMailPartList
`part_id` : | the EMailPart ID to begin queueing from, or `NULL`
`result_queue` : | a GQueue in which to deposit EMailPart instances
Returns : | the number of parts added to `result_queue`

### e_mail_part_list_is_empty ()

    gboolean            e_mail_part_list_is_empty           (EMailPartList *part_list);

`part_list` : | an EMailPartList
Returns : | whether the part list is empty (it doesn't contain any EMailpart).

### e_mail_part_list_get_registry ()

    CamelObjectBag *    e_mail_part_list_get_registry       (void);

Returns : | a CamelObjectBag where parsed EMailPartLists can be stored.

## Property Details

### The `"folder"` property

      "folder"                   CamelFolder*          : Read / Write / Construct Only

### The `"message"` property

      "message"                  CamelMimeMessage*     : Read / Write / Construct Only

### The `"message-uid"` property

      "message-uid"              gchar*                : Read / Write / Construct Only

Default value: NULL