|
11 | 11 | <head> |
12 | 12 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |
13 | 13 | <title>Web IDL (Second Edition)</title> |
14 | | - <meta name="revision" content="$Id: Overview.html,v 1.565 2012-11-28 22:22:15 cmccorma Exp $" /> |
| 14 | + <meta name="revision" content="$Id: Overview.html,v 1.566 2012-11-28 22:47:53 cmccorma Exp $" /> |
15 | 15 | <link rel="stylesheet" href="WebIDL.css" type="text/css" /> |
16 | 16 | <script src="section-links.js" type="application/ecmascript"></script> |
17 | 17 | <script src="dfn.js" type="application/ecmascript"></script> |
@@ -1557,9 +1557,6 @@ <h4>3.2.3. Operations</h4> |
1557 | 1557 | then the identifier <span class="rfc2119">MUST</span> |
1558 | 1558 | identify an interface, dictionary, <a class="dfnref" href="#dfn-enumeration">enumeration</a>, |
1559 | 1559 | <a class="dfnref" href="#dfn-callback-function">callback function</a> or <a class="dfnref" href="#dfn-typedef">typedef</a>. |
1560 | | - If the return type is an <a class="dfnref" href="#dfn-identifier">identifier</a> |
1561 | | - not followed by <code>?</code>, then the identifier <span class="rfc2119">MUST</span> |
1562 | | - identify any one of those definitions or a <a class="dfnref" href="#dfn-dictionary">dictionary</a>. |
1563 | 1560 | </p> |
1564 | 1561 | <p> |
1565 | 1562 | An operation’s arguments (matching <a class="sym" href="#prod-ArgumentList">ArgumentList</a>) |
@@ -4052,11 +4049,8 @@ <h3>3.3. Dictionaries</h3> |
4052 | 4049 | is an <a class="dfnref" href="#dfn-identifier">identifier</a> |
4053 | 4050 | followed by <code>?</code>, then the identifier |
4054 | 4051 | <span class="rfc2119">MUST</span> identify an |
4055 | | - interface, <a class="dfnref" href="#dfn-enumeration">enumeration</a>, |
| 4052 | + interface, dictionary, <a class="dfnref" href="#dfn-enumeration">enumeration</a>, |
4056 | 4053 | <a class="dfnref" href="#dfn-callback-function">callback function</a> or <a class="dfnref" href="#dfn-typedef">typedef</a>. |
4057 | | - If the dictionary member type is an identifier |
4058 | | - not followed by <code>?</code>, then the the identifier <span class="rfc2119">MUST</span> |
4059 | | - identify any one of those definitions or a <a class="dfnref" href="#dfn-dictionary">dictionary</a>. |
4060 | 4054 | </p> |
4061 | 4055 | <pre class="syntax">dictionary <i>identifier</i> { |
4062 | 4056 | <i>type</i> <i>identifier</i>; |
@@ -5609,12 +5603,16 @@ <h4>3.10.22. Nullable types — <var>T</var>?</h4> |
5609 | 5603 | to be a member of its set of values. <a class="dfnref" href="#dfn-nullable-type">Nullable types</a> |
5610 | 5604 | are represented in IDL by placing a <span class="char">U+003F QUESTION MARK ("?")</span> |
5611 | 5605 | character after an existing type. The inner type <span class="rfc2119">MUST NOT</span> |
5612 | | - be <a class="idltype" href="#idl-any">any</a>, a <a href="#idl-dictionary">dictionary type</a>, |
| 5606 | + be <a class="idltype" href="#idl-any">any</a>, |
5613 | 5607 | another nullable type, or a <a class="dfnref" href="#dfn-union-type">union type</a> |
5614 | 5608 | that itself has <a class="dfnref" href="#dfn-includes-a-nullable-type">includes a nullable type</a> |
5615 | 5609 | or has a dictionary type as one of its |
5616 | 5610 | <a class="dfnref" href="#dfn-flattened-member-type">flattened member types</a>. |
5617 | 5611 | </p> |
| 5612 | + <div class="note"><div class="noteHeader">Note</div> |
| 5613 | + <p>Although dictionary types can in general be nullable, they cannot when used |
| 5614 | + as the type of an operation argument.</p> |
| 5615 | + </div> |
5618 | 5616 | <p> |
5619 | 5617 | Nullable type constant values in IDL are represented in the same way that |
5620 | 5618 | constant values of their <a class="dfnref" href="#dfn-inner-type">inner type</a> |
@@ -12971,8 +12969,7 @@ <h2>C. Changes</h2> |
12971 | 12969 | <li> |
12972 | 12970 | <p> |
12973 | 12971 | Clarified that dictionaries may not be nullable when used as |
12974 | | - the type of a dictionary member, operation return type or |
12975 | | - operation argument. |
| 12972 | + the type of an operation argument. |
12976 | 12973 | </p> |
12977 | 12974 | </li> |
12978 | 12975 | <li> |
|
0 commit comments