It allows to use RefPtr for the wrapped object and it simplifies the code.
Created attachment 172093 [details] Patch
Created attachment 172103 [details] Updated patch to include test results
Comment on attachment 172103 [details] Updated patch to include test results Looks good to me!
Committed r136498: <http://trac.webkit.org/changeset/136498>
Re-opened since this is blocked by bug 103992
Created attachment 177776 [details] New patch Now constructor/finalize are only implemented for classes deriving directly from Object, so the core object is added/removed to the cache only once per object.
Comment on attachment 177776 [details] New patch This looks good. I'd just put a comment somewhere explaining why we do the Object parent class thing, and noting that this works now because the classes we care about happen to be direct subclasses of Object. That way people changing this code in the future will have a chance to get it right ;) (Also, 'constructed' and the signal handling all seem to be garbage code from the old event listener era, we can remove that in a follow-up patch)
Comment on attachment 177776 [details] New patch Committed r137072: <http://trac.webkit.org/changeset/137072>