summaryrefslogtreecommitdiff
path: root/gdata
diff options
context:
space:
mode:
authorPhilip Withnall <philip@tecnocode.co.uk>2010-04-03 00:02:49 +0100
committerPhilip Withnall <philip@tecnocode.co.uk>2010-04-16 21:34:06 +0100
commitf3d4e4261e0b1b06c2ab5ec401b08e518ed22090 (patch)
treec94a37f2d2801788e616852280b7f52effb93fbb /gdata
parente54748533b841ffa9decbb0245b1bdb39a86ae3e (diff)
downloadlibgdata-f3d4e4261e0b1b06c2ab5ec401b08e518ed22090.tar.gz
[core] Mark most getter functions as pure
Add G_GNUC_PURE to all applicable getter functions, which should allow gcc to optimise calls to libgdata in some cases. This required a little rewrite of the authentication system to ensure the username and password (etc.) are only changed on the #GDataService from the main thread.
Diffstat (limited to 'gdata')
-rw-r--r--gdata/atom/gdata-author.h8
-rw-r--r--gdata/atom/gdata-category.h8
-rw-r--r--gdata/atom/gdata-generator.h8
-rw-r--r--gdata/atom/gdata-link.h14
-rw-r--r--gdata/exif/gdata-exif-tags.h18
-rw-r--r--gdata/gcontact/gdata-gcontact-calendar.h10
-rw-r--r--gdata/gcontact/gdata-gcontact-event.h4
-rw-r--r--gdata/gcontact/gdata-gcontact-external-id.h8
-rw-r--r--gdata/gcontact/gdata-gcontact-jot.h4
-rw-r--r--gdata/gcontact/gdata-gcontact-language.h6
-rw-r--r--gdata/gcontact/gdata-gcontact-relation.h6
-rw-r--r--gdata/gcontact/gdata-gcontact-website.h10
-rw-r--r--gdata/gd/gdata-gd-email-address.h12
-rw-r--r--gdata/gd/gdata-gd-im-address.h12
-rw-r--r--gdata/gd/gdata-gd-name.h14
-rw-r--r--gdata/gd/gdata-gd-organization.h20
-rw-r--r--gdata/gd/gdata-gd-phone-number.h10
-rw-r--r--gdata/gd/gdata-gd-postal-address.h36
-rw-r--r--gdata/gd/gdata-gd-reminder.h6
-rw-r--r--gdata/gd/gdata-gd-when.h8
-rw-r--r--gdata/gd/gdata-gd-where.h8
-rw-r--r--gdata/gd/gdata-gd-who.h8
-rw-r--r--gdata/gdata-access-rule.h2
-rw-r--r--gdata/gdata-download-stream.h8
-rw-r--r--gdata/gdata-entry.h20
-rw-r--r--gdata/gdata-feed.h34
-rw-r--r--gdata/gdata-private.h10
-rw-r--r--gdata/gdata-query.h14
-rw-r--r--gdata/gdata-service.c324
-rw-r--r--gdata/gdata-service.h12
-rw-r--r--gdata/gdata-upload-stream.h10
-rw-r--r--gdata/georss/gdata-georss-where.h4
-rw-r--r--gdata/media/gdata-media-category.h6
-rw-r--r--gdata/media/gdata-media-content.h19
-rw-r--r--gdata/media/gdata-media-credit.h6
-rw-r--r--gdata/media/gdata-media-group.h20
-rw-r--r--gdata/media/gdata-media-thumbnail.h9
-rw-r--r--gdata/services/calendar/gdata-calendar-calendar.h10
-rw-r--r--gdata/services/calendar/gdata-calendar-event.h28
-rw-r--r--gdata/services/calendar/gdata-calendar-feed.h4
-rw-r--r--gdata/services/calendar/gdata-calendar-query.h10
-rw-r--r--gdata/services/contacts/gdata-contacts-contact.h82
-rw-r--r--gdata/services/contacts/gdata-contacts-query.h8
-rw-r--r--gdata/services/documents/gdata-documents-entry.h8
-rw-r--r--gdata/services/documents/gdata-documents-query.h14
-rw-r--r--gdata/services/picasaweb/gdata-picasaweb-album.h26
-rw-r--r--gdata/services/picasaweb/gdata-picasaweb-file.h54
-rw-r--r--gdata/services/picasaweb/gdata-picasaweb-query.h10
-rw-r--r--gdata/services/picasaweb/gdata-picasaweb-user.h12
-rw-r--r--gdata/services/youtube/gdata-youtube-content.h2
-rw-r--r--gdata/services/youtube/gdata-youtube-control.h4
-rw-r--r--gdata/services/youtube/gdata-youtube-credit.h2
-rw-r--r--gdata/services/youtube/gdata-youtube-group.h8
-rw-r--r--gdata/services/youtube/gdata-youtube-query.h16
-rw-r--r--gdata/services/youtube/gdata-youtube-service.h4
-rw-r--r--gdata/services/youtube/gdata-youtube-state.h8
-rw-r--r--gdata/services/youtube/gdata-youtube-video.h36
57 files changed, 539 insertions, 543 deletions
diff --git a/gdata/atom/gdata-author.h b/gdata/atom/gdata-author.h
index 7a625afa..8580219a 100644
--- a/gdata/atom/gdata-author.h
+++ b/gdata/atom/gdata-author.h
@@ -61,15 +61,15 @@ typedef struct {
GType gdata_author_get_type (void) G_GNUC_CONST;
GDataAuthor *gdata_author_new (const gchar *name, const gchar *uri, const gchar *email_address) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_author_compare (const GDataAuthor *a, const GDataAuthor *b);
+gint gdata_author_compare (const GDataAuthor *a, const GDataAuthor *b) G_GNUC_PURE;
-const gchar *gdata_author_get_name (GDataAuthor *self);
+const gchar *gdata_author_get_name (GDataAuthor *self) G_GNUC_PURE;
void gdata_author_set_name (GDataAuthor *self, const gchar *name);
-const gchar *gdata_author_get_uri (GDataAuthor *self);
+const gchar *gdata_author_get_uri (GDataAuthor *self) G_GNUC_PURE;
void gdata_author_set_uri (GDataAuthor *self, const gchar *uri);
-const gchar *gdata_author_get_email_address (GDataAuthor *self);
+const gchar *gdata_author_get_email_address (GDataAuthor *self) G_GNUC_PURE;
void gdata_author_set_email_address (GDataAuthor *self, const gchar *email_address);
G_END_DECLS
diff --git a/gdata/atom/gdata-category.h b/gdata/atom/gdata-category.h
index 226da82c..48cbdb6b 100644
--- a/gdata/atom/gdata-category.h
+++ b/gdata/atom/gdata-category.h
@@ -61,15 +61,15 @@ typedef struct {
GType gdata_category_get_type (void) G_GNUC_CONST;
GDataCategory *gdata_category_new (const gchar *term, const gchar *scheme, const gchar *label) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_category_compare (const GDataCategory *a, const GDataCategory *b);
+gint gdata_category_compare (const GDataCategory *a, const GDataCategory *b) G_GNUC_PURE;
-const gchar *gdata_category_get_term (GDataCategory *self);
+const gchar *gdata_category_get_term (GDataCategory *self) G_GNUC_PURE;
void gdata_category_set_term (GDataCategory *self, const gchar *term);
-const gchar *gdata_category_get_scheme (GDataCategory *self);
+const gchar *gdata_category_get_scheme (GDataCategory *self) G_GNUC_PURE;
void gdata_category_set_scheme (GDataCategory *self, const gchar *scheme);
-const gchar *gdata_category_get_label (GDataCategory *self);
+const gchar *gdata_category_get_label (GDataCategory *self) G_GNUC_PURE;
void gdata_category_set_label (GDataCategory *self, const gchar *label);
G_END_DECLS
diff --git a/gdata/atom/gdata-generator.h b/gdata/atom/gdata-generator.h
index 892e327d..057abea7 100644
--- a/gdata/atom/gdata-generator.h
+++ b/gdata/atom/gdata-generator.h
@@ -60,11 +60,11 @@ typedef struct {
GType gdata_generator_get_type (void) G_GNUC_CONST;
-gint gdata_generator_compare (const GDataGenerator *a, const GDataGenerator *b);
+gint gdata_generator_compare (const GDataGenerator *a, const GDataGenerator *b) G_GNUC_PURE;
-const gchar *gdata_generator_get_name (GDataGenerator *self);
-const gchar *gdata_generator_get_uri (GDataGenerator *self);
-const gchar *gdata_generator_get_version (GDataGenerator *self);
+const gchar *gdata_generator_get_name (GDataGenerator *self) G_GNUC_PURE;
+const gchar *gdata_generator_get_uri (GDataGenerator *self) G_GNUC_PURE;
+const gchar *gdata_generator_get_version (GDataGenerator *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/atom/gdata-link.h b/gdata/atom/gdata-link.h
index 3036a21b..10df3ce7 100644
--- a/gdata/atom/gdata-link.h
+++ b/gdata/atom/gdata-link.h
@@ -146,24 +146,24 @@ typedef struct {
GType gdata_link_get_type (void) G_GNUC_CONST;
GDataLink *gdata_link_new (const gchar *uri, const gchar *relation_type) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_link_compare (const GDataLink *a, const GDataLink *b);
+gint gdata_link_compare (const GDataLink *a, const GDataLink *b) G_GNUC_PURE;
-const gchar *gdata_link_get_uri (GDataLink *self);
+const gchar *gdata_link_get_uri (GDataLink *self) G_GNUC_PURE;
void gdata_link_set_uri (GDataLink *self, const gchar *uri);
-const gchar *gdata_link_get_relation_type (GDataLink *self);
+const gchar *gdata_link_get_relation_type (GDataLink *self) G_GNUC_PURE;
void gdata_link_set_relation_type (GDataLink *self, const gchar *relation_type);
-const gchar *gdata_link_get_content_type (GDataLink *self);
+const gchar *gdata_link_get_content_type (GDataLink *self) G_GNUC_PURE;
void gdata_link_set_content_type (GDataLink *self, const gchar *content_type);
-const gchar *gdata_link_get_language (GDataLink *self);
+const gchar *gdata_link_get_language (GDataLink *self) G_GNUC_PURE;
void gdata_link_set_language (GDataLink *self, const gchar *language);
-const gchar *gdata_link_get_title (GDataLink *self);
+const gchar *gdata_link_get_title (GDataLink *self) G_GNUC_PURE;
void gdata_link_set_title (GDataLink *self, const gchar *title);
-gint gdata_link_get_length (GDataLink *self);
+gint gdata_link_get_length (GDataLink *self) G_GNUC_PURE;
void gdata_link_set_length (GDataLink *self, gint length);
G_END_DECLS
diff --git a/gdata/exif/gdata-exif-tags.h b/gdata/exif/gdata-exif-tags.h
index 23ddc99a..c64eac5b 100644
--- a/gdata/exif/gdata-exif-tags.h
+++ b/gdata/exif/gdata-exif-tags.h
@@ -62,15 +62,15 @@ typedef struct {
GType gdata_exif_tags_get_type (void) G_GNUC_CONST;
-gdouble gdata_exif_tags_get_distance (GDataExifTags *self);
-gdouble gdata_exif_tags_get_exposure (GDataExifTags *self);
-gboolean gdata_exif_tags_get_flash (GDataExifTags *self);
-gdouble gdata_exif_tags_get_focal_length (GDataExifTags *self);
-gdouble gdata_exif_tags_get_fstop (GDataExifTags *self);
-const gchar *gdata_exif_tags_get_image_unique_id (GDataExifTags *self);
-gint gdata_exif_tags_get_iso (GDataExifTags *self);
-const gchar *gdata_exif_tags_get_make (GDataExifTags *self);
-const gchar *gdata_exif_tags_get_model (GDataExifTags *self);
+gdouble gdata_exif_tags_get_distance (GDataExifTags *self) G_GNUC_PURE;
+gdouble gdata_exif_tags_get_exposure (GDataExifTags *self) G_GNUC_PURE;
+gboolean gdata_exif_tags_get_flash (GDataExifTags *self) G_GNUC_PURE;
+gdouble gdata_exif_tags_get_focal_length (GDataExifTags *self) G_GNUC_PURE;
+gdouble gdata_exif_tags_get_fstop (GDataExifTags *self) G_GNUC_PURE;
+const gchar *gdata_exif_tags_get_image_unique_id (GDataExifTags *self) G_GNUC_PURE;
+gint gdata_exif_tags_get_iso (GDataExifTags *self) G_GNUC_PURE;
+const gchar *gdata_exif_tags_get_make (GDataExifTags *self) G_GNUC_PURE;
+const gchar *gdata_exif_tags_get_model (GDataExifTags *self) G_GNUC_PURE;
void gdata_exif_tags_get_time (GDataExifTags *self, GTimeVal *time);
G_END_DECLS
diff --git a/gdata/gcontact/gdata-gcontact-calendar.h b/gdata/gcontact/gdata-gcontact-calendar.h
index 7eb37775..ac7caaa2 100644
--- a/gdata/gcontact/gdata-gcontact-calendar.h
+++ b/gdata/gcontact/gdata-gcontact-calendar.h
@@ -100,18 +100,18 @@ GType gdata_gcontact_calendar_get_type (void) G_GNUC_CONST;
GDataGContactCalendar *gdata_gcontact_calendar_new (const gchar *uri, const gchar *relation_type,
const gchar *label, gboolean is_primary) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gcontact_calendar_compare (const GDataGContactCalendar *a, const GDataGContactCalendar *b);
+gint gdata_gcontact_calendar_compare (const GDataGContactCalendar *a, const GDataGContactCalendar *b) G_GNUC_PURE;
-const gchar *gdata_gcontact_calendar_get_uri (GDataGContactCalendar *self);
+const gchar *gdata_gcontact_calendar_get_uri (GDataGContactCalendar *self) G_GNUC_PURE;
void gdata_gcontact_calendar_set_uri (GDataGContactCalendar *self, const gchar *uri);
-const gchar *gdata_gcontact_calendar_get_relation_type (GDataGContactCalendar *self);
+const gchar *gdata_gcontact_calendar_get_relation_type (GDataGContactCalendar *self) G_GNUC_PURE;
void gdata_gcontact_calendar_set_relation_type (GDataGContactCalendar *self, const gchar *relation_type);
-const gchar *gdata_gcontact_calendar_get_label (GDataGContactCalendar *self);
+const gchar *gdata_gcontact_calendar_get_label (GDataGContactCalendar *self) G_GNUC_PURE;
void gdata_gcontact_calendar_set_label (GDataGContactCalendar *self, const gchar *label);
-gboolean gdata_gcontact_calendar_is_primary (GDataGContactCalendar *self);
+gboolean gdata_gcontact_calendar_is_primary (GDataGContactCalendar *self) G_GNUC_PURE;
void gdata_gcontact_calendar_set_is_primary (GDataGContactCalendar *self, gboolean is_primary);
G_END_DECLS
diff --git a/gdata/gcontact/gdata-gcontact-event.h b/gdata/gcontact/gdata-gcontact-event.h
index bbe0a997..c8063b67 100644
--- a/gdata/gcontact/gdata-gcontact-event.h
+++ b/gdata/gcontact/gdata-gcontact-event.h
@@ -92,10 +92,10 @@ GDataGContactEvent *gdata_gcontact_event_new (const GDate *date, const gchar *re
void gdata_gcontact_event_get_date (GDataGContactEvent *self, GDate *date);
void gdata_gcontact_event_set_date (GDataGContactEvent *self, const GDate *date);
-const gchar *gdata_gcontact_event_get_relation_type (GDataGContactEvent *self);
+const gchar *gdata_gcontact_event_get_relation_type (GDataGContactEvent *self) G_GNUC_PURE;
void gdata_gcontact_event_set_relation_type (GDataGContactEvent *self, const gchar *relation_type);
-const gchar *gdata_gcontact_event_get_label (GDataGContactEvent *self);
+const gchar *gdata_gcontact_event_get_label (GDataGContactEvent *self) G_GNUC_PURE;
void gdata_gcontact_event_set_label (GDataGContactEvent *self, const gchar *label);
G_END_DECLS
diff --git a/gdata/gcontact/gdata-gcontact-external-id.h b/gdata/gcontact/gdata-gcontact-external-id.h
index 2da8bfca..7146f47a 100644
--- a/gdata/gcontact/gdata-gcontact-external-id.h
+++ b/gdata/gcontact/gdata-gcontact-external-id.h
@@ -112,15 +112,15 @@ GType gdata_gcontact_external_id_get_type (void) G_GNUC_CONST;
GDataGContactExternalID *gdata_gcontact_external_id_new (const gchar *value, const gchar *relation_type,
const gchar *label) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gcontact_external_id_compare (const GDataGContactExternalID *a, const GDataGContactExternalID *b);
+gint gdata_gcontact_external_id_compare (const GDataGContactExternalID *a, const GDataGContactExternalID *b) G_GNUC_PURE;
-const gchar *gdata_gcontact_external_id_get_value (GDataGContactExternalID *self);
+const gchar *gdata_gcontact_external_id_get_value (GDataGContactExternalID *self) G_GNUC_PURE;
void gdata_gcontact_external_id_set_value (GDataGContactExternalID *self, const gchar *value);
-const gchar *gdata_gcontact_external_id_get_relation_type (GDataGContactExternalID *self);
+const gchar *gdata_gcontact_external_id_get_relation_type (GDataGContactExternalID *self) G_GNUC_PURE;
void gdata_gcontact_external_id_set_relation_type (GDataGContactExternalID *self, const gchar *relation_type);
-const gchar *gdata_gcontact_external_id_get_label (GDataGContactExternalID *self);
+const gchar *gdata_gcontact_external_id_get_label (GDataGContactExternalID *self) G_GNUC_PURE;
void gdata_gcontact_external_id_set_label (GDataGContactExternalID *self, const gchar *label);
G_END_DECLS
diff --git a/gdata/gcontact/gdata-gcontact-jot.h b/gdata/gcontact/gdata-gcontact-jot.h
index 2eb89889..908ee864 100644
--- a/gdata/gcontact/gdata-gcontact-jot.h
+++ b/gdata/gcontact/gdata-gcontact-jot.h
@@ -124,10 +124,10 @@ GType gdata_gcontact_jot_get_type (void) G_GNUC_CONST;
GDataGContactJot *gdata_gcontact_jot_new (const gchar *content, const gchar *relation_type) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_gcontact_jot_get_content (GDataGContactJot *self);
+const gchar *gdata_gcontact_jot_get_content (GDataGContactJot *self) G_GNUC_PURE;
void gdata_gcontact_jot_set_content (GDataGContactJot *self, const gchar *content);
-const gchar *gdata_gcontact_jot_get_relation_type (GDataGContactJot *self);
+const gchar *gdata_gcontact_jot_get_relation_type (GDataGContactJot *self) G_GNUC_PURE;
void gdata_gcontact_jot_set_relation_type (GDataGContactJot *self, const gchar *relation_type);
G_END_DECLS
diff --git a/gdata/gcontact/gdata-gcontact-language.h b/gdata/gcontact/gdata-gcontact-language.h
index af2e0ff5..9995f52f 100644
--- a/gdata/gcontact/gdata-gcontact-language.h
+++ b/gdata/gcontact/gdata-gcontact-language.h
@@ -63,12 +63,12 @@ typedef struct {
GType gdata_gcontact_language_get_type (void) G_GNUC_CONST;
GDataGContactLanguage *gdata_gcontact_language_new (const gchar *code, const gchar *label) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gcontact_language_compare (const GDataGContactLanguage *a, const GDataGContactLanguage *b);
+gint gdata_gcontact_language_compare (const GDataGContactLanguage *a, const GDataGContactLanguage *b) G_GNUC_PURE;
-const gchar *gdata_gcontact_language_get_code (GDataGContactLanguage *self);
+const gchar *gdata_gcontact_language_get_code (GDataGContactLanguage *self) G_GNUC_PURE;
void gdata_gcontact_language_set_code (GDataGContactLanguage *self, const gchar *code);
-const gchar *gdata_gcontact_language_get_label (GDataGContactLanguage *self);
+const gchar *gdata_gcontact_language_get_label (GDataGContactLanguage *self) G_GNUC_PURE;
void gdata_gcontact_language_set_label (GDataGContactLanguage *self, const gchar *label);
G_END_DECLS
diff --git a/gdata/gcontact/gdata-gcontact-relation.h b/gdata/gcontact/gdata-gcontact-relation.h
index 73660f88..1c637a3d 100644
--- a/gdata/gcontact/gdata-gcontact-relation.h
+++ b/gdata/gcontact/gdata-gcontact-relation.h
@@ -233,13 +233,13 @@ GType gdata_gcontact_relation_get_type (void) G_GNUC_CONST;
GDataGContactRelation *gdata_gcontact_relation_new (const gchar *name, const gchar *relation_type,
const gchar *label) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_gcontact_relation_get_name (GDataGContactRelation *self);
+const gchar *gdata_gcontact_relation_get_name (GDataGContactRelation *self) G_GNUC_PURE;
void gdata_gcontact_relation_set_name (GDataGContactRelation *self, const gchar *name);
-const gchar *gdata_gcontact_relation_get_relation_type (GDataGContactRelation *self);
+const gchar *gdata_gcontact_relation_get_relation_type (GDataGContactRelation *self) G_GNUC_PURE;
void gdata_gcontact_relation_set_relation_type (GDataGContactRelation *self, const gchar *relation_type);
-const gchar *gdata_gcontact_relation_get_label (GDataGContactRelation *self);
+const gchar *gdata_gcontact_relation_get_label (GDataGContactRelation *self) G_GNUC_PURE;
void gdata_gcontact_relation_set_label (GDataGContactRelation *self, const gchar *label);
G_END_DECLS
diff --git a/gdata/gcontact/gdata-gcontact-website.h b/gdata/gcontact/gdata-gcontact-website.h
index 91bd5857..bfdc2257 100644
--- a/gdata/gcontact/gdata-gcontact-website.h
+++ b/gdata/gcontact/gdata-gcontact-website.h
@@ -148,18 +148,18 @@ GType gdata_gcontact_website_get_type (void) G_GNUC_CONST;
GDataGContactWebsite *gdata_gcontact_website_new (const gchar *uri, const gchar *relation_type,
const gchar *label, gboolean is_primary) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gcontact_website_compare (const GDataGContactWebsite *a, const GDataGContactWebsite *b);
+gint gdata_gcontact_website_compare (const GDataGContactWebsite *a, const GDataGContactWebsite *b) G_GNUC_PURE;
-const gchar *gdata_gcontact_website_get_uri (GDataGContactWebsite *self);
+const gchar *gdata_gcontact_website_get_uri (GDataGContactWebsite *self) G_GNUC_PURE;
void gdata_gcontact_website_set_uri (GDataGContactWebsite *self, const gchar *uri);
-const gchar *gdata_gcontact_website_get_relation_type (GDataGContactWebsite *self);
+const gchar *gdata_gcontact_website_get_relation_type (GDataGContactWebsite *self) G_GNUC_PURE;
void gdata_gcontact_website_set_relation_type (GDataGContactWebsite *self, const gchar *relation_type);
-const gchar *gdata_gcontact_website_get_label (GDataGContactWebsite *self);
+const gchar *gdata_gcontact_website_get_label (GDataGContactWebsite *self) G_GNUC_PURE;
void gdata_gcontact_website_set_label (GDataGContactWebsite *self, const gchar *label);
-gboolean gdata_gcontact_website_is_primary (GDataGContactWebsite *self);
+gboolean gdata_gcontact_website_is_primary (GDataGContactWebsite *self) G_GNUC_PURE;
void gdata_gcontact_website_set_is_primary (GDataGContactWebsite *self, gboolean is_primary);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-email-address.h b/gdata/gd/gdata-gd-email-address.h
index 7f853358..401f379f 100644
--- a/gdata/gd/gdata-gd-email-address.h
+++ b/gdata/gd/gdata-gd-email-address.h
@@ -91,21 +91,21 @@ GType gdata_gd_email_address_get_type (void) G_GNUC_CONST;
GDataGDEmailAddress *gdata_gd_email_address_new (const gchar *address, const gchar *relation_type,
const gchar *label, gboolean is_primary) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_email_address_compare (const GDataGDEmailAddress *a, const GDataGDEmailAddress *b);
+gint gdata_gd_email_address_compare (const GDataGDEmailAddress *a, const GDataGDEmailAddress *b) G_GNUC_PURE;
-const gchar *gdata_gd_email_address_get_address (GDataGDEmailAddress *self);
+const gchar *gdata_gd_email_address_get_address (GDataGDEmailAddress *self) G_GNUC_PURE;
void gdata_gd_email_address_set_address (GDataGDEmailAddress *self, const gchar *address);
-const gchar *gdata_gd_email_address_get_relation_type (GDataGDEmailAddress *self);
+const gchar *gdata_gd_email_address_get_relation_type (GDataGDEmailAddress *self) G_GNUC_PURE;
void gdata_gd_email_address_set_relation_type (GDataGDEmailAddress *self, const gchar *relation_type);
-const gchar *gdata_gd_email_address_get_label (GDataGDEmailAddress *self);
+const gchar *gdata_gd_email_address_get_label (GDataGDEmailAddress *self) G_GNUC_PURE;
void gdata_gd_email_address_set_label (GDataGDEmailAddress *self, const gchar *label);
-const gchar *gdata_gd_email_address_get_display_name (GDataGDEmailAddress *self);
+const gchar *gdata_gd_email_address_get_display_name (GDataGDEmailAddress *self) G_GNUC_PURE;
void gdata_gd_email_address_set_display_name (GDataGDEmailAddress *self, const gchar *display_name);
-gboolean gdata_gd_email_address_is_primary (GDataGDEmailAddress *self);
+gboolean gdata_gd_email_address_is_primary (GDataGDEmailAddress *self) G_GNUC_PURE;
void gdata_gd_email_address_set_is_primary (GDataGDEmailAddress *self, gboolean is_primary);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-im-address.h b/gdata/gd/gdata-gd-im-address.h
index 18aad264..b87485ef 100644
--- a/gdata/gd/gdata-gd-im-address.h
+++ b/gdata/gd/gdata-gd-im-address.h
@@ -172,21 +172,21 @@ GType gdata_gd_im_address_get_type (void) G_GNUC_CONST;
GDataGDIMAddress *gdata_gd_im_address_new (const gchar *address, const gchar *protocol, const gchar *relation_type, const gchar *label,
gboolean is_primary) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_im_address_compare (const GDataGDIMAddress *a, const GDataGDIMAddress *b);
+gint gdata_gd_im_address_compare (const GDataGDIMAddress *a, const GDataGDIMAddress *b) G_GNUC_PURE;
-const gchar *gdata_gd_im_address_get_address (GDataGDIMAddress *self);
+const gchar *gdata_gd_im_address_get_address (GDataGDIMAddress *self) G_GNUC_PURE;
void gdata_gd_im_address_set_address (GDataGDIMAddress *self, const gchar *address);
-const gchar *gdata_gd_im_address_get_protocol (GDataGDIMAddress *self);
+const gchar *gdata_gd_im_address_get_protocol (GDataGDIMAddress *self) G_GNUC_PURE;
void gdata_gd_im_address_set_protocol (GDataGDIMAddress *self, const gchar *protocol);
-const gchar *gdata_gd_im_address_get_relation_type (GDataGDIMAddress *self);
+const gchar *gdata_gd_im_address_get_relation_type (GDataGDIMAddress *self) G_GNUC_PURE;
void gdata_gd_im_address_set_relation_type (GDataGDIMAddress *self, const gchar *relation_type);
-const gchar *gdata_gd_im_address_get_label (GDataGDIMAddress *self);
+const gchar *gdata_gd_im_address_get_label (GDataGDIMAddress *self) G_GNUC_PURE;
void gdata_gd_im_address_set_label (GDataGDIMAddress *self, const gchar *label);
-gboolean gdata_gd_im_address_is_primary (GDataGDIMAddress *self);
+gboolean gdata_gd_im_address_is_primary (GDataGDIMAddress *self) G_GNUC_PURE;
void gdata_gd_im_address_set_is_primary (GDataGDIMAddress *self, gboolean is_primary);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-name.h b/gdata/gd/gdata-gd-name.h
index 99cdec86..f54c08cd 100644
--- a/gdata/gd/gdata-gd-name.h
+++ b/gdata/gd/gdata-gd-name.h
@@ -63,24 +63,24 @@ typedef struct {
GType gdata_gd_name_get_type (void) G_GNUC_CONST;
GDataGDName *gdata_gd_name_new (const gchar *given_name, const gchar *family_name) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_name_compare (const GDataGDName *a, const GDataGDName *b);
+gint gdata_gd_name_compare (const GDataGDName *a, const GDataGDName *b) G_GNUC_PURE;
-const gchar *gdata_gd_name_get_given_name (GDataGDName *self);
+const gchar *gdata_gd_name_get_given_name (GDataGDName *self) G_GNUC_PURE;
void gdata_gd_name_set_given_name (GDataGDName *self, const gchar *given_name);
-const gchar *gdata_gd_name_get_additional_name (GDataGDName *self);
+const gchar *gdata_gd_name_get_additional_name (GDataGDName *self) G_GNUC_PURE;
void gdata_gd_name_set_additional_name (GDataGDName *self, const gchar *additional_name);
-const gchar *gdata_gd_name_get_family_name (GDataGDName *self);
+const gchar *gdata_gd_name_get_family_name (GDataGDName *self) G_GNUC_PURE;
void gdata_gd_name_set_family_name (GDataGDName *self, const gchar *family_name);
-const gchar *gdata_gd_name_get_prefix (GDataGDName *self);
+const gchar *gdata_gd_name_get_prefix (GDataGDName *self) G_GNUC_PURE;
void gdata_gd_name_set_prefix (GDataGDName *self, const gchar *prefix);
-const gchar *gdata_gd_name_get_suffix (GDataGDName *self);
+const gchar *gdata_gd_name_get_suffix (GDataGDName *self) G_GNUC_PURE;
void gdata_gd_name_set_suffix (GDataGDName *self, const gchar *suffix);
-const gchar *gdata_gd_name_get_full_name (GDataGDName *self);
+const gchar *gdata_gd_name_get_full_name (GDataGDName *self) G_GNUC_PURE;
void gdata_gd_name_set_full_name (GDataGDName *self, const gchar *full_name);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-organization.h b/gdata/gd/gdata-gd-organization.h
index aa0e9538..17072453 100644
--- a/gdata/gd/gdata-gd-organization.h
+++ b/gdata/gd/gdata-gd-organization.h
@@ -83,33 +83,33 @@ GType gdata_gd_organization_get_type (void) G_GNUC_CONST;
GDataGDOrganization *gdata_gd_organization_new (const gchar *name, const gchar *title, const gchar *relation_type,
const gchar *label, gboolean is_primary) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_organization_compare (const GDataGDOrganization *a, const GDataGDOrganization *b);
+gint gdata_gd_organization_compare (const GDataGDOrganization *a, const GDataGDOrganization *b) G_GNUC_PURE;
-const gchar *gdata_gd_organization_get_name (GDataGDOrganization *self);
+const gchar *gdata_gd_organization_get_name (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_name (GDataGDOrganization *self, const gchar *name);
-const gchar *gdata_gd_organization_get_title (GDataGDOrganization *self);
+const gchar *gdata_gd_organization_get_title (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_title (GDataGDOrganization *self, const gchar *title);
-const gchar *gdata_gd_organization_get_relation_type (GDataGDOrganization *self);
+const gchar *gdata_gd_organization_get_relation_type (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_relation_type (GDataGDOrganization *self, const gchar *relation_type);
-const gchar *gdata_gd_organization_get_label (GDataGDOrganization *self);
+const gchar *gdata_gd_organization_get_label (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_label (GDataGDOrganization *self, const gchar *label);
-gboolean gdata_gd_organization_is_primary (GDataGDOrganization *self);
+gboolean gdata_gd_organization_is_primary (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_is_primary (GDataGDOrganization *self, gboolean is_primary);
-const gchar *gdata_gd_organization_get_department (GDataGDOrganization *self);
+const gchar *gdata_gd_organization_get_department (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_department (GDataGDOrganization *self, const gchar *department);
-const gchar *gdata_gd_organization_get_job_description (GDataGDOrganization *self);
+const gchar *gdata_gd_organization_get_job_description (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_job_description (GDataGDOrganization *self, const gchar *job_description);
-const gchar *gdata_gd_organization_get_symbol (GDataGDOrganization *self);
+const gchar *gdata_gd_organization_get_symbol (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_symbol (GDataGDOrganization *self, const gchar *symbol);
-GDataGDWhere *gdata_gd_organization_get_location (GDataGDOrganization *self);
+GDataGDWhere *gdata_gd_organization_get_location (GDataGDOrganization *self) G_GNUC_PURE;
void gdata_gd_organization_set_location (GDataGDOrganization *self, GDataGDWhere *location);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-phone-number.h b/gdata/gd/gdata-gd-phone-number.h
index e4c47f94..ae786bdc 100644
--- a/gdata/gd/gdata-gd-phone-number.h
+++ b/gdata/gd/gdata-gd-phone-number.h
@@ -246,19 +246,19 @@ GDataGDPhoneNumber *gdata_gd_phone_number_new (const gchar *number, const gchar
gboolean is_primary) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
gint gdata_gd_phone_number_compare (const GDataGDPhoneNumber *a, const GDataGDPhoneNumber *b);
-const gchar *gdata_gd_phone_number_get_number (GDataGDPhoneNumber *self);
+const gchar *gdata_gd_phone_number_get_number (GDataGDPhoneNumber *self) G_GNUC_PURE;
void gdata_gd_phone_number_set_number (GDataGDPhoneNumber *self, const gchar *number);
-const gchar *gdata_gd_phone_number_get_uri (GDataGDPhoneNumber *self);
+const gchar *gdata_gd_phone_number_get_uri (GDataGDPhoneNumber *self) G_GNUC_PURE;
void gdata_gd_phone_number_set_uri (GDataGDPhoneNumber *self, const gchar *uri);
-const gchar *gdata_gd_phone_number_get_relation_type (GDataGDPhoneNumber *self);
+const gchar *gdata_gd_phone_number_get_relation_type (GDataGDPhoneNumber *self) G_GNUC_PURE;
void gdata_gd_phone_number_set_relation_type (GDataGDPhoneNumber *self, const gchar *relation_type);
-const gchar *gdata_gd_phone_number_get_label (GDataGDPhoneNumber *self);
+const gchar *gdata_gd_phone_number_get_label (GDataGDPhoneNumber *self) G_GNUC_PURE;
void gdata_gd_phone_number_set_label (GDataGDPhoneNumber *self, const gchar *label);
-gboolean gdata_gd_phone_number_is_primary (GDataGDPhoneNumber *self);
+gboolean gdata_gd_phone_number_is_primary (GDataGDPhoneNumber *self) G_GNUC_PURE;
void gdata_gd_phone_number_set_is_primary (GDataGDPhoneNumber *self, gboolean is_primary);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-postal-address.h b/gdata/gd/gdata-gd-postal-address.h
index 93d3b900..47394616 100644
--- a/gdata/gd/gdata-gd-postal-address.h
+++ b/gdata/gd/gdata-gd-postal-address.h
@@ -145,55 +145,55 @@ GType gdata_gd_postal_address_get_type (void) G_GNUC_CONST;
GDataGDPostalAddress *gdata_gd_postal_address_new (const gchar *relation_type, const gchar *label,
gboolean is_primary) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_postal_address_compare (const GDataGDPostalAddress *a, const GDataGDPostalAddress *b);
+gint gdata_gd_postal_address_compare (const GDataGDPostalAddress *a, const GDataGDPostalAddress *b) G_GNUC_PURE;
-const gchar *gdata_gd_postal_address_get_address (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_address (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_address (GDataGDPostalAddress *self, const gchar *address);
-const gchar *gdata_gd_postal_address_get_relation_type (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_relation_type (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_relation_type (GDataGDPostalAddress *self, const gchar *relation_type);
-const gchar *gdata_gd_postal_address_get_label (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_label (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_label (GDataGDPostalAddress *self, const gchar *label);
-gboolean gdata_gd_postal_address_is_primary (GDataGDPostalAddress *self);
+gboolean gdata_gd_postal_address_is_primary (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_is_primary (GDataGDPostalAddress *self, gboolean is_primary);
-const gchar *gdata_gd_postal_address_get_mail_class (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_mail_class (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_mail_class (GDataGDPostalAddress *self, const gchar *mail_class);
-const gchar *gdata_gd_postal_address_get_usage (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_usage (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_usage (GDataGDPostalAddress *self, const gchar *usage);
-const gchar *gdata_gd_postal_address_get_agent (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_agent (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_agent (GDataGDPostalAddress *self, const gchar *agent);
-const gchar *gdata_gd_postal_address_get_house_name (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_house_name (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_house_name (GDataGDPostalAddress *self, const gchar *house_name);
-const gchar *gdata_gd_postal_address_get_street (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_street (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_street (GDataGDPostalAddress *self, const gchar *street);
-const gchar *gdata_gd_postal_address_get_po_box (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_po_box (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_po_box (GDataGDPostalAddress *self, const gchar *po_box);
-const gchar *gdata_gd_postal_address_get_neighborhood (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_neighborhood (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_neighborhood (GDataGDPostalAddress *self, const gchar *neighborhood);
-const gchar *gdata_gd_postal_address_get_city (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_city (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_city (GDataGDPostalAddress *self, const gchar *city);
-const gchar *gdata_gd_postal_address_get_subregion (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_subregion (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_subregion (GDataGDPostalAddress *self, const gchar *subregion);
-const gchar *gdata_gd_postal_address_get_region (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_region (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_region (GDataGDPostalAddress *self, const gchar *region);
-const gchar *gdata_gd_postal_address_get_postcode (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_postcode (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_postcode (GDataGDPostalAddress *self, const gchar *postcode);
-const gchar *gdata_gd_postal_address_get_country (GDataGDPostalAddress *self);
-const gchar *gdata_gd_postal_address_get_country_code (GDataGDPostalAddress *self);
+const gchar *gdata_gd_postal_address_get_country (GDataGDPostalAddress *self) G_GNUC_PURE;
+const gchar *gdata_gd_postal_address_get_country_code (GDataGDPostalAddress *self) G_GNUC_PURE;
void gdata_gd_postal_address_set_country (GDataGDPostalAddress *self, const gchar *country, const gchar *country_code);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-reminder.h b/gdata/gd/gdata-gd-reminder.h
index 42921634..e9af456b 100644
--- a/gdata/gd/gdata-gd-reminder.h
+++ b/gdata/gd/gdata-gd-reminder.h
@@ -91,16 +91,16 @@ GType gdata_gd_reminder_get_type (void) G_GNUC_CONST;
GDataGDReminder *gdata_gd_reminder_new (const gchar *method, const GTimeVal *absolute_time,
gint relative_time) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_reminder_compare (const GDataGDReminder *a, const GDataGDReminder *b);
+gint gdata_gd_reminder_compare (const GDataGDReminder *a, const GDataGDReminder *b) G_GNUC_PURE;
-const gchar *gdata_gd_reminder_get_method (GDataGDReminder *self);
+const gchar *gdata_gd_reminder_get_method (GDataGDReminder *self) G_GNUC_PURE;
void gdata_gd_reminder_set_method (GDataGDReminder *self, const gchar *method);
void gdata_gd_reminder_get_absolute_time (GDataGDReminder *self, GTimeVal *absolute_time);
void gdata_gd_reminder_set_absolute_time (GDataGDReminder *self, const GTimeVal *absolute_time);
gboolean gdata_gd_reminder_is_absolute_time (GDataGDReminder *self);
-gint gdata_gd_reminder_get_relative_time (GDataGDReminder *self);
+gint gdata_gd_reminder_get_relative_time (GDataGDReminder *self) G_GNUC_PURE;
void gdata_gd_reminder_set_relative_time (GDataGDReminder *self, gint relative_time);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-when.h b/gdata/gd/gdata-gd-when.h
index 596759ea..2c73fb67 100644
--- a/gdata/gd/gdata-gd-when.h
+++ b/gdata/gd/gdata-gd-when.h
@@ -145,7 +145,7 @@ typedef struct {
GType gdata_gd_when_get_type (void) G_GNUC_CONST;
GDataGDWhen *gdata_gd_when_new (const GTimeVal *start_time, const GTimeVal *end_time, gboolean is_date) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_when_compare (const GDataGDWhen *a, const GDataGDWhen *b);
+gint gdata_gd_when_compare (const GDataGDWhen *a, const GDataGDWhen *b) G_GNUC_PURE;
void gdata_gd_when_get_start_time (GDataGDWhen *self, GTimeVal *start_time);
void gdata_gd_when_set_start_time (GDataGDWhen *self, const GTimeVal *start_time);
@@ -153,13 +153,13 @@ void gdata_gd_when_set_start_time (GDataGDWhen *self, const GTimeVal *start_time
void gdata_gd_when_get_end_time (GDataGDWhen *self, GTimeVal *end_time);
void gdata_gd_when_set_end_time (GDataGDWhen *self, const GTimeVal *end_time);
-gboolean gdata_gd_when_is_date (GDataGDWhen *self);
+gboolean gdata_gd_when_is_date (GDataGDWhen *self) G_GNUC_PURE;
void gdata_gd_when_set_is_date (GDataGDWhen *self, gboolean is_date);
-const gchar *gdata_gd_when_get_value_string (GDataGDWhen *self);
+const gchar *gdata_gd_when_get_value_string (GDataGDWhen *self) G_GNUC_PURE;
void gdata_gd_when_set_value_string (GDataGDWhen *self, const gchar *value_string);
-GList *gdata_gd_when_get_reminders (GDataGDWhen *self);
+GList *gdata_gd_when_get_reminders (GDataGDWhen *self) G_GNUC_PURE;
void gdata_gd_when_add_reminder (GDataGDWhen *self, GDataGDReminder *reminder);
/* TODO: More reminder API */
diff --git a/gdata/gd/gdata-gd-where.h b/gdata/gd/gdata-gd-where.h
index 622bbc43..187f3280 100644
--- a/gdata/gd/gdata-gd-where.h
+++ b/gdata/gd/gdata-gd-where.h
@@ -90,15 +90,15 @@ typedef struct {
GType gdata_gd_where_get_type (void) G_GNUC_CONST;
GDataGDWhere *gdata_gd_where_new (const gchar *relation_type, const gchar *value_string, const gchar *label) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_where_compare (const GDataGDWhere *a, const GDataGDWhere *b);
+gint gdata_gd_where_compare (const GDataGDWhere *a, const GDataGDWhere *b) G_GNUC_PURE;
-const gchar *gdata_gd_where_get_relation_type (GDataGDWhere *self);
+const gchar *gdata_gd_where_get_relation_type (GDataGDWhere *self) G_GNUC_PURE;
void gdata_gd_where_set_relation_type (GDataGDWhere *self, const gchar *relation_type);
-const gchar *gdata_gd_where_get_value_string (GDataGDWhere *self);
+const gchar *gdata_gd_where_get_value_string (GDataGDWhere *self) G_GNUC_PURE;
void gdata_gd_where_set_value_string (GDataGDWhere *self, const gchar *value_string);
-const gchar *gdata_gd_where_get_label (GDataGDWhere *self);
+const gchar *gdata_gd_where_get_label (GDataGDWhere *self) G_GNUC_PURE;
void gdata_gd_where_set_label (GDataGDWhere *self, const gchar *label);
G_END_DECLS
diff --git a/gdata/gd/gdata-gd-who.h b/gdata/gd/gdata-gd-who.h
index 070bc795..1d1322c2 100644
--- a/gdata/gd/gdata-gd-who.h
+++ b/gdata/gd/gdata-gd-who.h
@@ -102,15 +102,15 @@ GType gdata_gd_who_get_type (void) G_GNUC_CONST;
GDataGDWho *gdata_gd_who_new (const gchar *relation_type, const gchar *value_string,
const gchar *email_address) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gint gdata_gd_who_compare (const GDataGDWho *a, const GDataGDWho *b);
+gint gdata_gd_who_compare (const GDataGDWho *a, const GDataGDWho *b) G_GNUC_PURE;
-const gchar *gdata_gd_who_get_relation_type (GDataGDWho *self);
+const gchar *gdata_gd_who_get_relation_type (GDataGDWho *self) G_GNUC_PURE;
void gdata_gd_who_set_relation_type (GDataGDWho *self, const gchar *relation_type);
-const gchar *gdata_gd_who_get_value_string (GDataGDWho *self);
+const gchar *gdata_gd_who_get_value_string (GDataGDWho *self) G_GNUC_PURE;
void gdata_gd_who_set_value_string (GDataGDWho *self, const gchar *value_string);
-const gchar *gdata_gd_who_get_email_address (GDataGDWho *self);
+const gchar *gdata_gd_who_get_email_address (GDataGDWho *self) G_GNUC_PURE;
void gdata_gd_who_set_email_address (GDataGDWho *self, const gchar *email_address);
G_END_DECLS
diff --git a/gdata/gdata-access-rule.h b/gdata/gdata-access-rule.h
index f27c8fa3..0725406c 100644
--- a/gdata/gdata-access-rule.h
+++ b/gdata/gdata-access-rule.h
@@ -101,7 +101,7 @@ GType gdata_access_rule_get_type (void) G_GNUC_CONST;
GDataAccessRule *gdata_access_rule_new (const gchar *id) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_access_rule_get_role (GDataAccessRule *self);
+const gchar *gdata_access_rule_get_role (GDataAccessRule *self) G_GNUC_PURE;
void gdata_access_rule_set_role (GDataAccessRule *self, const gchar *role);
void gdata_access_rule_get_scope (GDataAccessRule *self, const gchar **type, const gchar **value);
void gdata_access_rule_set_scope (GDataAccessRule *self, const gchar *type, const gchar *value);
diff --git a/gdata/gdata-download-stream.h b/gdata/gdata-download-stream.h
index 9a220d35..16018583 100644
--- a/gdata/gdata-download-stream.h
+++ b/gdata/gdata-download-stream.h
@@ -65,10 +65,10 @@ GType gdata_download_stream_get_type (void) G_GNUC_CONST;
GInputStream *gdata_download_stream_new (GDataService *service, const gchar *download_uri) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-GDataService *gdata_download_stream_get_service (GDataDownloadStream *self);
-const gchar *gdata_download_stream_get_download_uri (GDataDownloadStream *self);
-const gchar *gdata_download_stream_get_content_type (GDataDownloadStream *self);
-gssize gdata_download_stream_get_content_length (GDataDownloadStream *self);
+GDataService *gdata_download_stream_get_service (GDataDownloadStream *self) G_GNUC_PURE;
+const gchar *gdata_download_stream_get_download_uri (GDataDownloadStream *self) G_GNUC_PURE;
+const gchar *gdata_download_stream_get_content_type (GDataDownloadStream *self) G_GNUC_PURE;
+gssize gdata_download_stream_get_content_length (GDataDownloadStream *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/gdata-entry.h b/gdata/gdata-entry.h
index df8f30e6..212f070c 100644
--- a/gdata/gdata-entry.h
+++ b/gdata/gdata-entry.h
@@ -66,26 +66,26 @@ GType gdata_entry_get_type (void) G_GNUC_CONST;
GDataEntry *gdata_entry_new (const gchar *id) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_entry_get_title (GDataEntry *self);
+const gchar *gdata_entry_get_title (GDataEntry *self) G_GNUC_PURE;
void gdata_entry_set_title (GDataEntry *self, const gchar *title);
-const gchar *gdata_entry_get_summary (GDataEntry *self);
+const gchar *gdata_entry_get_summary (GDataEntry *self) G_GNUC_PURE;
void gdata_entry_set_summary (GDataEntry *self, const gchar *summary);
-const gchar *gdata_entry_get_id (GDataEntry *self);
-const gchar *gdata_entry_get_etag (GDataEntry *self);
+const gchar *gdata_entry_get_id (GDataEntry *self) G_GNUC_PURE;
+const gchar *gdata_entry_get_etag (GDataEntry *self) G_GNUC_PURE;
void gdata_entry_get_updated (GDataEntry *self, GTimeVal *updated);
void gdata_entry_get_published (GDataEntry *self, GTimeVal *published);
void gdata_entry_add_category (GDataEntry *self, GDataCategory *category);
-GList *gdata_entry_get_categories (GDataEntry *self);
-const gchar *gdata_entry_get_content (GDataEntry *self);
+GList *gdata_entry_get_categories (GDataEntry *self) G_GNUC_PURE;
+const gchar *gdata_entry_get_content (GDataEntry *self) G_GNUC_PURE;
void gdata_entry_set_content (GDataEntry *self, const gchar *content);
void gdata_entry_add_link (GDataEntry *self, GDataLink *link);
-GDataLink *gdata_entry_look_up_link (GDataEntry *self, const gchar *rel);
-GList *gdata_entry_look_up_links (GDataEntry *self, const gchar *rel);
+GDataLink *gdata_entry_look_up_link (GDataEntry *self, const gchar *rel) G_GNUC_PURE;
+GList *gdata_entry_look_up_links (GDataEntry *self, const gchar *rel) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
void gdata_entry_add_author (GDataEntry *self, GDataAuthor *author);
-const gchar *gdata_entry_get_rights (GDataEntry *self);
+const gchar *gdata_entry_get_rights (GDataEntry *self) G_GNUC_PURE;
void gdata_entry_set_rights (GDataEntry *self, const gchar *rights);
-gboolean gdata_entry_is_inserted (GDataEntry *self);
+gboolean gdata_entry_is_inserted (GDataEntry *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/gdata-feed.h b/gdata/gdata-feed.h
index 05c8692f..3b6e9cd3 100644
--- a/gdata/gdata-feed.h
+++ b/gdata/gdata-feed.h
@@ -62,25 +62,25 @@ typedef struct {
GType gdata_feed_get_type (void) G_GNUC_CONST;
-GList *gdata_feed_get_entries (GDataFeed *self);
-GDataEntry *gdata_feed_look_up_entry (GDataFeed *self, const gchar *id);
-GList *gdata_feed_get_categories (GDataFeed *self);
-GList *gdata_feed_get_links (GDataFeed *self);
-GDataLink *gdata_feed_look_up_link (GDataFeed *self, const gchar *rel);
-GList *gdata_feed_get_authors (GDataFeed *self);
+GList *gdata_feed_get_entries (GDataFeed *self) G_GNUC_PURE;
+GDataEntry *gdata_feed_look_up_entry (GDataFeed *self, const gchar *id) G_GNUC_PURE;
+GList *gdata_feed_get_categories (GDataFeed *self) G_GNUC_PURE;
+GList *gdata_feed_get_links (GDataFeed *self) G_GNUC_PURE;
+GDataLink *gdata_feed_look_up_link (GDataFeed *self, const gchar *rel) G_GNUC_PURE;
+GList *gdata_feed_get_authors (GDataFeed *self) G_GNUC_PURE;
-const gchar *gdata_feed_get_title (GDataFeed *self);
-const gchar *gdata_feed_get_subtitle (GDataFeed *self);
-const gchar *gdata_feed_get_id (GDataFeed *self);
-const gchar *gdata_feed_get_etag (GDataFeed *self);
+const gchar *gdata_feed_get_title (GDataFeed *self) G_GNUC_PURE;
+const gchar *gdata_feed_get_subtitle (GDataFeed *self) G_GNUC_PURE;
+const gchar *gdata_feed_get_id (GDataFeed *self) G_GNUC_PURE;
+const gchar *gdata_feed_get_etag (GDataFeed *self) G_GNUC_PURE;
void gdata_feed_get_updated (GDataFeed *self, GTimeVal *updated);
-const gchar *gdata_feed_get_logo (GDataFeed *self);
-GDataGenerator *gdata_feed_get_generator (GDataFeed *self);
-const gchar *gdata_feed_get_rights (GDataFeed *self);
-guint gdata_feed_get_items_per_page (GDataFeed *self);
-guint gdata_feed_get_start_index (GDataFeed *self);
-guint gdata_feed_get_total_results (GDataFeed *self);
-const gchar *gdata_feed_get_icon (GDataFeed *self);
+const gchar *gdata_feed_get_logo (GDataFeed *self) G_GNUC_PURE;
+GDataGenerator *gdata_feed_get_generator (GDataFeed *self) G_GNUC_PURE;
+const gchar *gdata_feed_get_rights (GDataFeed *self) G_GNUC_PURE;
+guint gdata_feed_get_items_per_page (GDataFeed *self) G_GNUC_PURE;
+guint gdata_feed_get_start_index (GDataFeed *self) G_GNUC_PURE;
+guint gdata_feed_get_total_results (GDataFeed *self) G_GNUC_PURE;
+const gchar *gdata_feed_get_icon (GDataFeed *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/gdata-private.h b/gdata/gdata-private.h
index 71d825ae..2e6fb291 100644
--- a/gdata/gdata-private.h
+++ b/gdata/gdata-private.h
@@ -45,14 +45,14 @@ typedef enum {
} GDataLogLevel;
#include "gdata-service.h"
-SoupSession *_gdata_service_get_session (GDataService *self);
+SoupSession *_gdata_service_get_session (GDataService *self) G_GNUC_PURE;
void _gdata_service_set_authenticated (GDataService *self, gboolean authenticated);
SoupMessage *_gdata_service_build_message (GDataService *self, const gchar *method, const gchar *uri, const gchar *etag, gboolean etag_if_match);
guint _gdata_service_send_message (GDataService *self, SoupMessage *message, GCancellable *cancellable, GError **error);
SoupMessage *_gdata_service_query (GDataService *self, const gchar *feed_uri, GDataQuery *query, GCancellable *cancellable,
GError **error) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *_gdata_service_get_scheme (void);
-GDataLogLevel _gdata_service_get_log_level (void);
+const gchar *_gdata_service_get_scheme (void) G_GNUC_CONST;
+GDataLogLevel _gdata_service_get_log_level (void) G_GNUC_CONST;
#include "gdata-query.h"
void _gdata_query_set_next_uri (GDataQuery *self, const gchar *next_uri);
@@ -71,7 +71,7 @@ GDataFeed *_gdata_feed_new_from_xml (GType feed_type, const gchar *xml, gint len
GDataQueryProgressCallback progress_callback, gpointer progress_user_data,
GError **error) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
void _gdata_feed_add_entry (GDataFeed *self, GDataEntry *entry);
-gpointer _gdata_feed_parse_data_new(GType entry_type, GDataQueryProgressCallback progress_callback, gpointer progress_user_data);
+gpointer _gdata_feed_parse_data_new (GType entry_type, GDataQueryProgressCallback progress_callback, gpointer progress_user_data);
void _gdata_feed_parse_data_free (gpointer data);
void _gdata_feed_call_progress_callback (GDataFeed *self, gpointer user_data, GDataEntry *entry);
@@ -83,7 +83,7 @@ void _gdata_documents_entry_init_edited (GDataDocumentsEntry *self);
#include "gdata/services/documents/gdata-documents-service.h"
-GDataService *_gdata_documents_service_get_spreadsheet_service (GDataDocumentsService *self);
+GDataService *_gdata_documents_service_get_spreadsheet_service (GDataDocumentsService *self) G_GNUC_PURE;
#include "gdata-parser.h"
diff --git a/gdata/gdata-query.h b/gdata/gdata-query.h
index 18be9554..858c2db6 100644
--- a/gdata/gdata-query.h
+++ b/gdata/gdata-query.h
@@ -65,11 +65,11 @@ gchar *gdata_query_get_query_uri (GDataQuery *self, const gchar *feed_uri) G_GNU
void gdata_query_next_page (GDataQuery *self);
gboolean gdata_query_previous_page (GDataQuery *self);
-const gchar *gdata_query_get_q (GDataQuery *self);
+const gchar *gdata_query_get_q (GDataQuery *self) G_GNUC_PURE;
void gdata_query_set_q (GDataQuery *self, const gchar *q);
-const gchar *gdata_query_get_categories (GDataQuery *self);
+const gchar *gdata_query_get_categories (GDataQuery *self) G_GNUC_PURE;
void gdata_query_set_categories (GDataQuery *self, const gchar *categories);
-const gchar *gdata_query_get_author (GDataQuery *self);
+const gchar *gdata_query_get_author (GDataQuery *self) G_GNUC_PURE;
void gdata_query_set_author (GDataQuery *self, const gchar *author);
void gdata_query_get_updated_min (GDataQuery *self, GTimeVal *updated_min);
void gdata_query_set_updated_min (GDataQuery *self, const GTimeVal *updated_min);
@@ -79,13 +79,13 @@ void gdata_query_get_published_min (GDataQuery *self, GTimeVal *published_min);
void gdata_query_set_published_min (GDataQuery *self, const GTimeVal *published_min);
void gdata_query_get_published_max (GDataQuery *self, GTimeVal *published_max);
void gdata_query_set_published_max (GDataQuery *self, const GTimeVal *published_max);
-guint gdata_query_get_start_index (GDataQuery *self);
+guint gdata_query_get_start_index (GDataQuery *self) G_GNUC_PURE;
void gdata_query_set_start_index (GDataQuery *self, guint start_index);
-gboolean gdata_query_is_strict (GDataQuery *self);
+gboolean gdata_query_is_strict (GDataQuery *self) G_GNUC_PURE;
void gdata_query_set_is_strict (GDataQuery *self, gboolean is_strict);
-guint gdata_query_get_max_results (GDataQuery *self);
+guint gdata_query_get_max_results (GDataQuery *self) G_GNUC_PURE;
void gdata_query_set_max_results (GDataQuery *self, guint max_results);
-const gchar *gdata_query_get_etag (GDataQuery *self);
+const gchar *gdata_query_get_etag (GDataQuery *self) G_GNUC_PURE;
void gdata_query_set_etag (GDataQuery *self, const gchar *etag);
G_END_DECLS
diff --git a/gdata/gdata-service.c b/gdata/gdata-service.c
index bca00f08..dd40f9ad 100644
--- a/gdata/gdata-service.c
+++ b/gdata/gdata-service.c
@@ -478,153 +478,34 @@ real_parse_error_response (GDataService *self, GDataOperationType operation_type
}
}
-typedef struct {
- /* Input */
- gchar *username;
- gchar *password;
-
- /* Output */
- GDataService *service;
- gboolean success;
-} AuthenticateAsyncData;
-
static void
-authenticate_async_data_free (AuthenticateAsyncData *self)
-{
- g_free (self->username);
- g_free (self->password);
- if (self->service != NULL)
- g_object_unref (self->service);
-
- g_slice_free (AuthenticateAsyncData, self);
-}
-
-static gboolean
-set_authentication_details_cb (AuthenticateAsyncData *data)
+set_authentication_details (GDataService *self, const gchar *username, const gchar *password, gboolean authenticated)
{
- GObject *service = G_OBJECT (data->service);
- GDataServicePrivate *priv = data->service->priv;
-
- g_free (priv->username);
- /* Ensure the username is always a full e-mail address */
- if (strchr (data->username, '@') == NULL)
- priv->username = g_strdup_printf ("%s@" EMAIL_DOMAIN, data->username);
- else
- priv->username = g_strdup (data->username);
-
- g_free (priv->password);
- priv->password = g_strdup (data->password);
- priv->authenticated = TRUE;
+ GObject *service = G_OBJECT (self);
+ GDataServicePrivate *priv = self->priv;
g_object_freeze_notify (service);
- g_object_notify (service, "username");
- g_object_notify (service, "password");
- g_object_notify (service, "authenticated");
- g_object_thaw_notify (service);
+ priv->authenticated = authenticated;
- authenticate_async_data_free (data);
-
- return FALSE;
-}
+ if (authenticated == TRUE) {
+ /* Update several properties the service holds */
+ g_free (priv->username);
-static void
-authenticate_thread (GSimpleAsyncResult *result, GDataService *service, GCancellable *cancellable)
-{
- GError *error = NULL;
- AuthenticateAsyncData *data = g_simple_async_result_get_op_res_gpointer (result);
+ /* Ensure the username is always a full e-mail address */
+ if (strchr (username, '@') == NULL)
+ priv->username = g_strdup_printf ("%s@" EMAIL_DOMAIN, username);
+ else
+ priv->username = g_strdup (username);
- /* Check to see if it's been cancelled already */
- if (g_cancellable_set_error_if_cancelled (cancellable, &error) == TRUE) {
- g_simple_async_result_set_from_error (result, error);
- g_error_free (error);
- authenticate_async_data_free (data);
- return;
- }
+ g_free (priv->password);
+ priv->password = g_strdup (password);
- /* Authenticate and return */
- data->success = gdata_service_authenticate (service, data->username, data->password, cancellable, &error);
- if (data->success == FALSE) {
- g_simple_async_result_set_from_error (result, error);
- g_error_free (error);
- authenticate_async_data_free (data);
- return;
+ g_object_notify (service, "username");
+ g_object_notify (service, "password");
}
- /* Update the authentication details held by the service */
- data->service = g_object_ref (service);
- g_idle_add ((GSourceFunc) set_authentication_details_cb, data);
-}
-
-/**
- * gdata_service_authenticate_async:
- * @self: a #GDataService
- * @username: the user's username
- * @password: the user's password
- * @cancellable: optional #GCancellable object, or %NULL
- * @callback: a #GAsyncReadyCallback to call when authentication is finished
- * @user_data: data to pass to the @callback function
- *
- * Authenticates the #GDataService with the online service using the given @username and @password. @self, @username and
- * @password are all reffed/copied when this function is called, so can safely be freed after this function returns.
- *
- * For more details, see gdata_service_authenticate(), which is the synchronous version of this function.
- *
- * When the operation is finished, @callback will be called. You can then call gdata_service_authenticate_finish()
- * to get the results of the operation.
- **/
-void
-gdata_service_authenticate_async (GDataService *self, const gchar *username, const gchar *password,
- GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data)
-{
- GSimpleAsyncResult *result;
- AuthenticateAsyncData *data;
-
- g_return_if_fail (GDATA_IS_SERVICE (self));
- g_return_if_fail (username != NULL);
- g_return_if_fail (password != NULL);
- g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable));
-
- data = g_slice_new (AuthenticateAsyncData);
- data->username = g_strdup (username);
- data->password = g_strdup (password);
- data->service = NULL; /* set in authenticate_thread() */
-
- result = g_simple_async_result_new (G_OBJECT (self), callback, user_data, gdata_service_authenticate_async);
- g_simple_async_result_set_op_res_gpointer (result, data, NULL);
- g_simple_async_result_run_in_thread (result, (GSimpleAsyncThreadFunc) authenticate_thread, G_PRIORITY_DEFAULT, cancellable);
- g_object_unref (result);
-}
-
-/**
- * gdata_service_authenticate_finish:
- * @self: a #GDataService
- * @async_result: a #GAsyncResult
- * @error: a #GError, or %NULL
- *
- * Finishes an asynchronous authentication operation started with gdata_service_authenticate_async().
- *
- * Return value: %TRUE if authentication was successful, %FALSE otherwise
- **/
-gboolean
-gdata_service_authenticate_finish (GDataService *self, GAsyncResult *async_result, GError **error)
-{
- GSimpleAsyncResult *result = G_SIMPLE_ASYNC_RESULT (async_result);
- AuthenticateAsyncData *data;
-
- g_return_val_if_fail (GDATA_IS_SERVICE (self), FALSE);
- g_return_val_if_fail (G_IS_ASYNC_RESULT (async_result), FALSE);
- g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
- g_warn_if_fail (g_simple_async_result_get_source_tag (result) == gdata_service_authenticate_async);
-
- if (g_simple_async_result_propagate_error (result, error) == TRUE)
- return FALSE;
-
- data = g_simple_async_result_get_op_res_gpointer (result);
- if (data->success == TRUE)
- return TRUE;
-
- g_assert_not_reached ();
+ g_object_notify (service, "authenticated");
+ g_object_thaw_notify (service);
}
static gboolean
@@ -791,7 +672,9 @@ authenticate (GDataService *self, const gchar *username, const gchar *password,
login_error:
g_free (uri);
- goto general_error;
+ g_object_unref (message);
+
+ return FALSE;
}
g_assert (message->response_body->data != NULL);
@@ -799,29 +682,6 @@ login_error:
retval = klass->parse_authentication_response (self, status, message->response_body->data, message->response_body->length, error);
g_object_unref (message);
- g_object_freeze_notify (G_OBJECT (self));
- priv->authenticated = retval;
-
- if (retval == TRUE) {
- /* Update several properties the service holds */
- g_free (priv->username);
-
- /* Ensure the username is always a full e-mail address */
- if (strchr (username, '@') == NULL)
- priv->username = g_strdup_printf ("%s@" EMAIL_DOMAIN, username);
- else
- priv->username = g_strdup (username);
-
- g_free (priv->password);
- priv->password = g_strdup (password);
-
- g_object_notify (G_OBJECT (self), "username");
- g_object_notify (G_OBJECT (self), "password");
- }
-
- g_object_notify (G_OBJECT (self), "authenticated");
- g_object_thaw_notify (G_OBJECT (self));
-
return retval;
protocol_error:
@@ -829,14 +689,141 @@ protocol_error:
klass->parse_error_response (self, GDATA_OPERATION_AUTHENTICATION, status, message->reason_phrase, message->response_body->data,
message->response_body->length, error);
-general_error:
g_object_unref (message);
- priv->authenticated = FALSE;
- g_object_notify (G_OBJECT (self), "authenticated");
return FALSE;
}
+typedef struct {
+ /* Input */
+ gchar *username;
+ gchar *password;
+
+ /* Output */
+ GDataService *service;
+ gboolean success;
+} AuthenticateAsyncData;
+
+static void
+authenticate_async_data_free (AuthenticateAsyncData *self)
+{
+ g_free (self->username);
+ g_free (self->password);
+ if (self->service != NULL)
+ g_object_unref (self->service);
+
+ g_slice_free (AuthenticateAsyncData, self);
+}
+
+/* This is always called in the main thread via an idle function */
+static gboolean
+set_authentication_details_cb (AuthenticateAsyncData *data)
+{
+ set_authentication_details (data->service, data->username, data->password, data->success);
+ authenticate_async_data_free (data);
+
+ return FALSE;
+}
+
+static void
+authenticate_thread (GSimpleAsyncResult *result, GDataService *service, GCancellable *cancellable)
+{
+ GError *error = NULL;
+ AuthenticateAsyncData *data = g_simple_async_result_get_op_res_gpointer (result);
+
+ /* Check to see if it's been cancelled already */
+ if (g_cancellable_set_error_if_cancelled (cancellable, &error) == TRUE) {
+ g_simple_async_result_set_from_error (result, error);
+ g_error_free (error);
+ authenticate_async_data_free (data);
+ return;
+ }
+
+ /* Authenticate and return */
+ data->success = authenticate (service, data->username, data->password, NULL, NULL, cancellable, &error);
+ if (data->success == FALSE) {
+ g_simple_async_result_set_from_error (result, error);
+ g_error_free (error);
+ }
+
+ /* Update the authentication details held by the service in an idle function so that
+ * the service is only ever modified in the main thread */
+ data->service = g_object_ref (service);
+ g_idle_add ((GSourceFunc) set_authentication_details_cb, data);
+}
+
+/**
+ * gdata_service_authenticate_async:
+ * @self: a #GDataService
+ * @username: the user's username
+ * @password: the user's password
+ * @cancellable: optional #GCancellable object, or %NULL
+ * @callback: a #GAsyncReadyCallback to call when authentication is finished
+ * @user_data: data to pass to the @callback function
+ *
+ * Authenticates the #GDataService with the online service using the given @username and @password. @self, @username and
+ * @password are all reffed/copied when this function is called, so can safely be freed after this function returns.
+ *
+ * For more details, see gdata_service_authenticate(), which is the synchronous version of this function.
+ *
+ * When the operation is finished, @callback will be called. You can then call gdata_service_authenticate_finish()
+ * to get the results of the operation.
+ **/
+void
+gdata_service_authenticate_async (GDataService *self, const gchar *username, const gchar *password,
+ GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data)
+{
+ GSimpleAsyncResult *result;
+ AuthenticateAsyncData *data;
+
+ g_return_if_fail (GDATA_IS_SERVICE (self));
+ g_return_if_fail (username != NULL);
+ g_return_if_fail (password != NULL);
+ g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable));
+
+ data = g_slice_new (AuthenticateAsyncData);
+ data->username = g_strdup (username);
+ data->password = g_strdup (password);
+ data->service = NULL; /* set in authenticate_thread() */
+
+ result = g_simple_async_result_new (G_OBJECT (self), callback, user_data, gdata_service_authenticate_async);
+ g_simple_async_result_set_op_res_gpointer (result, data, NULL);
+ g_simple_async_result_run_in_thread (result, (GSimpleAsyncThreadFunc) authenticate_thread, G_PRIORITY_DEFAULT, cancellable);
+ g_object_unref (result);
+}
+
+/**
+ * gdata_service_authenticate_finish:
+ * @self: a #GDataService
+ * @async_result: a #GAsyncResult
+ * @error: a #GError, or %NULL
+ *
+ * Finishes an asynchronous authentication operation started with gdata_service_authenticate_async().
+ *
+ * Return value: %TRUE if authentication was successful, %FALSE otherwise
+ **/
+gboolean
+gdata_service_authenticate_finish (GDataService *self, GAsyncResult *async_result, GError **error)
+{
+ GSimpleAsyncResult *result = G_SIMPLE_ASYNC_RESULT (async_result);
+ AuthenticateAsyncData *data;
+
+ g_return_val_if_fail (GDATA_IS_SERVICE (self), FALSE);
+ g_return_val_if_fail (G_IS_ASYNC_RESULT (async_result), FALSE);
+ g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
+
+ g_warn_if_fail (g_simple_async_result_get_source_tag (result) == gdata_service_authenticate_async);
+
+ if (g_simple_async_result_propagate_error (result, error) == TRUE)
+ return FALSE;
+
+ data = g_simple_async_result_get_op_res_gpointer (result);
+ if (data->success == TRUE)
+ return TRUE;
+
+ g_assert_not_reached ();
+}
+
/**
* gdata_service_authenticate:
* @self: a #GDataService
@@ -868,13 +855,18 @@ general_error:
gboolean
gdata_service_authenticate (GDataService *self, const gchar *username, const gchar *password, GCancellable *cancellable, GError **error)
{
+ gboolean retval;
+
g_return_val_if_fail (GDATA_IS_SERVICE (self), FALSE);
g_return_val_if_fail (username != NULL, FALSE);
g_return_val_if_fail (password != NULL, FALSE);
g_return_val_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable), FALSE);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
- return authenticate (self, username, password, NULL, NULL, cancellable, error);
+ retval = authenticate (self, username, password, NULL, NULL, cancellable, error);
+ set_authentication_details (self, username, password, retval);
+
+ return retval;
}
SoupMessage *
@@ -1977,11 +1969,13 @@ gdata_service_is_authenticated (GDataService *self)
return self->priv->authenticated;
}
+/* This should only ever be called in the main thread */
void
_gdata_service_set_authenticated (GDataService *self, gboolean authenticated)
{
g_return_if_fail (GDATA_IS_SERVICE (self));
self->priv->authenticated = authenticated;
+ g_object_notify (G_OBJECT (self), "authenticated");
}
/**
diff --git a/gdata/gdata-service.h b/gdata/gdata-service.h
index d3562d7c..eedd5b7a 100644
--- a/gdata/gdata-service.h
+++ b/gdata/gdata-service.h
@@ -223,16 +223,16 @@ void gdata_service_delete_entry_async (GDataService *self, GDataEntry *entry, GC
GAsyncReadyCallback callback, gpointer user_data);
gboolean gdata_service_delete_entry_finish (GDataService *self, GAsyncResult *async_result, GError **error);
-SoupURI *gdata_service_get_proxy_uri (GDataService *self);
+SoupURI *gdata_service_get_proxy_uri (GDataService *self) G_GNUC_PURE;
void gdata_service_set_proxy_uri (GDataService *self, SoupURI *proxy_uri);
-guint gdata_service_get_timeout (GDataService *self);
+guint gdata_service_get_timeout (GDataService *self) G_GNUC_PURE;
void gdata_service_set_timeout (GDataService *self, guint timeout);
-gboolean gdata_service_is_authenticated (GDataService *self);
-const gchar *gdata_service_get_client_id (GDataService *self);
-const gchar *gdata_service_get_username (GDataService *self);
-const gchar *gdata_service_get_password (GDataService *self);
+gboolean gdata_service_is_authenticated (GDataService *self) G_GNUC_PURE;
+const gchar *gdata_service_get_client_id (GDataService *self) G_GNUC_PURE;
+const gchar *gdata_service_get_username (GDataService *self) G_GNUC_PURE;
+const gchar *gdata_service_get_password (GDataService *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/gdata-upload-stream.h b/gdata/gdata-upload-stream.h
index af64c8da..d726f719 100644
--- a/gdata/gdata-upload-stream.h
+++ b/gdata/gdata-upload-stream.h
@@ -69,11 +69,11 @@ GOutputStream *gdata_upload_stream_new (GDataService *service, const gchar *meth
const gchar *gdata_upload_stream_get_response (GDataUploadStream *self, gssize *length);
-GDataService *gdata_upload_stream_get_service (GDataUploadStream *self);
-const gchar *gdata_upload_stream_get_upload_uri (GDataUploadStream *self);
-GDataEntry *gdata_upload_stream_get_entry (GDataUploadStream *self);
-const gchar *gdata_upload_stream_get_slug (GDataUploadStream *self);
-const gchar *gdata_upload_stream_get_content_type (GDataUploadStream *self);
+GDataService *gdata_upload_stream_get_service (GDataUploadStream *self) G_GNUC_PURE;
+const gchar *gdata_upload_stream_get_upload_uri (GDataUploadStream *self) G_GNUC_PURE;
+GDataEntry *gdata_upload_stream_get_entry (GDataUploadStream *self) G_GNUC_PURE;
+const gchar *gdata_upload_stream_get_slug (GDataUploadStream *self) G_GNUC_PURE;
+const gchar *gdata_upload_stream_get_content_type (GDataUploadStream *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/georss/gdata-georss-where.h b/gdata/georss/gdata-georss-where.h
index 964d09de..069ceb12 100644
--- a/gdata/georss/gdata-georss-where.h
+++ b/gdata/georss/gdata-georss-where.h
@@ -62,8 +62,8 @@ typedef struct {
GType gdata_georss_where_get_type (void) G_GNUC_CONST;
-gdouble gdata_georss_where_get_latitude (GDataGeoRSSWhere *self);
-gdouble gdata_georss_where_get_longitude (GDataGeoRSSWhere *self);
+gdouble gdata_georss_where_get_latitude (GDataGeoRSSWhere *self) G_GNUC_PURE;
+gdouble gdata_georss_where_get_longitude (GDataGeoRSSWhere *self) G_GNUC_PURE;
void gdata_georss_where_set_latitude (GDataGeoRSSWhere *self, gdouble latitude);
void gdata_georss_where_set_longitude (GDataGeoRSSWhere *self, gdouble longitude);
diff --git a/gdata/media/gdata-media-category.h b/gdata/media/gdata-media-category.h
index 52a10663..1eb4aefd 100644
--- a/gdata/media/gdata-media-category.h
+++ b/gdata/media/gdata-media-category.h
@@ -62,13 +62,13 @@ GType gdata_media_category_get_type (void) G_GNUC_CONST;
GDataMediaCategory *gdata_media_category_new (const gchar *category, const gchar *scheme, const gchar *label) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_media_category_get_category (GDataMediaCategory *self);
+const gchar *gdata_media_category_get_category (GDataMediaCategory *self) G_GNUC_PURE;
void gdata_media_category_set_category (GDataMediaCategory *self, const gchar *category);
-const gchar *gdata_media_category_get_scheme (GDataMediaCategory *self);
+const gchar *gdata_media_category_get_scheme (GDataMediaCategory *self) G_GNUC_PURE;
void gdata_media_category_set_scheme (GDataMediaCategory *self, const gchar *scheme);
-const gchar *gdata_media_category_get_label (GDataMediaCategory *self);
+const gchar *gdata_media_category_get_label (GDataMediaCategory *self) G_GNUC_PURE;
void gdata_media_category_set_label (GDataMediaCategory *self, const gchar *label);
G_END_DECLS
diff --git a/gdata/media/gdata-media-content.h b/gdata/media/gdata-media-content.h
index 324a878d..e8a1ad1e 100644
--- a/gdata/media/gdata-media-content.h
+++ b/gdata/media/gdata-media-content.h
@@ -97,15 +97,16 @@ typedef struct {
GType gdata_media_content_get_type (void) G_GNUC_CONST;
-const gchar *gdata_media_content_get_uri (GDataMediaContent *self);
-gsize gdata_media_content_get_filesize (GDataMediaContent *self);
-const gchar *gdata_media_content_get_content_type (GDataMediaContent *self);
-GDataMediaMedium gdata_media_content_get_medium (GDataMediaContent *self);
-gboolean gdata_media_content_is_default (GDataMediaContent *self);
-GDataMediaExpression gdata_media_content_get_expression (GDataMediaContent *self);
-gint64 gdata_media_content_get_duration (GDataMediaContent *self);
-guint gdata_media_content_get_height (GDataMediaContent *self);
-guint gdata_media_content_get_width (GDataMediaContent *self);
+const gchar *gdata_media_content_get_uri (GDataMediaContent *self) G_GNUC_PURE;
+gsize gdata_media_content_get_filesize (GDataMediaContent *self) G_GNUC_PURE;
+const gchar *gdata_media_content_get_content_type (GDataMediaContent *self) G_GNUC_PURE;
+GDataMediaMedium gdata_media_content_get_medium (GDataMediaContent *self) G_GNUC_PURE;
+gboolean gdata_media_content_is_default (GDataMediaContent *self) G_GNUC_PURE;
+GDataMediaExpression gdata_media_content_get_expression (GDataMediaContent *self) G_GNUC_PURE;
+gint64 gdata_media_content_get_duration (GDataMediaContent *self) G_GNUC_PURE;
+guint gdata_media_content_get_height (GDataMediaContent *self) G_GNUC_PURE;
+guint gdata_media_content_get_width (GDataMediaContent *self) G_GNUC_PURE;
+
GFile *gdata_media_content_download (GDataMediaContent *self, GDataService *service, const gchar *default_filename, GFile *target_dest_file,
gboolean replace_file_if_exists,
GCancellable *cancellable, GError **error) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
diff --git a/gdata/media/gdata-media-credit.h b/gdata/media/gdata-media-credit.h
index 8ff49f97..3cfe132b 100644
--- a/gdata/media/gdata-media-credit.h
+++ b/gdata/media/gdata-media-credit.h
@@ -60,9 +60,9 @@ typedef struct {
GType gdata_media_credit_get_type (void) G_GNUC_CONST;
-const gchar *gdata_media_credit_get_credit (GDataMediaCredit *self);
-const gchar *gdata_media_credit_get_scheme (GDataMediaCredit *self);
-const gchar *gdata_media_credit_get_role (GDataMediaCredit *self);
+const gchar *gdata_media_credit_get_credit (GDataMediaCredit *self) G_GNUC_PURE;
+const gchar *gdata_media_credit_get_scheme (GDataMediaCredit *self) G_GNUC_PURE;
+const gchar *gdata_media_credit_get_role (GDataMediaCredit *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/media/gdata-media-group.h b/gdata/media/gdata-media-group.h
index a6562134..9156699b 100644
--- a/gdata/media/gdata-media-group.h
+++ b/gdata/media/gdata-media-group.h
@@ -64,22 +64,22 @@ typedef struct {
GType gdata_media_group_get_type (void) G_GNUC_CONST;
-const gchar *gdata_media_group_get_title (GDataMediaGroup *self);
+const gchar *gdata_media_group_get_title (GDataMediaGroup *self) G_GNUC_PURE;
void gdata_media_group_set_title (GDataMediaGroup *self, const gchar *title);
-const gchar *gdata_media_group_get_description (GDataMediaGroup *self);
+const gchar *gdata_media_group_get_description (GDataMediaGroup *self) G_GNUC_PURE;
void gdata_media_group_set_description (GDataMediaGroup *self, const gchar *description);
-const gchar * const *gdata_media_group_get_keywords (GDataMediaGroup *self);
+const gchar * const *gdata_media_group_get_keywords (GDataMediaGroup *self) G_GNUC_PURE;
void gdata_media_group_set_keywords (GDataMediaGroup *self, const gchar * const *keywords);
-GDataMediaCategory *gdata_media_group_get_category (GDataMediaGroup *self);
+GDataMediaCategory *gdata_media_group_get_category (GDataMediaGroup *self) G_GNUC_PURE;
void gdata_media_group_set_category (GDataMediaGroup *self, GDataMediaCategory *category);
-GDataMediaContent *gdata_media_group_look_up_content (GDataMediaGroup *self, const gchar *type);
-GList *gdata_media_group_get_contents (GDataMediaGroup *self);
+GDataMediaContent *gdata_media_group_look_up_content (GDataMediaGroup *self, const gchar *type) G_GNUC_PURE;
+GList *gdata_media_group_get_contents (GDataMediaGroup *self) G_GNUC_PURE;
void _gdata_media_group_add_content (GDataMediaGroup *self, GDataMediaContent *content);
-GDataMediaCredit *gdata_media_group_get_credit (GDataMediaGroup *self);
+GDataMediaCredit *gdata_media_group_get_credit (GDataMediaGroup *self) G_GNUC_PURE;
void _gdata_media_group_set_credit (GDataMediaGroup *self, GDataMediaCredit *credit);
-const gchar *gdata_media_group_get_player_uri (GDataMediaGroup *self);
-gboolean gdata_media_group_is_restricted_in_country (GDataMediaGroup *self, const gchar *country);
-GList *gdata_media_group_get_thumbnails (GDataMediaGroup *self);
+const gchar *gdata_media_group_get_player_uri (GDataMediaGroup *self) G_GNUC_PURE;
+gboolean gdata_media_group_is_restricted_in_country (GDataMediaGroup *self, const gchar *country) G_GNUC_PURE;
+GList *gdata_media_group_get_thumbnails (GDataMediaGroup *self) G_GNUC_PURE;
void _gdata_media_group_add_thumbnail (GDataMediaGroup *self, GDataMediaThumbnail *thumbnail);
G_END_DECLS
diff --git a/gdata/media/gdata-media-thumbnail.h b/gdata/media/gdata-media-thumbnail.h
index 04387fa8..c19d9003 100644
--- a/gdata/media/gdata-media-thumbnail.h
+++ b/gdata/media/gdata-media-thumbnail.h
@@ -61,10 +61,11 @@ typedef struct {
GType gdata_media_thumbnail_get_type (void) G_GNUC_CONST;
-const gchar *gdata_media_thumbnail_get_uri (GDataMediaThumbnail *self);
-guint gdata_media_thumbnail_get_height (GDataMediaThumbnail *self);
-guint gdata_media_thumbnail_get_width (GDataMediaThumbnail *self);
-gint64 gdata_media_thumbnail_get_time (GDataMediaThumbnail *self);
+const gchar *gdata_media_thumbnail_get_uri (GDataMediaThumbnail *self) G_GNUC_PURE;
+guint gdata_media_thumbnail_get_height (GDataMediaThumbnail *self) G_GNUC_PURE;
+guint gdata_media_thumbnail_get_width (GDataMediaThumbnail *self) G_GNUC_PURE;
+gint64 gdata_media_thumbnail_get_time (GDataMediaThumbnail *self) G_GNUC_PURE;
+
GFile *gdata_media_thumbnail_download (GDataMediaThumbnail *self, GDataService *service, const gchar *default_filename, GFile *target_dest_file,
gboolean replace_file_if_exists,
GCancellable *cancellable, GError **error) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
diff --git a/gdata/services/calendar/gdata-calendar-calendar.h b/gdata/services/calendar/gdata-calendar-calendar.h
index a0d75394..820fbc78 100644
--- a/gdata/services/calendar/gdata-calendar-calendar.h
+++ b/gdata/services/calendar/gdata-calendar-calendar.h
@@ -107,16 +107,16 @@ GType gdata_calendar_calendar_get_type (void) G_GNUC_CONST;
GDataCalendarCalendar *gdata_calendar_calendar_new (const gchar *id) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_calendar_calendar_get_timezone (GDataCalendarCalendar *self);
+const gchar *gdata_calendar_calendar_get_timezone (GDataCalendarCalendar *self) G_GNUC_PURE;
void gdata_calendar_calendar_set_timezone (GDataCalendarCalendar *self, const gchar *_timezone);
-guint gdata_calendar_calendar_get_times_cleaned (GDataCalendarCalendar *self);
-gboolean gdata_calendar_calendar_is_hidden (GDataCalendarCalendar *self);
+guint gdata_calendar_calendar_get_times_cleaned (GDataCalendarCalendar *self) G_GNUC_PURE;
+gboolean gdata_calendar_calendar_is_hidden (GDataCalendarCalendar *self) G_GNUC_PURE;
void gdata_calendar_calendar_set_is_hidden (GDataCalendarCalendar *self, gboolean is_hidden);
void gdata_calendar_calendar_get_color (GDataCalendarCalendar *self, GDataColor *color);
void gdata_calendar_calendar_set_color (GDataCalendarCalendar *self, const GDataColor *color);
-gboolean gdata_calendar_calendar_is_selected (GDataCalendarCalendar *self);
+gboolean gdata_calendar_calendar_is_selected (GDataCalendarCalendar *self) G_GNUC_PURE;
void gdata_calendar_calendar_set_is_selected (GDataCalendarCalendar *self, gboolean is_selected);
-const gchar *gdata_calendar_calendar_get_access_level (GDataCalendarCalendar *self);
+const gchar *gdata_calendar_calendar_get_access_level (GDataCalendarCalendar *self) G_GNUC_PURE;
void gdata_calendar_calendar_get_edited (GDataCalendarCalendar *self, GTimeVal *edited);
G_END_DECLS
diff --git a/gdata/services/calendar/gdata-calendar-event.h b/gdata/services/calendar/gdata-calendar-event.h
index 339c8a51..f096322e 100644
--- a/gdata/services/calendar/gdata-calendar-event.h
+++ b/gdata/services/calendar/gdata-calendar-event.h
@@ -65,35 +65,35 @@ GType gdata_calendar_event_get_type (void) G_GNUC_CONST;
GDataCalendarEvent *gdata_calendar_event_new (const gchar *id) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
void gdata_calendar_event_get_edited (GDataCalendarEvent *self, GTimeVal *edited);
-const gchar *gdata_calendar_event_get_status (GDataCalendarEvent *self);
+const gchar *gdata_calendar_event_get_status (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_status (GDataCalendarEvent *self, const gchar *status);
-const gchar *gdata_calendar_event_get_visibility (GDataCalendarEvent *self);
+const gchar *gdata_calendar_event_get_visibility (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_visibility (GDataCalendarEvent *self, const gchar *visibility);
-const gchar *gdata_calendar_event_get_transparency (GDataCalendarEvent *self);
+const gchar *gdata_calendar_event_get_transparency (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_transparency (GDataCalendarEvent *self, const gchar *transparency);
-const gchar *gdata_calendar_event_get_uid (GDataCalendarEvent *self);
+const gchar *gdata_calendar_event_get_uid (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_uid (GDataCalendarEvent *self, const gchar *uid);
-guint gdata_calendar_event_get_sequence (GDataCalendarEvent *self);
+guint gdata_calendar_event_get_sequence (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_sequence (GDataCalendarEvent *self, guint sequence);
-gboolean gdata_calendar_event_get_guests_can_modify (GDataCalendarEvent *self);
+gboolean gdata_calendar_event_get_guests_can_modify (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_guests_can_modify (GDataCalendarEvent *self, gboolean guests_can_modify);
-gboolean gdata_calendar_event_get_guests_can_invite_others (GDataCalendarEvent *self);
+gboolean gdata_calendar_event_get_guests_can_invite_others (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_guests_can_invite_others (GDataCalendarEvent *self, gboolean guests_can_invite_others);
-gboolean gdata_calendar_event_get_guests_can_see_guests (GDataCalendarEvent *self);
+gboolean gdata_calendar_event_get_guests_can_see_guests (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_guests_can_see_guests (GDataCalendarEvent *self, gboolean guests_can_see_guests);
-gboolean gdata_calendar_event_get_anyone_can_add_self (GDataCalendarEvent *self);
+gboolean gdata_calendar_event_get_anyone_can_add_self (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_anyone_can_add_self (GDataCalendarEvent *self, gboolean anyone_can_add_self);
void gdata_calendar_event_add_person (GDataCalendarEvent *self, GDataGDWho *who);
-GList *gdata_calendar_event_get_people (GDataCalendarEvent *self);
+GList *gdata_calendar_event_get_people (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_add_place (GDataCalendarEvent *self, GDataGDWhere *where);
-GList *gdata_calendar_event_get_places (GDataCalendarEvent *self);
+GList *gdata_calendar_event_get_places (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_add_time (GDataCalendarEvent *self, GDataGDWhen *when);
-GList *gdata_calendar_event_get_times (GDataCalendarEvent *self);
+GList *gdata_calendar_event_get_times (GDataCalendarEvent *self) G_GNUC_PURE;
gboolean gdata_calendar_event_get_primary_time (GDataCalendarEvent *self, GTimeVal *start_time, GTimeVal *end_time, GDataGDWhen **when);
-const gchar *gdata_calendar_event_get_recurrence (GDataCalendarEvent *self);
+const gchar *gdata_calendar_event_get_recurrence (GDataCalendarEvent *self) G_GNUC_PURE;
void gdata_calendar_event_set_recurrence (GDataCalendarEvent *self, const gchar *recurrence);
void gdata_calendar_event_get_original_event_details (GDataCalendarEvent *self, gchar **event_id, gchar **event_uri);
-gboolean gdata_calendar_event_is_exception (GDataCalendarEvent *self);
+gboolean gdata_calendar_event_is_exception (GDataCalendarEvent *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/calendar/gdata-calendar-feed.h b/gdata/services/calendar/gdata-calendar-feed.h
index 11cf2d3b..2dcfabd3 100644
--- a/gdata/services/calendar/gdata-calendar-feed.h
+++ b/gdata/services/calendar/gdata-calendar-feed.h
@@ -63,8 +63,8 @@ typedef struct {
GType gdata_calendar_feed_get_type (void);
-const gchar *gdata_calendar_feed_get_timezone (GDataCalendarFeed *self);
-guint gdata_calendar_feed_get_times_cleaned (GDataCalendarFeed *self);
+const gchar *gdata_calendar_feed_get_timezone (GDataCalendarFeed *self) G_GNUC_PURE;
+guint gdata_calendar_feed_get_times_cleaned (GDataCalendarFeed *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/calendar/gdata-calendar-query.h b/gdata/services/calendar/gdata-calendar-query.h
index 649d1655..9aecef97 100644
--- a/gdata/services/calendar/gdata-calendar-query.h
+++ b/gdata/services/calendar/gdata-calendar-query.h
@@ -63,23 +63,23 @@ GDataCalendarQuery *gdata_calendar_query_new (const gchar *q) G_GNUC_WARN_UNUSED
GDataCalendarQuery *gdata_calendar_query_new_with_limits (const gchar *q, const GTimeVal *start_min,
const GTimeVal *start_max) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gboolean gdata_calendar_query_get_future_events (GDataCalendarQuery *self);
+gboolean gdata_calendar_query_get_future_events (GDataCalendarQuery *self) G_GNUC_PURE;
void gdata_calendar_query_set_future_events (GDataCalendarQuery *self, gboolean future_events);
-const gchar *gdata_calendar_query_get_order_by (GDataCalendarQuery *self);
+const gchar *gdata_calendar_query_get_order_by (GDataCalendarQuery *self) G_GNUC_PURE;
void gdata_calendar_query_set_order_by (GDataCalendarQuery *self, const gchar *order_by);
void gdata_calendar_query_get_recurrence_expansion_start (GDataCalendarQuery *self, GTimeVal *start);
void gdata_calendar_query_set_recurrence_expansion_start (GDataCalendarQuery *self, const GTimeVal *start);
void gdata_calendar_query_get_recurrence_expansion_end (GDataCalendarQuery *self, GTimeVal *end);
void gdata_calendar_query_set_recurrence_expansion_end (GDataCalendarQuery *self, const GTimeVal *end);
-gboolean gdata_calendar_query_get_single_events (GDataCalendarQuery *self);
+gboolean gdata_calendar_query_get_single_events (GDataCalendarQuery *self) G_GNUC_PURE;
void gdata_calendar_query_set_single_events (GDataCalendarQuery *self, gboolean single_events);
-const gchar *gdata_calendar_query_get_sort_order (GDataCalendarQuery *self);
+const gchar *gdata_calendar_query_get_sort_order (GDataCalendarQuery *self) G_GNUC_PURE;
void gdata_calendar_query_set_sort_order (GDataCalendarQuery *self, const gchar *sort_order);
void gdata_calendar_query_get_start_min (GDataCalendarQuery *self, GTimeVal *start_min);
void gdata_calendar_query_set_start_min (GDataCalendarQuery *self, const GTimeVal *start_min);
void gdata_calendar_query_get_start_max (GDataCalendarQuery *self, GTimeVal *start_max);
void gdata_calendar_query_set_start_max (GDataCalendarQuery *self, const GTimeVal *start_max);
-const gchar *gdata_calendar_query_get_timezone (GDataCalendarQuery *self);
+const gchar *gdata_calendar_query_get_timezone (GDataCalendarQuery *self) G_GNUC_PURE;
void gdata_calendar_query_set_timezone (GDataCalendarQuery *self, const gchar *_timezone);
G_END_DECLS
diff --git a/gdata/services/contacts/gdata-contacts-contact.h b/gdata/services/contacts/gdata-contacts-contact.h
index 03096bca..7eb86e3e 100644
--- a/gdata/services/contacts/gdata-contacts-contact.h
+++ b/gdata/services/contacts/gdata-contacts-contact.h
@@ -159,125 +159,125 @@ GType gdata_contacts_contact_get_type (void) G_GNUC_CONST;
GDataContactsContact *gdata_contacts_contact_new (const gchar *id) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
void gdata_contacts_contact_get_edited (GDataContactsContact *self, GTimeVal *edited);
-gboolean gdata_contacts_contact_is_deleted (GDataContactsContact *self);
+gboolean gdata_contacts_contact_is_deleted (GDataContactsContact *self) G_GNUC_PURE;
-GDataGDName *gdata_contacts_contact_get_name (GDataContactsContact *self);
+GDataGDName *gdata_contacts_contact_get_name (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_name (GDataContactsContact *self, GDataGDName *name);
-const gchar *gdata_contacts_contact_get_nickname (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_nickname (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_nickname (GDataContactsContact *self, const gchar *nickname);
-gboolean gdata_contacts_contact_get_birthday (GDataContactsContact *self, GDate *birthday);
+gboolean gdata_contacts_contact_get_birthday (GDataContactsContact *self, GDate *birthday) G_GNUC_PURE;
void gdata_contacts_contact_set_birthday (GDataContactsContact *self, GDate *birthday, gboolean birthday_has_year);
-const gchar *gdata_contacts_contact_get_billing_information (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_billing_information (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_billing_information (GDataContactsContact *self, const gchar *billing_information);
-const gchar *gdata_contacts_contact_get_directory_server (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_directory_server (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_directory_server (GDataContactsContact *self, const gchar *directory_server);
-const gchar *gdata_contacts_contact_get_gender (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_gender (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_gender (GDataContactsContact *self, const gchar *gender);
-const gchar *gdata_contacts_contact_get_initials (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_initials (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_initials (GDataContactsContact *self, const gchar *initials);
-const gchar *gdata_contacts_contact_get_maiden_name (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_maiden_name (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_maiden_name (GDataContactsContact *self, const gchar *maiden_name);
-const gchar *gdata_contacts_contact_get_mileage (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_mileage (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_mileage (GDataContactsContact *self, const gchar *mileage);
-const gchar *gdata_contacts_contact_get_occupation (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_occupation (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_occupation (GDataContactsContact *self, const gchar *occupation);
-const gchar *gdata_contacts_contact_get_priority (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_priority (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_priority (GDataContactsContact *self, const gchar *priority);
-const gchar *gdata_contacts_contact_get_sensitivity (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_sensitivity (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_sensitivity (GDataContactsContact *self, const gchar *sensitivity);
-const gchar *gdata_contacts_contact_get_short_name (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_short_name (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_short_name (GDataContactsContact *self, const gchar *short_name);
-const gchar *gdata_contacts_contact_get_subject (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_subject (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_subject (GDataContactsContact *self, const gchar *subject);
void gdata_contacts_contact_add_email_address (GDataContactsContact *self, GDataGDEmailAddress *email_address);
-GList *gdata_contacts_contact_get_email_addresses (GDataContactsContact *self);
-GDataGDEmailAddress *gdata_contacts_contact_get_primary_email_address (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_email_addresses (GDataContactsContact *self) G_GNUC_PURE;
+GDataGDEmailAddress *gdata_contacts_contact_get_primary_email_address (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_email_addresses (GDataContactsContact *self);
void gdata_contacts_contact_add_im_address (GDataContactsContact *self, GDataGDIMAddress *im_address);
-GList *gdata_contacts_contact_get_im_addresses (GDataContactsContact *self);
-GDataGDIMAddress *gdata_contacts_contact_get_primary_im_address (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_im_addresses (GDataContactsContact *self) G_GNUC_PURE;
+GDataGDIMAddress *gdata_contacts_contact_get_primary_im_address (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_im_addresses (GDataContactsContact *self);
void gdata_contacts_contact_add_phone_number (GDataContactsContact *self, GDataGDPhoneNumber *phone_number);
-GList *gdata_contacts_contact_get_phone_numbers (GDataContactsContact *self);
-GDataGDPhoneNumber *gdata_contacts_contact_get_primary_phone_number (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_phone_numbers (GDataContactsContact *self) G_GNUC_PURE;
+GDataGDPhoneNumber *gdata_contacts_contact_get_primary_phone_number (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_phone_numbers (GDataContactsContact *self);
void gdata_contacts_contact_add_postal_address (GDataContactsContact *self, GDataGDPostalAddress *postal_address);
-GList *gdata_contacts_contact_get_postal_addresses (GDataContactsContact *self);
-GDataGDPostalAddress *gdata_contacts_contact_get_primary_postal_address (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_postal_addresses (GDataContactsContact *self) G_GNUC_PURE;
+GDataGDPostalAddress *gdata_contacts_contact_get_primary_postal_address (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_postal_addresses (GDataContactsContact *self);
void gdata_contacts_contact_add_organization (GDataContactsContact *self, GDataGDOrganization *organization);
-GList *gdata_contacts_contact_get_organizations (GDataContactsContact *self);
-GDataGDOrganization *gdata_contacts_contact_get_primary_organization (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_organizations (GDataContactsContact *self) G_GNUC_PURE;
+GDataGDOrganization *gdata_contacts_contact_get_primary_organization (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_organizations (GDataContactsContact *self);
void gdata_contacts_contact_add_jot (GDataContactsContact *self, GDataGContactJot *jot);
-GList *gdata_contacts_contact_get_jots (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_jots (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_jots (GDataContactsContact *self);
void gdata_contacts_contact_add_relation (GDataContactsContact *self, GDataGContactRelation *relation);
-GList *gdata_contacts_contact_get_relations (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_relations (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_relations (GDataContactsContact *self);
void gdata_contacts_contact_add_website (GDataContactsContact *self, GDataGContactWebsite *website);
-GList *gdata_contacts_contact_get_websites (GDataContactsContact *self);
-GDataGContactWebsite *gdata_contacts_contact_get_primary_website (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_websites (GDataContactsContact *self) G_GNUC_PURE;
+GDataGContactWebsite *gdata_contacts_contact_get_primary_website (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_websites (GDataContactsContact *self);
void gdata_contacts_contact_add_event (GDataContactsContact *self, GDataGContactEvent *event);
-GList *gdata_contacts_contact_get_events (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_events (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_events (GDataContactsContact *self);
void gdata_contacts_contact_add_calendar (GDataContactsContact *self, GDataGContactCalendar *calendar);
-GList *gdata_contacts_contact_get_calendars (GDataContactsContact *self);
-GDataGContactCalendar *gdata_contacts_contact_get_primary_calendar (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_calendars (GDataContactsContact *self) G_GNUC_PURE;
+GDataGContactCalendar *gdata_contacts_contact_get_primary_calendar (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_calendars (GDataContactsContact *self);
void gdata_contacts_contact_add_external_id (GDataContactsContact *self, GDataGContactExternalID *external_id);
-GList *gdata_contacts_contact_get_external_ids (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_external_ids (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_external_ids (GDataContactsContact *self);
void gdata_contacts_contact_add_hobby (GDataContactsContact *self, const gchar *hobby);
-GList *gdata_contacts_contact_get_hobbies (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_hobbies (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_hobbies (GDataContactsContact *self);
void gdata_contacts_contact_add_language (GDataContactsContact *self, GDataGContactLanguage *language);
-GList *gdata_contacts_contact_get_languages (GDataContactsContact *self);
+GList *gdata_contacts_contact_get_languages (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_remove_all_languages (GDataContactsContact *self);
-const gchar *gdata_contacts_contact_get_extended_property (GDataContactsContact *self, const gchar *name);
-GHashTable *gdata_contacts_contact_get_extended_properties (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_extended_property (GDataContactsContact *self, const gchar *name) G_GNUC_PURE;
+GHashTable *gdata_contacts_contact_get_extended_properties (GDataContactsContact *self) G_GNUC_PURE;
gboolean gdata_contacts_contact_set_extended_property (GDataContactsContact *self, const gchar *name, const gchar *value);
-const gchar *gdata_contacts_contact_get_user_defined_field (GDataContactsContact *self, const gchar *name);
-GHashTable *gdata_contacts_contact_get_user_defined_fields (GDataContactsContact *self);
+const gchar *gdata_contacts_contact_get_user_defined_field (GDataContactsContact *self, const gchar *name) G_GNUC_PURE;
+GHashTable *gdata_contacts_contact_get_user_defined_fields (GDataContactsContact *self) G_GNUC_PURE;
void gdata_contacts_contact_set_user_defined_field (GDataContactsContact *self, const gchar *name, const gchar *value);
void gdata_contacts_contact_add_group (GDataContactsContact *self, const gchar *href);
void gdata_contacts_contact_remove_group (GDataContactsContact *self, const gchar *href);
-gboolean gdata_contacts_contact_is_group_deleted (GDataContactsContact *self, const gchar *href);
+gboolean gdata_contacts_contact_is_group_deleted (GDataContactsContact *self, const gchar *href) G_GNUC_PURE;
GList *gdata_contacts_contact_get_groups (GDataContactsContact *self) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
#include <gdata/services/contacts/gdata-contacts-service.h>
-gboolean gdata_contacts_contact_has_photo (GDataContactsContact *self);
+gboolean gdata_contacts_contact_has_photo (GDataContactsContact *self) G_GNUC_PURE;
gchar *gdata_contacts_contact_get_photo (GDataContactsContact *self, GDataContactsService *service, gsize *length, gchar **content_type,
GCancellable *cancellable, GError **error) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
gboolean gdata_contacts_contact_set_photo (GDataContactsContact *self, GDataService *service, const gchar *data, gsize length,
diff --git a/gdata/services/contacts/gdata-contacts-query.h b/gdata/services/contacts/gdata-contacts-query.h
index a00a6c5f..a29eff62 100644
--- a/gdata/services/contacts/gdata-contacts-query.h
+++ b/gdata/services/contacts/gdata-contacts-query.h
@@ -66,13 +66,13 @@ GDataContactsQuery *gdata_contacts_query_new (const gchar *q) G_GNUC_WARN_UNUSED
GDataContactsQuery *gdata_contacts_query_new_with_limits (const gchar *q, guint start_index,
guint max_results) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_contacts_query_get_order_by (GDataContactsQuery *self);
+const gchar *gdata_contacts_query_get_order_by (GDataContactsQuery *self) G_GNUC_PURE;
void gdata_contacts_query_set_order_by (GDataContactsQuery *self, const gchar *order_by);
-gboolean gdata_contacts_query_show_deleted (GDataContactsQuery *self);
+gboolean gdata_contacts_query_show_deleted (GDataContactsQuery *self) G_GNUC_PURE;
void gdata_contacts_query_set_show_deleted (GDataContactsQuery *self, gboolean show_deleted);
-const gchar *gdata_contacts_query_get_sort_order (GDataContactsQuery *self);
+const gchar *gdata_contacts_query_get_sort_order (GDataContactsQuery *self) G_GNUC_PURE;
void gdata_contacts_query_set_sort_order (GDataContactsQuery *self, const gchar *sort_order);
-const gchar *gdata_contacts_query_get_group (GDataContactsQuery *self);
+const gchar *gdata_contacts_query_get_group (GDataContactsQuery *self) G_GNUC_PURE;
void gdata_contacts_query_set_group (GDataContactsQuery *self, const gchar *group);
G_END_DECLS
diff --git a/gdata/services/documents/gdata-documents-entry.h b/gdata/services/documents/gdata-documents-entry.h
index 5e9dcfec..82de8a00 100644
--- a/gdata/services/documents/gdata-documents-entry.h
+++ b/gdata/services/documents/gdata-documents-entry.h
@@ -94,17 +94,17 @@ GType gdata_documents_entry_get_type (void) G_GNUC_CONST;
gchar *gdata_documents_entry_get_path (GDataDocumentsEntry *self) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_documents_entry_get_document_id (GDataDocumentsEntry *self);
+const gchar *gdata_documents_entry_get_document_id (GDataDocumentsEntry *self) G_GNUC_PURE;
void gdata_documents_entry_get_edited (GDataDocumentsEntry *self, GTimeVal *edited);
void gdata_documents_entry_get_last_viewed (GDataDocumentsEntry *self, GTimeVal *last_viewed);
void gdata_documents_entry_set_writers_can_invite (GDataDocumentsEntry *self, gboolean writers_can_invite);
-gboolean gdata_documents_entry_writers_can_invite (GDataDocumentsEntry *self);
+gboolean gdata_documents_entry_writers_can_invite (GDataDocumentsEntry *self) G_GNUC_PURE;
-GDataAuthor *gdata_documents_entry_get_last_modified_by (GDataDocumentsEntry *self);
+GDataAuthor *gdata_documents_entry_get_last_modified_by (GDataDocumentsEntry *self) G_GNUC_PURE;
-gboolean gdata_documents_entry_is_deleted (GDataDocumentsEntry *self);
+gboolean gdata_documents_entry_is_deleted (GDataDocumentsEntry *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/documents/gdata-documents-query.h b/gdata/services/documents/gdata-documents-query.h
index d021b3d1..14f734e9 100644
--- a/gdata/services/documents/gdata-documents-query.h
+++ b/gdata/services/documents/gdata-documents-query.h
@@ -68,17 +68,17 @@ GDataDocumentsQuery *gdata_documents_query_new (const gchar *q) G_GNUC_WARN_UNUS
GDataDocumentsQuery *gdata_documents_query_new_with_limits (const gchar *q,
guint start_index, guint max_results) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-gboolean gdata_documents_query_show_deleted (GDataDocumentsQuery *self);
+gboolean gdata_documents_query_show_deleted (GDataDocumentsQuery *self) G_GNUC_PURE;
void gdata_documents_query_set_show_deleted (GDataDocumentsQuery *self, gboolean show_deleted);
-gboolean gdata_documents_query_show_folders (GDataDocumentsQuery *self);
+gboolean gdata_documents_query_show_folders (GDataDocumentsQuery *self) G_GNUC_PURE;
void gdata_documents_query_set_show_folders (GDataDocumentsQuery *self, gboolean show_folders);
-const gchar *gdata_documents_query_get_folder_id (GDataDocumentsQuery *self);
+const gchar *gdata_documents_query_get_folder_id (GDataDocumentsQuery *self) G_GNUC_PURE;
void gdata_documents_query_set_folder_id (GDataDocumentsQuery *self, const gchar *folder_id);
-const gchar *gdata_documents_query_get_title (GDataDocumentsQuery *self);
-gboolean gdata_documents_query_get_exact_title (GDataDocumentsQuery *self);
+const gchar *gdata_documents_query_get_title (GDataDocumentsQuery *self) G_GNUC_PURE;
+gboolean gdata_documents_query_get_exact_title (GDataDocumentsQuery *self) G_GNUC_PURE;
void gdata_documents_query_set_title (GDataDocumentsQuery *self, const gchar *title, gboolean exact_title);
-GList *gdata_documents_query_get_collaborator_addresses (GDataDocumentsQuery *self);
-GList *gdata_documents_query_get_reader_addresses (GDataDocumentsQuery *self);
+GList *gdata_documents_query_get_collaborator_addresses (GDataDocumentsQuery *self) G_GNUC_PURE;
+GList *gdata_documents_query_get_reader_addresses (GDataDocumentsQuery *self) G_GNUC_PURE;
void gdata_documents_query_add_reader (GDataDocumentsQuery *self, const gchar *email_address);
void gdata_documents_query_add_collaborator (GDataDocumentsQuery *self, const gchar *email_address);
diff --git a/gdata/services/picasaweb/gdata-picasaweb-album.h b/gdata/services/picasaweb/gdata-picasaweb-album.h
index f3dc33e7..1cec2d22 100644
--- a/gdata/services/picasaweb/gdata-picasaweb-album.h
+++ b/gdata/services/picasaweb/gdata-picasaweb-album.h
@@ -80,26 +80,26 @@ GType gdata_picasaweb_album_get_type (void) G_GNUC_CONST;
GDataPicasaWebAlbum *gdata_picasaweb_album_new (const gchar *id) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_picasaweb_album_get_id (GDataPicasaWebAlbum *self);
-const gchar *gdata_picasaweb_album_get_user (GDataPicasaWebAlbum *self);
-const gchar *gdata_picasaweb_album_get_nickname (GDataPicasaWebAlbum *self);
+const gchar *gdata_picasaweb_album_get_id (GDataPicasaWebAlbum *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_album_get_user (GDataPicasaWebAlbum *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_album_get_nickname (GDataPicasaWebAlbum *self) G_GNUC_PURE;
void gdata_picasaweb_album_get_edited (GDataPicasaWebAlbum *self, GTimeVal *edited);
-const gchar *gdata_picasaweb_album_get_location (GDataPicasaWebAlbum *self);
+const gchar *gdata_picasaweb_album_get_location (GDataPicasaWebAlbum *self) G_GNUC_PURE;
void gdata_picasaweb_album_set_location (GDataPicasaWebAlbum *self, const gchar *location);
-GDataPicasaWebVisibility gdata_picasaweb_album_get_visibility (GDataPicasaWebAlbum *self);
+GDataPicasaWebVisibility gdata_picasaweb_album_get_visibility (GDataPicasaWebAlbum *self) G_GNUC_PURE;
void gdata_picasaweb_album_set_visibility (GDataPicasaWebAlbum *self, GDataPicasaWebVisibility visibility);
void gdata_picasaweb_album_get_timestamp (GDataPicasaWebAlbum *self, GTimeVal *timestamp);
void gdata_picasaweb_album_set_timestamp (GDataPicasaWebAlbum *self, const GTimeVal *timestamp);
-guint gdata_picasaweb_album_get_num_photos (GDataPicasaWebAlbum *self);
-guint gdata_picasaweb_album_get_num_photos_remaining (GDataPicasaWebAlbum *self);
-glong gdata_picasaweb_album_get_bytes_used (GDataPicasaWebAlbum *self);
-gboolean gdata_picasaweb_album_is_commenting_enabled (GDataPicasaWebAlbum *self);
+guint gdata_picasaweb_album_get_num_photos (GDataPicasaWebAlbum *self) G_GNUC_PURE;
+guint gdata_picasaweb_album_get_num_photos_remaining (GDataPicasaWebAlbum *self) G_GNUC_PURE;
+glong gdata_picasaweb_album_get_bytes_used (GDataPicasaWebAlbum *self) G_GNUC_PURE;
+gboolean gdata_picasaweb_album_is_commenting_enabled (GDataPicasaWebAlbum *self) G_GNUC_PURE;
void gdata_picasaweb_album_set_is_commenting_enabled (GDataPicasaWebAlbum *self, gboolean is_commenting_enabled);
-guint gdata_picasaweb_album_get_comment_count (GDataPicasaWebAlbum *self);
-const gchar * const *gdata_picasaweb_album_get_tags (GDataPicasaWebAlbum *self);
+guint gdata_picasaweb_album_get_comment_count (GDataPicasaWebAlbum *self) G_GNUC_PURE;
+const gchar * const *gdata_picasaweb_album_get_tags (GDataPicasaWebAlbum *self) G_GNUC_PURE;
void gdata_picasaweb_album_set_tags (GDataPicasaWebAlbum *self, const gchar * const *tags);
-GList *gdata_picasaweb_album_get_contents (GDataPicasaWebAlbum *self);
-GList *gdata_picasaweb_album_get_thumbnails (GDataPicasaWebAlbum *self);
+GList *gdata_picasaweb_album_get_contents (GDataPicasaWebAlbum *self) G_GNUC_PURE;
+GList *gdata_picasaweb_album_get_thumbnails (GDataPicasaWebAlbum *self) G_GNUC_PURE;
void gdata_picasaweb_album_get_coordinates (GDataPicasaWebAlbum *self, gdouble *latitude, gdouble *longitude);
void gdata_picasaweb_album_set_coordinates (GDataPicasaWebAlbum *self, gdouble latitude, gdouble longitude);
diff --git a/gdata/services/picasaweb/gdata-picasaweb-file.h b/gdata/services/picasaweb/gdata-picasaweb-file.h
index 2351e45a..ae237897 100644
--- a/gdata/services/picasaweb/gdata-picasaweb-file.h
+++ b/gdata/services/picasaweb/gdata-picasaweb-file.h
@@ -102,45 +102,45 @@ GType gdata_picasaweb_file_get_type (void) G_GNUC_CONST;
GDataPicasaWebFile *gdata_picasaweb_file_new (const gchar *id) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_picasaweb_file_get_id (GDataPicasaWebFile *self);
+const gchar *gdata_picasaweb_file_get_id (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_get_edited (GDataPicasaWebFile *self, GTimeVal *edited);
-const gchar *gdata_picasaweb_file_get_version (GDataPicasaWebFile *self);
-gdouble gdata_picasaweb_file_get_position (GDataPicasaWebFile *self);
+const gchar *gdata_picasaweb_file_get_version (GDataPicasaWebFile *self) G_GNUC_PURE;
+gdouble gdata_picasaweb_file_get_position (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_set_position (GDataPicasaWebFile *self, gdouble position);
-const gchar *gdata_picasaweb_file_get_album_id (GDataPicasaWebFile *self);
+const gchar *gdata_picasaweb_file_get_album_id (GDataPicasaWebFile *self) G_GNUC_PURE;
/* TODO should we have a more obvious _move() API too? nah */
void gdata_picasaweb_file_set_album_id (GDataPicasaWebFile *self, const gchar *album_id);
-guint gdata_picasaweb_file_get_width (GDataPicasaWebFile *self);
-guint gdata_picasaweb_file_get_height (GDataPicasaWebFile *self);
-gsize gdata_picasaweb_file_get_size (GDataPicasaWebFile *self);
-const gchar *gdata_picasaweb_file_get_client (GDataPicasaWebFile *self);
+guint gdata_picasaweb_file_get_width (GDataPicasaWebFile *self) G_GNUC_PURE;
+guint gdata_picasaweb_file_get_height (GDataPicasaWebFile *self) G_GNUC_PURE;
+gsize gdata_picasaweb_file_get_size (GDataPicasaWebFile *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_file_get_client (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_set_client (GDataPicasaWebFile *self, const gchar *client);
-const gchar *gdata_picasaweb_file_get_checksum (GDataPicasaWebFile *self);
+const gchar *gdata_picasaweb_file_get_checksum (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_set_checksum (GDataPicasaWebFile *self, const gchar *checksum);
void gdata_picasaweb_file_get_timestamp (GDataPicasaWebFile *self, GTimeVal *timestamp);
void gdata_picasaweb_file_set_timestamp (GDataPicasaWebFile *self, const GTimeVal *timestamp);
-gboolean gdata_picasaweb_file_is_commenting_enabled (GDataPicasaWebFile *self);
+gboolean gdata_picasaweb_file_is_commenting_enabled (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_set_is_commenting_enabled (GDataPicasaWebFile *self, gboolean is_commenting_enabled);
-guint gdata_picasaweb_file_get_comment_count (GDataPicasaWebFile *self);
-guint gdata_picasaweb_file_get_rotation (GDataPicasaWebFile *self);
+guint gdata_picasaweb_file_get_comment_count (GDataPicasaWebFile *self) G_GNUC_PURE;
+guint gdata_picasaweb_file_get_rotation (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_set_rotation (GDataPicasaWebFile *self, guint rotation);
-const gchar *gdata_picasaweb_file_get_video_status (GDataPicasaWebFile *self);
-const gchar * const *gdata_picasaweb_file_get_tags (GDataPicasaWebFile *self);
+const gchar *gdata_picasaweb_file_get_video_status (GDataPicasaWebFile *self) G_GNUC_PURE;
+const gchar * const *gdata_picasaweb_file_get_tags (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_set_tags (GDataPicasaWebFile *self, const gchar * const *tags);
-const gchar *gdata_picasaweb_file_get_credit (GDataPicasaWebFile *self);
-const gchar *gdata_picasaweb_file_get_caption (GDataPicasaWebFile *self);
+const gchar *gdata_picasaweb_file_get_credit (GDataPicasaWebFile *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_file_get_caption (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_set_caption (GDataPicasaWebFile *self, const gchar *caption);
-GList *gdata_picasaweb_file_get_contents (GDataPicasaWebFile *self);
-GList *gdata_picasaweb_file_get_thumbnails (GDataPicasaWebFile *self);
-gdouble gdata_picasaweb_file_get_distance (GDataPicasaWebFile *self);
-gdouble gdata_picasaweb_file_get_exposure (GDataPicasaWebFile *self);
-gboolean gdata_picasaweb_file_get_flash (GDataPicasaWebFile *self);
-gdouble gdata_picasaweb_file_get_focal_length (GDataPicasaWebFile *self);
-gdouble gdata_picasaweb_file_get_fstop (GDataPicasaWebFile *self);
-const gchar *gdata_picasaweb_file_get_image_unique_id (GDataPicasaWebFile *self);
-gint gdata_picasaweb_file_get_iso (GDataPicasaWebFile *self);
-const gchar *gdata_picasaweb_file_get_make (GDataPicasaWebFile *self);
-const gchar *gdata_picasaweb_file_get_model (GDataPicasaWebFile *self);
+GList *gdata_picasaweb_file_get_contents (GDataPicasaWebFile *self) G_GNUC_PURE;
+GList *gdata_picasaweb_file_get_thumbnails (GDataPicasaWebFile *self) G_GNUC_PURE;
+gdouble gdata_picasaweb_file_get_distance (GDataPicasaWebFile *self) G_GNUC_PURE;
+gdouble gdata_picasaweb_file_get_exposure (GDataPicasaWebFile *self) G_GNUC_PURE;
+gboolean gdata_picasaweb_file_get_flash (GDataPicasaWebFile *self) G_GNUC_PURE;
+gdouble gdata_picasaweb_file_get_focal_length (GDataPicasaWebFile *self) G_GNUC_PURE;
+gdouble gdata_picasaweb_file_get_fstop (GDataPicasaWebFile *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_file_get_image_unique_id (GDataPicasaWebFile *self) G_GNUC_PURE;
+gint gdata_picasaweb_file_get_iso (GDataPicasaWebFile *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_file_get_make (GDataPicasaWebFile *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_file_get_model (GDataPicasaWebFile *self) G_GNUC_PURE;
void gdata_picasaweb_file_get_coordinates (GDataPicasaWebFile *self, gdouble *latitude, gdouble *longitude);
void gdata_picasaweb_file_set_coordinates (GDataPicasaWebFile *self, gdouble latitude, gdouble longitude);
diff --git a/gdata/services/picasaweb/gdata-picasaweb-query.h b/gdata/services/picasaweb/gdata-picasaweb-query.h
index 7fbff660..25f8db02 100644
--- a/gdata/services/picasaweb/gdata-picasaweb-query.h
+++ b/gdata/services/picasaweb/gdata-picasaweb-query.h
@@ -68,17 +68,17 @@ GDataPicasaWebQuery *gdata_picasaweb_query_new (const gchar *q) G_GNUC_WARN_UNUS
GDataPicasaWebQuery *gdata_picasaweb_query_new_with_limits (const gchar *q,
guint start_index, guint max_results) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-GDataPicasaWebVisibility gdata_picasaweb_query_get_visibility (GDataPicasaWebQuery *self);
+GDataPicasaWebVisibility gdata_picasaweb_query_get_visibility (GDataPicasaWebQuery *self) G_GNUC_PURE;
void gdata_picasaweb_query_set_visibility (GDataPicasaWebQuery *self, GDataPicasaWebVisibility visibility);
-const gchar *gdata_picasaweb_query_get_thumbnail_size (GDataPicasaWebQuery *self);
+const gchar *gdata_picasaweb_query_get_thumbnail_size (GDataPicasaWebQuery *self) G_GNUC_PURE;
void gdata_picasaweb_query_set_thumbnail_size (GDataPicasaWebQuery *self, const gchar *thumbnail_size);
-const gchar *gdata_picasaweb_query_get_image_size (GDataPicasaWebQuery *self);
+const gchar *gdata_picasaweb_query_get_image_size (GDataPicasaWebQuery *self) G_GNUC_PURE;
void gdata_picasaweb_query_set_image_size (GDataPicasaWebQuery *self, const gchar *image_size);
-const gchar *gdata_picasaweb_query_get_tag (GDataPicasaWebQuery *self);
+const gchar *gdata_picasaweb_query_get_tag (GDataPicasaWebQuery *self) G_GNUC_PURE;
void gdata_picasaweb_query_set_tag (GDataPicasaWebQuery *self, const gchar *tag);
void gdata_picasaweb_query_get_bounding_box (GDataPicasaWebQuery *self, gdouble *north, gdouble *east, gdouble *south, gdouble *west);
void gdata_picasaweb_query_set_bounding_box (GDataPicasaWebQuery *self, gdouble north, gdouble east, gdouble south, gdouble west);
-const gchar *gdata_picasaweb_query_get_location (GDataPicasaWebQuery *self);
+const gchar *gdata_picasaweb_query_get_location (GDataPicasaWebQuery *self) G_GNUC_PURE;
void gdata_picasaweb_query_set_location (GDataPicasaWebQuery *self, const gchar *location);
G_END_DECLS
diff --git a/gdata/services/picasaweb/gdata-picasaweb-user.h b/gdata/services/picasaweb/gdata-picasaweb-user.h
index 0dc0f60d..bd92d14b 100644
--- a/gdata/services/picasaweb/gdata-picasaweb-user.h
+++ b/gdata/services/picasaweb/gdata-picasaweb-user.h
@@ -64,12 +64,12 @@ typedef struct {
GType gdata_picasaweb_user_get_type (void) G_GNUC_CONST;
-const gchar *gdata_picasaweb_user_get_user (GDataPicasaWebUser *self);
-const gchar *gdata_picasaweb_user_get_nickname (GDataPicasaWebUser *self);
-gint64 gdata_picasaweb_user_get_quota_limit (GDataPicasaWebUser *self);
-gint64 gdata_picasaweb_user_get_quota_current (GDataPicasaWebUser *self);
-gint gdata_picasaweb_user_get_max_photos_per_album (GDataPicasaWebUser *self);
-const gchar *gdata_picasaweb_user_get_thumbnail_uri (GDataPicasaWebUser *self);
+const gchar *gdata_picasaweb_user_get_user (GDataPicasaWebUser *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_user_get_nickname (GDataPicasaWebUser *self) G_GNUC_PURE;
+gint64 gdata_picasaweb_user_get_quota_limit (GDataPicasaWebUser *self) G_GNUC_PURE;
+gint64 gdata_picasaweb_user_get_quota_current (GDataPicasaWebUser *self) G_GNUC_PURE;
+gint gdata_picasaweb_user_get_max_photos_per_album (GDataPicasaWebUser *self) G_GNUC_PURE;
+const gchar *gdata_picasaweb_user_get_thumbnail_uri (GDataPicasaWebUser *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/youtube/gdata-youtube-content.h b/gdata/services/youtube/gdata-youtube-content.h
index c835c96e..c5dc40bf 100644
--- a/gdata/services/youtube/gdata-youtube-content.h
+++ b/gdata/services/youtube/gdata-youtube-content.h
@@ -81,7 +81,7 @@ typedef struct {
} GDataYouTubeContentClass;
GType gdata_youtube_content_get_type (void) G_GNUC_CONST;
-GDataYouTubeFormat gdata_youtube_content_get_format (GDataYouTubeContent *self);
+GDataYouTubeFormat gdata_youtube_content_get_format (GDataYouTubeContent *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/youtube/gdata-youtube-control.h b/gdata/services/youtube/gdata-youtube-control.h
index a49e94d2..b331a6c2 100644
--- a/gdata/services/youtube/gdata-youtube-control.h
+++ b/gdata/services/youtube/gdata-youtube-control.h
@@ -61,9 +61,9 @@ typedef struct {
GType gdata_youtube_control_get_type (void) G_GNUC_CONST;
-gboolean gdata_youtube_control_is_draft (GDataYouTubeControl *self);
+gboolean gdata_youtube_control_is_draft (GDataYouTubeControl *self) G_GNUC_PURE;
void gdata_youtube_control_set_is_draft (GDataYouTubeControl *self, gboolean is_draft);
-GDataYouTubeState *gdata_youtube_control_get_state (GDataYouTubeControl *self);
+GDataYouTubeState *gdata_youtube_control_get_state (GDataYouTubeControl *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/youtube/gdata-youtube-credit.h b/gdata/services/youtube/gdata-youtube-credit.h
index b1b53607..5c182c8e 100644
--- a/gdata/services/youtube/gdata-youtube-credit.h
+++ b/gdata/services/youtube/gdata-youtube-credit.h
@@ -71,7 +71,7 @@ typedef struct {
} GDataYouTubeCreditClass;
GType gdata_youtube_credit_get_type (void) G_GNUC_CONST;
-const gchar *gdata_youtube_credit_get_entity_type (GDataYouTubeCredit *self);
+const gchar *gdata_youtube_credit_get_entity_type (GDataYouTubeCredit *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/youtube/gdata-youtube-group.h b/gdata/services/youtube/gdata-youtube-group.h
index f4f13671..828b2523 100644
--- a/gdata/services/youtube/gdata-youtube-group.h
+++ b/gdata/services/youtube/gdata-youtube-group.h
@@ -62,12 +62,12 @@ typedef struct {
GType gdata_youtube_group_get_type (void) G_GNUC_CONST;
-guint gdata_youtube_group_get_duration (GDataYouTubeGroup *self);
-gboolean gdata_youtube_group_is_private (GDataYouTubeGroup *self);
+guint gdata_youtube_group_get_duration (GDataYouTubeGroup *self) G_GNUC_PURE;
+gboolean gdata_youtube_group_is_private (GDataYouTubeGroup *self) G_GNUC_PURE;
void gdata_youtube_group_set_is_private (GDataYouTubeGroup *self, gboolean is_private);
void gdata_youtube_group_get_uploaded (GDataYouTubeGroup *self, GTimeVal *uploaded);
-const gchar *gdata_youtube_group_get_video_id (GDataYouTubeGroup *self);
-const gchar *gdata_youtube_group_get_aspect_ratio (GDataYouTubeGroup *self);
+const gchar *gdata_youtube_group_get_video_id (GDataYouTubeGroup *self) G_GNUC_PURE;
+const gchar *gdata_youtube_group_get_aspect_ratio (GDataYouTubeGroup *self) G_GNUC_PURE;
void gdata_youtube_group_set_aspect_ratio (GDataYouTubeGroup *self, const gchar *aspect_ratio);
G_END_DECLS
diff --git a/gdata/services/youtube/gdata-youtube-query.h b/gdata/services/youtube/gdata-youtube-query.h
index 6f764878..4d70b0f2 100644
--- a/gdata/services/youtube/gdata-youtube-query.h
+++ b/gdata/services/youtube/gdata-youtube-query.h
@@ -133,23 +133,23 @@ GType gdata_youtube_query_get_type (void) G_GNUC_CONST;
GDataYouTubeQuery *gdata_youtube_query_new (const gchar *q) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-GDataYouTubeFormat gdata_youtube_query_get_format (GDataYouTubeQuery *self);
+GDataYouTubeFormat gdata_youtube_query_get_format (GDataYouTubeQuery *self) G_GNUC_PURE;
void gdata_youtube_query_set_format (GDataYouTubeQuery *self, GDataYouTubeFormat format);
void gdata_youtube_query_get_location (GDataYouTubeQuery *self, gdouble *latitude, gdouble *longitude, gdouble *radius, gboolean *has_location);
void gdata_youtube_query_set_location (GDataYouTubeQuery *self, gdouble latitude, gdouble longitude, gdouble radius, gboolean has_location);
-const gchar *gdata_youtube_query_get_language (GDataYouTubeQuery *self);
+const gchar *gdata_youtube_query_get_language (GDataYouTubeQuery *self) G_GNUC_PURE;
void gdata_youtube_query_set_language (GDataYouTubeQuery *self, const gchar *language);
-const gchar *gdata_youtube_query_get_order_by (GDataYouTubeQuery *self);
+const gchar *gdata_youtube_query_get_order_by (GDataYouTubeQuery *self) G_GNUC_PURE;
void gdata_youtube_query_set_order_by (GDataYouTubeQuery *self, const gchar *order_by);
-const gchar *gdata_youtube_query_get_restriction (GDataYouTubeQuery *self);
+const gchar *gdata_youtube_query_get_restriction (GDataYouTubeQuery *self) G_GNUC_PURE;
void gdata_youtube_query_set_restriction (GDataYouTubeQuery *self, const gchar *restriction);
-GDataYouTubeSafeSearch gdata_youtube_query_get_safe_search (GDataYouTubeQuery *self);
+GDataYouTubeSafeSearch gdata_youtube_query_get_safe_search (GDataYouTubeQuery *self) G_GNUC_PURE;
void gdata_youtube_query_set_safe_search (GDataYouTubeQuery *self, GDataYouTubeSafeSearch safe_search);
-GDataYouTubeSortOrder gdata_youtube_query_get_sort_order (GDataYouTubeQuery *self);
+GDataYouTubeSortOrder gdata_youtube_query_get_sort_order (GDataYouTubeQuery *self) G_GNUC_PURE;
void gdata_youtube_query_set_sort_order (GDataYouTubeQuery *self, GDataYouTubeSortOrder sort_order);
-GDataYouTubeAge gdata_youtube_query_get_age (GDataYouTubeQuery *self);
+GDataYouTubeAge gdata_youtube_query_get_age (GDataYouTubeQuery *self) G_GNUC_PURE;
void gdata_youtube_query_set_age (GDataYouTubeQuery *self, GDataYouTubeAge age);
-GDataYouTubeUploader gdata_youtube_query_get_uploader (GDataYouTubeQuery *self);
+GDataYouTubeUploader gdata_youtube_query_get_uploader (GDataYouTubeQuery *self) G_GNUC_PURE;
void gdata_youtube_query_set_uploader (GDataYouTubeQuery *self, GDataYouTubeUploader uploader);
G_END_DECLS
diff --git a/gdata/services/youtube/gdata-youtube-service.h b/gdata/services/youtube/gdata-youtube-service.h
index 4d5cf890..aea7693c 100644
--- a/gdata/services/youtube/gdata-youtube-service.h
+++ b/gdata/services/youtube/gdata-youtube-service.h
@@ -133,8 +133,8 @@ void gdata_youtube_service_query_related_async (GDataYouTubeService *self, GData
GDataYouTubeVideo *gdata_youtube_service_upload_video (GDataYouTubeService *self, GDataYouTubeVideo *video, GFile *video_file,
GCancellable *cancellable, GError **error) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-const gchar *gdata_youtube_service_get_developer_key (GDataYouTubeService *self);
-const gchar *gdata_youtube_service_get_youtube_user (GDataYouTubeService *self);
+const gchar *gdata_youtube_service_get_developer_key (GDataYouTubeService *self) G_GNUC_PURE;
+const gchar *gdata_youtube_service_get_youtube_user (GDataYouTubeService *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/youtube/gdata-youtube-state.h b/gdata/services/youtube/gdata-youtube-state.h
index 9dce23f4..cb4e4d4c 100644
--- a/gdata/services/youtube/gdata-youtube-state.h
+++ b/gdata/services/youtube/gdata-youtube-state.h
@@ -60,10 +60,10 @@ typedef struct {
GType gdata_youtube_state_get_type (void) G_GNUC_CONST;
-const gchar *gdata_youtube_state_get_name (GDataYouTubeState *self);
-const gchar *gdata_youtube_state_get_reason_code (GDataYouTubeState *self);
-const gchar *gdata_youtube_state_get_help_uri (GDataYouTubeState *self);
-const gchar *gdata_youtube_state_get_message (GDataYouTubeState *self);
+const gchar *gdata_youtube_state_get_name (GDataYouTubeState *self) G_GNUC_PURE;
+const gchar *gdata_youtube_state_get_reason_code (GDataYouTubeState *self) G_GNUC_PURE;
+const gchar *gdata_youtube_state_get_help_uri (GDataYouTubeState *self) G_GNUC_PURE;
+const gchar *gdata_youtube_state_get_message (GDataYouTubeState *self) G_GNUC_PURE;
G_END_DECLS
diff --git a/gdata/services/youtube/gdata-youtube-video.h b/gdata/services/youtube/gdata-youtube-video.h
index ac1f8f8b..6c873302 100644
--- a/gdata/services/youtube/gdata-youtube-video.h
+++ b/gdata/services/youtube/gdata-youtube-video.h
@@ -149,35 +149,35 @@ GType gdata_youtube_video_get_type (void) G_GNUC_CONST;
GDataYouTubeVideo *gdata_youtube_video_new (const gchar *id) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;
-guint gdata_youtube_video_get_view_count (GDataYouTubeVideo *self);
-guint gdata_youtube_video_get_favorite_count (GDataYouTubeVideo *self);
-const gchar *gdata_youtube_video_get_location (GDataYouTubeVideo *self);
+guint gdata_youtube_video_get_view_count (GDataYouTubeVideo *self) G_GNUC_PURE;
+guint gdata_youtube_video_get_favorite_count (GDataYouTubeVideo *self) G_GNUC_PURE;
+const gchar *gdata_youtube_video_get_location (GDataYouTubeVideo *self) G_GNUC_PURE;
void gdata_youtube_video_set_location (GDataYouTubeVideo *self, const gchar *location);
-GDataYouTubePermission gdata_youtube_video_get_access_control (GDataYouTubeVideo *self, const gchar *action);
+GDataYouTubePermission gdata_youtube_video_get_access_control (GDataYouTubeVideo *self, const gchar *action) G_GNUC_PURE;
void gdata_youtube_video_set_access_control (GDataYouTubeVideo *self, const gchar *action, GDataYouTubePermission permission);
void gdata_youtube_video_get_rating (GDataYouTubeVideo *self, guint *min, guint *max, guint *count, gdouble *average);
-const gchar * const *gdata_youtube_video_get_keywords (GDataYouTubeVideo *self);
+const gchar * const *gdata_youtube_video_get_keywords (GDataYouTubeVideo *self) G_GNUC_PURE;
void gdata_youtube_video_set_keywords (GDataYouTubeVideo *self, const gchar * const *keywords);
-const gchar *gdata_youtube_video_get_player_uri (GDataYouTubeVideo *self);
-gboolean gdata_youtube_video_is_restricted_in_country (GDataYouTubeVideo *self, const gchar *country);
-GDataMediaCategory *gdata_youtube_video_get_category (GDataYouTubeVideo *self);
+const gchar *gdata_youtube_video_get_player_uri (GDataYouTubeVideo *self) G_GNUC_PURE;
+gboolean gdata_youtube_video_is_restricted_in_country (GDataYouTubeVideo *self, const gchar *country) G_GNUC_PURE;
+GDataMediaCategory *gdata_youtube_video_get_category (GDataYouTubeVideo *self) G_GNUC_PURE;
void gdata_youtube_video_set_category (GDataYouTubeVideo *self, GDataMediaCategory *category);
-GDataYouTubeCredit *gdata_youtube_video_get_credit (GDataYouTubeVideo *self);
-const gchar *gdata_youtube_video_get_description (GDataYouTubeVideo *self);
+GDataYouTubeCredit *gdata_youtube_video_get_credit (GDataYouTubeVideo *self) G_GNUC_PURE;
+const gchar *gdata_youtube_video_get_description (GDataYouTubeVideo *self) G_GNUC_PURE;
void gdata_youtube_video_set_description (GDataYouTubeVideo *self, const gchar *description);
-GDataYouTubeContent *gdata_youtube_video_look_up_content (GDataYouTubeVideo *self, const gchar *type);
-GList *gdata_youtube_video_get_thumbnails (GDataYouTubeVideo *self);
-guint gdata_youtube_video_get_duration (GDataYouTubeVideo *self);
-gboolean gdata_youtube_video_is_private (GDataYouTubeVideo *self);
+GDataYouTubeContent *gdata_youtube_video_look_up_content (GDataYouTubeVideo *self, const gchar *type) G_GNUC_PURE;
+GList *gdata_youtube_video_get_thumbnails (GDataYouTubeVideo *self) G_GNUC_PURE;
+guint gdata_youtube_video_get_duration (GDataYouTubeVideo *self) G_GNUC_PURE;
+gboolean gdata_youtube_video_is_private (GDataYouTubeVideo *self) G_GNUC_PURE;
void gdata_youtube_video_set_is_private (GDataYouTubeVideo *self, gboolean is_private);
void gdata_youtube_video_get_uploaded (GDataYouTubeVideo *self, GTimeVal *uploaded);
-const gchar *gdata_youtube_video_get_video_id (GDataYouTubeVideo *self);
-gboolean gdata_youtube_video_is_draft (GDataYouTubeVideo *self);
+const gchar *gdata_youtube_video_get_video_id (GDataYouTubeVideo *self) G_GNUC_PURE;
+gboolean gdata_youtube_video_is_draft (GDataYouTubeVideo *self) G_GNUC_PURE;
void gdata_youtube_video_set_is_draft (GDataYouTubeVideo *self, gboolean is_draft);
-GDataYouTubeState *gdata_youtube_video_get_state (GDataYouTubeVideo *self);
+GDataYouTubeState *gdata_youtube_video_get_state (GDataYouTubeVideo *self) G_GNUC_PURE;
void gdata_youtube_video_get_recorded (GDataYouTubeVideo *self, GTimeVal *recorded);
void gdata_youtube_video_set_recorded (GDataYouTubeVideo *self, const GTimeVal *recorded);
-const gchar *gdata_youtube_video_get_aspect_ratio (GDataYouTubeVideo *self);
+const gchar *gdata_youtube_video_get_aspect_ratio (GDataYouTubeVideo *self) G_GNUC_PURE;
void gdata_youtube_video_set_aspect_ratio (GDataYouTubeVideo *self, const gchar *aspect_ratio);
gchar *gdata_youtube_video_get_video_id_from_uri (const gchar *video_uri) G_GNUC_WARN_UNUSED_RESULT G_GNUC_MALLOC;