- From: Cameron McCormack <cam@mcc.id.au>
- Date: Fri, 15 Feb 2008 10:46:41 +1100
- To: "Web API WG (public)" <public-webapi@w3.org>
Anne van Kesteren: > Indeed. In another thread I requested functionality to be added to DOM > Bindings so you could indicate whether the interface is exposed or not That one was added. > or way to define what the "base" interface it is which has the same > effect but might be cleaner as it also removes the need to say > "objects implementing interface X must also implement interface XY". I didn’t add that one. Recently I implemented some DOM interfaces, including the multiple inheritance, using WebKit’s JSCore. It needed a bit of hackery (since the public JSCore API is only designed for single inheritance) but it worked in the end. That allowed user script to, for example, do this: var f = EventTarget.prototype.addEventListener; var f2 = function(evt) { /* … */ }; assert(EventTarget.prototype != Node.prototype); assert(typeof f == 'function'); assert(typeof Node.prototype.addEventListener == 'undefined'); assert(document.addEventListener == f); EventTarget.prototype.addEventListener = f2; assert(document.addEventListener == f2); -- Cameron McCormack, http://mcc.id.au/ xmpp:heycam@jabber.org ▪ ICQ 26955922 ▪ MSN cam@mcc.id.au
Received on Thursday, 14 February 2008 23:47:12 UTC