On Wed, Jan 28, 2015 at 09:19:29AM -0500, Rafael Schloming wrote: > On Wed, Jan 28, 2015 at 9:06 AM, Darryl L. Pierce <dpie...@redhat.com> > wrote: > > > On Wed, Jan 28, 2015 at 06:04:57AM -0500, Rafael Schloming wrote: > > > On the face of it this sounds like it could be quite brittle and probably > > > more complicated than just forgetting about swig for the one pn_rubyref_t > > > struct and wrapping it manually. Did you attempt the latter option at > > all? > > > > Yes, there is a POC of this on my branch as well. > > > > Did it work? Can you send me a pointer to it?
Yes, it works. It uses Data_Wrap_Struct to encapsulate the pn_rubyref_t type, rb_gc_mark to mark any Ruby object held by that type against reaping, and does appropriate alloc and free operations on instances of the struct. https://github.com/mcpierce/Proton/tree/c-to-ruby-reference-gc-check -- Darryl L. Pierce, Sr. Software Engineer @ Red Hat, Inc. Delivering value year after year. Red Hat ranks #1 in value among software vendors. http://www.redhat.com/promo/vendor/
pgpRloAgXb9mC.pgp
Description: PGP signature