An alternative would be to generate code for optional args along the lines of (pseudo code): void foo(Arg1Type arg1, [Optional] Arg2Type arg2); => Arg1Type arg1 = toArg1Type(arguments[0]); if (arguments.length < 2) return impl->foo(arg1); Arg2Type arg2 = toArg2Type(arguments[1]); return impl->foo(arg1, arg2);
This would allow the C++ impl to use overloading to resolve things correctly. --Oliver On Apr 21, 2011, at 10:16 PM, Jian Li wrote: > One other way is to write custom binding code to handle this case specially. > > > On Thu, Apr 21, 2011 at 10:07 PM, Maciej Stachowiak <m...@apple.com> wrote: > > On Apr 21, 2011, at 6:29 PM, Jian Li wrote: > >> I've pinged the spec author to make it clear in the spec. What is meant in >> the spec is really that we want Blob.slice to have the same exact behavior >> as Array.slice defined in ECMAScript 5, 15.4.4.10. That is, >> Blob.slice(start) has the same result as Blob.slice(start, undefined). >> >> The current code generator scripts will convert undefined value to 0. But we >> really want to use the custom default value for Blob.slice. Do we want to >> consider adding "DefaultValue=" extended attribute support to IDL? > > I'd prefer if we can find a way to solve it that does not require diverging > our IDL dialect further from Web IDL, especially since this is the only > method likely to need the feature. Are there any other practical solutions? > > Regards, > Maciej > >> >> Thanks, >> >> Jian >> >> >> On Thu, Apr 21, 2011 at 3:38 AM, Maciej Stachowiak <m...@apple.com> wrote: >> >> On Apr 21, 2011, at 12:14 AM, Jian Li wrote: >> >> > The current File API spec says that: >> > If the end parameter is not provided (undefined), let relativeEnd be >> > size. >> >> That seems like loose wording. Parameter not provided and parameter provided >> with a value of undefined are in general not the same thing. The spec should >> be explicit about which cases it's talking about. >> >> Regards, >> Maciej >> > > > _______________________________________________ > webkit-dev mailing list > webkit-dev@lists.webkit.org > http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
_______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev