Bug 16440 - interface prototype object.
interface prototype object.
Status: RESOLVED FIXED
Product: WebAppsWG
Classification: Unclassified
Component: WebIDL
unspecified
PC All
: P2 normal
: ---
Assigned To: Cameron McCormack
public-webapps-bugzilla
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-03-19 19:59 UTC by Marcos Caceres
Modified: 2012-03-21 23:35 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marcos Caceres 2012-03-19 19:59:43 UTC
The spec reads: 

"The interface object for a non-callback interface must also have a property named “prototype” with attributes  { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false } whose value is an object called the interface prototype object."

I think the above is a statement of fact, and not a conformance requirement. It's also a bit ambiguous. Can it be rewritten as :

The interface prototype object for a non-callback interface has a property named “prototype” with attributes  { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false } and whose [[Value]] is of type "Object"."
Comment 1 Cameron McCormack 2012-03-21 23:35:06 UTC
You're right that interface objects will have a prototype property regardless, just due to the fact that they are Function objects.  But I think that interface objects for callback interfaces shouldn't be Function objects -- it'd probably be strange if they are, given that they're required not to have a prototype property and really just exist as a place to put constants.

I've reworded:

  http://dev.w3.org/cvsweb/2006/webapi/WebIDL/Overview.xml.diff?r1=1.492;r2=1.493;f=h