[glib] Add byteswap macros for gsize/gssize.
- From: Ryan Lortie <ryanl src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [glib] Add byteswap macros for gsize/gssize.
- Date: Tue, 1 Dec 2009 00:56:33 +0000 (UTC)
commit 74a970f754bbffcc9f0a3fa6dd9977a8640544c8
Author: Ryan Lortie <desrt desrt ca>
Date: Mon Nov 30 19:50:21 2009 -0500
Add byteswap macros for gsize/gssize.
configure.in | 5 ++
docs/reference/glib/glib-sections.txt | 12 +++++
docs/reference/glib/tmpl/byte_order.sgml | 72 ++++++++++++++++++++++++++++++
glib/gtypes.h | 5 ++
glibconfig.h.win32.in | 4 ++
5 files changed, 98 insertions(+), 0 deletions(-)
---
diff --git a/configure.in b/configure.in
index 116bcfa..723311f 100644
--- a/configure.in
+++ b/configure.in
@@ -3057,6 +3057,10 @@ _______EOF
#define GUINT_TO_LE(val) ((guint) GUINT${gintbits}_TO_LE (val))
#define GINT_TO_BE(val) ((gint) GINT${gintbits}_TO_BE (val))
#define GUINT_TO_BE(val) ((guint) GUINT${gintbits}_TO_BE (val))
+#define GSIZE_TO_LE(val) ((gsize) GUINT${gsizebits}_TO_LE (val))
+#define GSSIZE_TO_LE(val) ((gssize) GINT${gsizebits}_TO_LE (val))
+#define GSIZE_TO_BE(val) ((gsize) GUINT${gsizebits}_TO_BE (val))
+#define GSSIZE_TO_BE(val) ((gssize) GINT${gsizebits}_TO_BE (val))
#define G_BYTE_ORDER $g_byte_order
#define GLIB_SYSDEF_POLLIN =$g_pollin
@@ -3256,6 +3260,7 @@ esac
gintbits=`expr $ac_cv_sizeof_int \* 8`
glongbits=`expr $ac_cv_sizeof_long \* 8`
+gsizebits=`expr $ac_cv_sizeof_size_t \* 8`
case $ac_cv_sizeof_void_p in
$ac_cv_sizeof_int)
diff --git a/docs/reference/glib/glib-sections.txt b/docs/reference/glib/glib-sections.txt
index d78fa4b..99483da 100644
--- a/docs/reference/glib/glib-sections.txt
+++ b/docs/reference/glib/glib-sections.txt
@@ -219,6 +219,18 @@ GULONG_TO_BE
GULONG_TO_LE
<SUBSECTION>
+GSIZE_FROM_BE
+GSIZE_FROM_LE
+GSIZE_TO_BE
+GSIZE_TO_LE
+
+<SUBSECTION>
+GSSIZE_FROM_BE
+GSSIZE_FROM_LE
+GSSIZE_TO_BE
+GSSIZE_TO_LE
+
+<SUBSECTION>
GINT16_FROM_BE
GINT16_FROM_LE
GINT16_TO_BE
diff --git a/docs/reference/glib/tmpl/byte_order.sgml b/docs/reference/glib/tmpl/byte_order.sgml
index 47a7225..3f60fd7 100644
--- a/docs/reference/glib/tmpl/byte_order.sgml
+++ b/docs/reference/glib/tmpl/byte_order.sgml
@@ -265,6 +265,78 @@ Converts a #gulong value from host byte order to little-endian.
@Returns: @val converted to little-endian.
+<!-- ##### MACRO GSIZE_FROM_BE ##### -->
+<para>
+Converts a #gsize value from big-endian to the host byte order.
+</para>
+
+ val: a #gsize value in big-endian byte order.
+ Returns: @val converted to host byte order.
+
+
+<!-- ##### MACRO GSIZE_FROM_LE ##### -->
+<para>
+Converts a #gsize value from little-endian to host byte order.
+</para>
+
+ val: a #gsize value in little-endian byte order.
+ Returns: @val converted to host byte order.
+
+
+<!-- ##### MACRO GSIZE_TO_BE ##### -->
+<para>
+Converts a #gsize value from host byte order to big-endian.
+</para>
+
+ val: a #gsize value in host byte order.
+ Returns: @val converted to big-endian byte order.
+
+
+<!-- ##### MACRO GSIZE_TO_LE ##### -->
+<para>
+Converts a #gsize value from host byte order to little-endian.
+</para>
+
+ val: a #gsize value in host byte order.
+ Returns: @val converted to little-endian.
+
+
+<!-- ##### MACRO GSSIZE_FROM_BE ##### -->
+<para>
+Converts a #gssize value from big-endian to host byte order.
+</para>
+
+ val: a #gssize value in big-endian byte order.
+ Returns: @val converted to host byte order.
+
+
+<!-- ##### MACRO GSSIZE_FROM_LE ##### -->
+<para>
+Converts a #gssize value from little-endian to host byte order.
+</para>
+
+ val: a #gssize value in little-endian byte order.
+ Returns: @val converted to host byte order.
+
+
+<!-- ##### MACRO GSSIZE_TO_BE ##### -->
+<para>
+Converts a #gssize value from host byte order to big-endian.
+</para>
+
+ val: a #gssize value in host byte order.
+ Returns: @val converted to big-endian.
+
+
+<!-- ##### MACRO GSSIZE_TO_LE ##### -->
+<para>
+Converts a #gssize value from host byte order to little-endian.
+</para>
+
+ val: a #gssize value in host byte order.
+ Returns: @val converted to little-endian.
+
+
<!-- ##### MACRO GINT16_FROM_BE ##### -->
<para>
Converts a #gint16 value from big-endian to host byte order.
diff --git a/glib/gtypes.h b/glib/gtypes.h
index 571a7db..e616f99 100644
--- a/glib/gtypes.h
+++ b/glib/gtypes.h
@@ -335,6 +335,11 @@ typedef const gchar * (*GTranslateFunc) (const gchar *str,
#define GINT_FROM_BE(val) (GINT_TO_BE (val))
#define GUINT_FROM_BE(val) (GUINT_TO_BE (val))
+#define GSIZE_FROM_LE(val) (GSIZE_TO_LE (val))
+#define GSSIZE_FROM_LE(val) (GSSIZE_TO_LE (val))
+#define GSIZE_FROM_BE(val) (GSIZE_TO_BE (val))
+#define GSSIZE_FROM_BE(val) (GSSIZE_TO_BE (val))
+
/* Portable versions of host-network order stuff
*/
diff --git a/glibconfig.h.win32.in b/glibconfig.h.win32.in
index 2d5a96c..6967b14 100644
--- a/glibconfig.h.win32.in
+++ b/glibconfig.h.win32.in
@@ -239,6 +239,10 @@ union _GSystemThread
#define GUINT_TO_LE(val) ((guint) GUINT32_TO_LE (val))
#define GINT_TO_BE(val) ((gint) GINT32_TO_BE (val))
#define GUINT_TO_BE(val) ((guint) GUINT32_TO_BE (val))
+#define GSIZE_TO_LE(val) ((gsize) GUINT32_TO_LE (val))
+#define GSSIZE_TO_LE(val) ((gssize) GINT32_TO_LE (val))
+#define GSIZE_TO_BE(val) ((gsize) GUINT32_TO_BE (val))
+#define GSSIZE_TO_BE(val) ((gssize) GINT32_TO_BE (val))
#define G_BYTE_ORDER G_LITTLE_ENDIAN
#define GLIB_SYSDEF_POLLIN =1
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]