[Bug 17649] Address WebIDL comments from Kyle Huey and Ms2ger

https://www.w3.org/Bugs/Public/show_bug.cgi?id=17649

Joshua Bell <jsbell@chromium.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Address WebIDL comments     |Address WebIDL comments
                   |from Kyle Huey              |from Kyle Huey and Ms2ger

--- Comment #3 from Joshua Bell <jsbell@chromium.org> ---
Adding more IDL nits from Ms2ger - some overlap with items in this issue
already, which is why I'm not filing a separate bug.

Original messages dated January 21, 2013:
http://lists.w3.org/Archives/Public/public-webapps/2013JanMar/

(1) IDBKeyRange should have static functions

>From the examples in the IDB specification (in [1], for example) and from
existing implementations, it appears that the functions on the IDBKeyRange
interface (only, lowerBound, upperBound and bound) should be static. However,
there is no actual normative requirement to that effect; instead, the IDL
snippet requires those functions to only be callable on IDBKeyRange instances.
[2]

[1]
https://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#key-generator-concept
[2]
https://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#idl-def-IDBKeyRange


(2) Event handlers

The IDB specification still uses IDL like

  [TreatNonCallableAsNull] attribute Function? onsuccess;

for its event handlers. Current practice is to use

  attribute EventHandler onsuccess;


(3) Type of IDBRequest.source

IDBRequest.source has type "object" in the IDL snippet, but the definition
claims the attribute can return null. If this is the case, the type should be
"object?", as for all nullable types.


(4) Type of IDBRequest.readyState

interface IDBRequest : EventTarget {
    // …
    readonly attribute enum           readyState;
    // …
};

However, "enum" is not a type. The correct syntax would be something like

enum IDBReadyState { "pending", "done" };

interface IDBRequest : EventTarget {
    // …
    readonly attribute IDBReadyState  readyState;
    // …
};

(5) Type of IDBCursor.source

IDBCursor.source is described as returning "object". It would be better to
return the union (IDBObjectStore or IDBIndex), to make it clear that that is
what's intended.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Tuesday, 22 January 2013 17:07:33 UTC