}
/**
+ * e_cal_component_id_hash:
+ * @id: an #ECalComponentId
+ *
+ * Generates a hash value for @id.
+ *
+ * Returns: a hash value for @id
+ *
+ * Since: 3.10
+ **/
+guint
+e_cal_component_id_hash (const ECalComponentId *id)
+{
+ guint uid_hash;
+ guint rid_hash;
+
+ g_return_val_if_fail (id != NULL, 0);
+
+ uid_hash = g_str_hash (id->uid);
+ rid_hash = (id->rid != NULL) ? g_str_hash (id->rid) : 0;
+
+ return uid_hash ^ rid_hash;
+}
+
+/**
* e_cal_component_free_text_list:
* @text_list: (element-type ECalComponentText): List of #ECalComponentText
* structures.
ECalComponentId *e_cal_component_get_id (ECalComponent *comp);
void e_cal_component_free_id (ECalComponentId *id);
ECalComponentId *e_cal_component_id_copy (const ECalComponentId *id);
+guint e_cal_component_id_hash (const ECalComponentId *id);
void e_cal_component_get_categories (ECalComponent *comp, const gchar **categories);
void e_cal_component_set_categories (ECalComponent *comp, const gchar *categories);