[Telepathy-commits] [telepathy-glib/master] TpMessage: add tp_message_set_[u]int64

Will Thompson will.thompson at collabora.co.uk
Thu Dec 18 10:41:47 PST 2008


---
 docs/reference/telepathy-glib-sections.txt |    2 +
 telepathy-glib/message-mixin.c             |   60 ++++++++++++++++++++++++++++
 telepathy-glib/message-mixin.h             |    4 ++
 3 files changed, 66 insertions(+), 0 deletions(-)

diff --git a/docs/reference/telepathy-glib-sections.txt b/docs/reference/telepathy-glib-sections.txt
index 8392f35..789a4d5 100644
--- a/docs/reference/telepathy-glib-sections.txt
+++ b/docs/reference/telepathy-glib-sections.txt
@@ -1549,9 +1549,11 @@ tp_message_set_bytes
 tp_message_set_handle
 tp_message_set_int16
 tp_message_set_int32
+tp_message_set_int64
 tp_message_set_string
 tp_message_set_uint16
 tp_message_set_uint32
+tp_message_set_uint64
 TpMessageMixin
 TpMessageMixinSendImpl
 tp_message_mixin_finalize
diff --git a/telepathy-glib/message-mixin.c b/telepathy-glib/message-mixin.c
index 887c6b9..4462915 100644
--- a/telepathy-glib/message-mixin.c
+++ b/telepathy-glib/message-mixin.c
@@ -493,6 +493,36 @@ tp_message_set_int32 (TpMessage *self,
 
 
 /**
+ * tp_message_set_int64:
+ * @self: a message
+ * @part: a part number, which must be strictly less than the number
+ *  returned by tp_message_count_parts()
+ * @key: a key in the mapping representing the part
+ * @i: an integer value
+ *
+ * Set @key in part @part of @self to have @i as a signed integer value.
+ *
+ * @since 0.7.UNRELEASED
+ */
+void
+tp_message_set_int64 (TpMessage *self,
+                      guint part,
+                      const gchar *key,
+                      gint64 i)
+{
+  GValue *value;
+
+  g_return_if_fail (part < self->parts->len);
+  g_return_if_fail (key != NULL);
+
+  value = tp_g_value_slice_new (G_TYPE_INT64);
+  g_value_set_int64 (value, i);
+  g_hash_table_insert (g_ptr_array_index (self->parts, part),
+      g_strdup (key), value);
+}
+
+
+/**
  * tp_message_set_uint16:
  * @s: a message
  * @p: a part number, which must be strictly less than the number
@@ -536,6 +566,36 @@ tp_message_set_uint32 (TpMessage *self,
 
 
 /**
+ * tp_message_set_uint64:
+ * @self: a message
+ * @part: a part number, which must be strictly less than the number
+ *  returned by tp_message_count_parts()
+ * @key: a key in the mapping representing the part
+ * @u: an unsigned integer value
+ *
+ * Set @key in part @part of @self to have @u as an unsigned integer value.
+ *
+ * @since 0.7.UNRELEASED
+ */
+void
+tp_message_set_uint64 (TpMessage *self,
+                       guint part,
+                       const gchar *key,
+                       guint64 u)
+{
+  GValue *value;
+
+  g_return_if_fail (part < self->parts->len);
+  g_return_if_fail (key != NULL);
+
+  value = tp_g_value_slice_new (G_TYPE_UINT64);
+  g_value_set_uint64 (value, u);
+  g_hash_table_insert (g_ptr_array_index (self->parts, part),
+      g_strdup (key), value);
+}
+
+
+/**
  * tp_message_set_string:
  * @self: a message
  * @part: a part number, which must be strictly less than the number
diff --git a/telepathy-glib/message-mixin.h b/telepathy-glib/message-mixin.h
index a0350ff..fd4083f 100644
--- a/telepathy-glib/message-mixin.h
+++ b/telepathy-glib/message-mixin.h
@@ -58,10 +58,14 @@ void tp_message_set_int32 (TpMessage *self, guint part, const gchar *key,
     gint32 i);
 #define tp_message_set_int16(s, p, k, i) \
     tp_message_set_int32 (s, p, k, (gint16) i)
+void tp_message_set_int64 (TpMessage *self, guint part, const gchar *key,
+    gint64 i);
 void tp_message_set_uint32 (TpMessage *self, guint part, const gchar *key,
     guint32 u);
 #define tp_message_set_uint16(s, p, k, u) \
     tp_message_set_uint32 (s, p, k, (guint16) u)
+void tp_message_set_uint64 (TpMessage *self, guint part, const gchar *key,
+    guint64 u);
 void tp_message_set_string (TpMessage *self, guint part, const gchar *key,
     const gchar *s);
 void tp_message_set_bytes (TpMessage *self, guint part, const gchar *key,
-- 
1.5.6.5




More information about the Telepathy-commits mailing list