On Sat, May 02, 2015 at 11:52:22PM +0200, Auke Booij wrote:
> On 19 April 2015 at 14:51, Jeroen Bollen <jbin...@gmail.com> wrote:
> > Hello,
> >
> > It seems like this discussion died off. Currently there is no way to tell,
> > from the Wayland XML specification whether an argument is a bitfield, or
> > whether the argument takes an enum and what enum this is.
> >
> > I am currently in the progress of writing a Wayland binding generator for
> > the Rust language. This language, like many others is strongly typed. To
> > make full usage of this type system, it would be beneficial to know from the
> > specification whether an argument is a bitfield, and what enum type it
> > takes.
> >
> > Surely there are more people who generate bindings to these strongly typed
> > languages. How have you fixed the issue? Are there patched versions
> > available, and maybe pending to be merged? I have looked around a bit, and
> > didn't find anything, but then again, I'm not familiar with Wayland
> > development. (This is the first time I use a mailing list!)
> >
> > Much appreciated,
> > Jeroen Bollen
> >
> > _______________________________________________
> > wayland-devel mailing list
> > wayland-devel@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/wayland-devel
> >
> 
> Based on the discussion I wrote two patches: one for the wayland.xml
> (and wayland.dtd since the fact of the matter is that that file is
> still there), and one for scanner.c
> 
> See 5dc0112f734d23d65a2bf9a78f11463d0294b6c7 and
> b6d5659c650056f66267f3f20fdbaf724138a61b in [0].
> 
> Is this a good format for sending patches? Or are actual patch emails 
> preferred?

Actual patch emails are preferred, since our tooling (patchwork and
phabricator) only know to identify patches here on the list.
 
> The scanner.c code checks that the enum attribute of an <arg> is the
> name of an <enum> in the same <interface>. In that case, it checks
> that the type of the <arg> is an int or a uint, and if the <enum> had
> bitfield set to "true", that the type was indeed uint.
> 
> If these properties are not satisfied, the scanner dies. Is that what
> was expected?

Thanks for following up.

I went through the earlier discussion, and my take is that there were
some strong opinions but it sounds like it resulted in a consensus.  It
looks to me like your patch implements this consensus, but to be 100%
certain it would be good to see thumbs-up by pekka, jeroen, and others
that participated in that thread.

It also needs to be documented, at least in
wayland/doc/publican/sources/Protocol.xml, and possibly other places
where types are discussed.

Since we're only a couple weeks out from a release, and since this
obviously is a non-trivial change to the API, I'd be most comfortable if
we held this until 1.9 opens, and land it then; that would give us
maximum time to test this.

(Speaking of testing, it would be Really Nice to have a test for the
scanner.)

Bryce
_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to