Re: Named constant as default value

Seo Sanghyeon:
> 2012-04-05 working draft of DOM4 (same in editor's draft) introduced:
> http://www.w3.org/TR/dom/
>
> interface Document {
>    NodeIterator createNodeIterator(Node root, optional unsigned long
> whatToShow = SHOW_ALL, optional NodeFilter? filter = null);
> };
>
> SHOW_ALL is 0xFFFFFFFF, but it seems such use of named constant
> as default value is not allowed by WebIDL grammar, either working draft
> or editor's draft.
>
> Which of the following is true?
> 1. WebIDL specification should be updated.
> 2. DOM4 specification should be updated.
> 3. It is okay for DOM4 specifcation WebIDL to be non-conforming.
> It is for illustrative purpose.

Either (1) and (2), or just (2).  If we wanted to allow the constant to 
be used here, it'd need to be NodeFilter.SHOW_ALL or 
NodeFilter::SHOW_ALL.  But given that we're trying to move away from 
numeric constants, I'm not sure if it's worth allowing them to be used 
as default values.

Received on Saturday, 14 April 2012 13:08:15 UTC