[Xcb] [PATCH] Remove XID wrapper structures and replace them with uint32_t typedefs

Josh Triplett josh at freedesktop.org
Fri Oct 6 17:54:24 PDT 2006


After positive feedback from several people, we have decided to remove the XID
wrapper structures that attempted to provide C type safety, and replace them
with uint32_t typedefs.  Feedback has indicated that these type-safety hacks
generated more trouble than help.

We will bump the libxcb soname at the next release.
---
 src/c-client.xsl |   10 +---------
 1 files changed, 1 insertions(+), 9 deletions(-)

diff --git a/src/c-client.xsl b/src/c-client.xsl
index 982ec02..4a7b50e 100644
--- a/src/c-client.xsl
+++ b/src/c-client.xsl
@@ -404,17 +404,9 @@ authorization from the authors.
   </xsl:template>

   <xsl:template match="xidtype" mode="pass1">
-    <struct name="{xcb:xcb-prefix(@name)}_t">
-      <field type="uint32_t" name="xid" />
-    </struct>
+    <typedef oldname="uint32_t" newname="{xcb:xcb-prefix(@name)}_t" />
     <iterator ref="{xcb:xcb-prefix(@name)}" />
     <iterator-functions ref="{xcb:xcb-prefix(@name)}" />
-    <function type="{xcb:xcb-prefix(@name)}_t" name="{xcb:xcb-prefix(@name)}_new">
-      <field type="xcb_connection_t *" name="c" />
-      <l><xsl:value-of select="concat(xcb:xcb-prefix(@name), '_t')" /> ret;</l>
-      <l>ret.xid = xcb_generate_id(c);</l>
-      <l>return ret;</l>
-    </function>
   </xsl:template>

   <xsl:template match="struct|union" mode="pass1">
--
1.4.2.1

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 252 bytes
Desc: OpenPGP digital signature
Url : http://lists.freedesktop.org/archives/xcb/attachments/20061006/faa35e1c/signature.pgp


More information about the Xcb mailing list