Re: partial interfaces, [NoInterfaceObject]

On Fri, 14 Feb 2014, Boris Zbarsky wrote:
> On 2/14/14 2:29 PM, Ian Hickson wrote:
> > On Fri, 14 Feb 2014, Boris Zbarsky wrote:
> > > On 2/14/14 12:51 PM, Ian Hickson wrote:
> > > > These are black-box indistinguishable, as far as I understand.
> > > 
> > > That .... depends.  If there's a method around that takes a 
> > > NavigatorGeolocation parameter, that's a reasonable thing to do with 
> > > the "implements" approach but not the partial interface approach.
> > 
> > Sure. I'm talking exclusively about the [NoInterfaceObject] case, 
> > though,
> 
> Yes, so am I.
> 
> I guess the "implements" case with a NavigatorGeolocation parameter 
> somewhere is not black-box distinguishable from the partial interface 
> case and a union type parameter, except for the error message the 
> browser will produce...

In the case of Navigator*, I don't understand how the argument can be 
distinguisable. There's only one type of object per environment that 
implements Navigator*.

I agree that in the generic case you can certainly make them 
distinguishable if you want. But you have to do that on purpose.

-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

Received on Friday, 14 February 2014 20:42:00 UTC