Remove XID wrapper structures and replace them with uint32_t typedefs
authorJosh Triplett <josh@freedesktop.org>
Sat, 7 Oct 2006 00:44:53 +0000 (17:44 -0700)
committerJosh Triplett <josh@freedesktop.org>
Sat, 7 Oct 2006 00:44:53 +0000 (17:44 -0700)
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

index 982ec02..4a7b50e 100644 (file)
@@ -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">