On 02/02/2015 01:17 AM, Matthew Flatt wrote:
> It's also valid to reference `wl_interface-pointer` directly:
...
> 
> I don't have a nicer solution if you want to refer to
> `_wl_message-pointer`, though.
> 

The forward reference is actually in wl_message, like this:

(define-cstruct _wl_message
  ((name _string/utf-8)
   (signature _string/utf-8)
   (types (_cpointer 'wl_interface))))

(define-cstruct _wl_interface
  ((name _string/utf-8)
   (version _int)
   (method_count _int)
   (methods _wl_message-pointer)
   (event_count _int)
   (events _wl_message-pointer)))

I ended up just inlining (_cpointer 'wl_interface) for the forward
reference. This ends up creating two (_cpointer 'wl_interface) ctypes,
but it's no problem, correct?

I don't think it is possible to "reference 'wl_interface-pointer'
directly" as you suggest in this case because of the "cannot reference
an identifier before its definition" error.

-- 
Anthony Carrico


Attachment: signature.asc
Description: OpenPGP digital signature

____________________
  Racket Users list:
  http://lists.racket-lang.org/users

Reply via email to