W3C home > Mailing lists > Public > public-script-coord@w3.org > October to December 2012

Re: IndexedDB: undefined parameters

From: Boris Zbarsky <bzbarsky@MIT.EDU>
Date: Wed, 10 Oct 2012 22:26:11 -0400
Message-ID: <50762E43.7040905@mit.edu>
To: Brendan Eich <brendan@mozilla.org>
CC: Jonas Sicking <jonas@sicking.cc>, Robert Ginda <rginda@chromium.org>, Alec Flett <alecflett@chromium.org>, public-webapps@w3.org, "public-script-coord@w3.org" <public-script-coord@w3.org>
On 10/10/12 10:15 PM, Brendan Eich wrote:
> Boris Zbarsky wrote:
>> Should "undefined", when provided for a dictionary entry, also be
>> treated as "not present"?  That is, should passing a dictionary like so:
>>
>>   { a: undefined }
>>
>> be equivalent to passing a dictionary that does not contain "a" at all?
>
> ES6 says no. That's a bridge too far. Parameter lists are not objects!

Well, the thing is, dictionaries can have default values.  So given this 
IDL:

   dictionary Dict {
     long a = 2;
   };
   void foo(Dict arg);

and then a call like so:

   foo({ a: undefined });

should the callee see the value of "a" as 2 or 0?

Note that this is not quite the same question as this one:

Given this IDL:

   dictionary Dict {
     long a;
   };
   void foo(Dict arg);

and then a call like so:

   foo({ a: undefined });

should the callee see the value of "a" as 0 or "nor present"?

Right now WebIDL says "0" for both of these cases.  I'm fine with that, 
generally; just wanted to make sure that was what we really wanted.

-Boris
Received on Thursday, 11 October 2012 02:26:42 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 May 2013 19:30:07 UTC