Re: Question about implements statements

On 6/18/12 6:56 PM, Travis Leithead wrote:
> It seems to me, that an implementer must keep track of which API sets get mixed-in to what objects, and configure the "this" validator of each API to only accept instances that match those target objects. Everything else must throw.
>
> As a spec author, if I mix in some set of functionality onto my new interface, I expect that those APIs that I mixed in will work with instances of my new object.

Hmm.  I'm not quite sure that you're answering my question.

Again, my question is this, and I will try to reduce confusion by using 
methods instead of attributes.  Given this IDL:

   [NoInterfaceObject]
   interface Mixin {
     void doSomething();
   };

   [Constructor=()]
   interface X {};
   X implements Mixin;

   [Constructor=()]
   interface Y {};
   Y implements Mixin;

and this script:

   x = new X();
   y = new Y();
   x.doSomething.call(y);

should the call throw or should it do the same thing as y.doSomething()?

For that matter, should x.doSomething == y.doSomething test true or 
false?  Even _that_ is not obvious from the spec, now that I read it 
again.  I had initially read it as testing false, but now I'm not quite 
sure.  What exactly does it mean to have "a copy of each property"? 
What gets copied?

-Boris

Received on Tuesday, 19 June 2012 03:19:11 UTC