Skip to content

Commit 2117564

Browse files
michaelficarraljharb
authored andcommitted
Meta: bump ecmarkup to v24.2.1
1 parent af8a7e5 commit 2117564

3 files changed

Lines changed: 30 additions & 16 deletions

File tree

package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"license": "SEE LICENSE IN https://tc39.es/ecma262/#sec-copyright-and-software-license",
2525
"homepage": "https://tc39.es/ecma262/",
2626
"devDependencies": {
27-
"ecmarkup": "^24.1.0",
27+
"ecmarkup": "^24.2.1",
2828
"jsdom": "^27.0.0"
2929
}
3030
}

spec.html

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -673,7 +673,7 @@ <h1>The Syntactic Grammar</h1>
673673
<li>If the sequence of tokens can be parsed as a single instance of _n_, with no tokens left over, then:
674674
<ol>
675675
<li>We refer to that instance of _n_ (a Parse Node, unique for a given _p_) as “the _n_ that is <dfn>covered</dfn> by _p_”.</li>
676-
<li>Early error rules are applied to the _n_ that is covered by _p_ and to its descendants, as modified by further cases of "must cover".</li>
676+
<li>Early error rules are applied to the _n_ that is covered by _p_ and to its descendants, as modified by further cases of must cover.</li>
677677
</ol>
678678
</li>
679679
<li>Otherwise (if the parse fails), it is an early Syntax Error.</li>
@@ -1248,7 +1248,7 @@ <h1>The String Type</h1>
12481248
<p>The rationale behind this design was to keep the implementation of Strings as simple and high-performing as possible. If ECMAScript source text is in Normalized Form C, string literals are guaranteed to also be normalized, as long as they do not contain any Unicode escape sequences.</p>
12491249
</emu-note>
12501250
<p>In this specification, the phrase “the <dfn id="string-concatenation">string-concatenation</dfn> of _A_, _B_, ...” (where each argument is a String value, a code unit, or a sequence of code units) denotes the String value whose sequence of code units is the concatenation of the code units (in order) of each of the arguments (in order).</p>
1251-
<p>The phrase “the <dfn id="substring">substring</dfn> of _string_ from _inclusiveStart_ to _exclusiveEnd_” (where _string_ is a String value or a sequence of code units and _inclusiveStart_ and _exclusiveEnd_ are integers) denotes the String value consisting of the consecutive code units of _string_ beginning at index _inclusiveStart_ and ending immediately before index _exclusiveEnd_ (which is the empty String when _inclusiveStart_ = _exclusiveEnd_). If the "to" suffix is omitted, the length of _string_ is used as the value of _exclusiveEnd_.</p>
1251+
<p>The phrase “the <dfn id="substring">substring</dfn> of _string_ from _inclusiveStart_ to _exclusiveEnd_” (where _string_ is a String value or a sequence of code units and _inclusiveStart_ and _exclusiveEnd_ are integers) denotes the String value consisting of the consecutive code units of _string_ beginning at index _inclusiveStart_ and ending immediately before index _exclusiveEnd_ (which is the empty String when _inclusiveStart_ = _exclusiveEnd_). If the “to” suffix is omitted, the length of _string_ is used as the value of _exclusiveEnd_.</p>
12521252
<p>
12531253
The phrase “<dfn id="ASCII-word-characters">the ASCII word characters</dfn>” denotes the following String value, which consists solely of every letter and number in the Unicode Basic Latin block along with U+005F (LOW LINE):<br>
12541254
*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_"*.<br>
@@ -19036,7 +19036,7 @@ <h1>Static Semantics: Early Errors</h1>
1903619036
</ul>
1903719037
<emu-note>
1903819038
<p>Elsewhere in this specification, there are early error rules that, under certain circumstances, require that a |LeftHandSideExpression| must cover an |AssignmentPattern|. Consequently, |ObjectLiteral| serves as a cover grammar for |ObjectAssignmentPattern|. The |CoverInitializedName| production is necessary to fully cover |AssignmentProperty|, but is not valid within an actual object initializer.</p>
19039-
<p>Specifically, in a context where an actual |ObjectLiteral| is expected, the above early error rule prevents the use of |CoverInitializedName|. But in cases where |ObjectLiteral| is used as a cover grammar, the semantics of "must cover" state that the Parse Nodes within the |ObjectLiteral| are not subject to early error rules, and so |CoverInitializedName| is allowed.</p>
19039+
<p>Specifically, in a context where an actual |ObjectLiteral| is expected, the above early error rule prevents the use of |CoverInitializedName|. But in cases where |ObjectLiteral| is used as a cover grammar, the semantics of must cover state that the Parse Nodes within the |ObjectLiteral| are not subject to early error rules, and so |CoverInitializedName| is allowed.</p>
1904019040
<p>For example, consider:</p>
1904119041
<pre><code class="javascript">
1904219042
let o = {f = 1};
@@ -38645,10 +38645,17 @@ <h1>
3864538645
1. If _regexpRecord_.[[UnicodeSets]] is *false* or every CharSetElement of _cs_ consists of a single character (including if _cs_ is empty), return CharacterSetMatcher(_regexpRecord_, _cs_, _cc_.[[Invert]], _direction_).
3864638646
1. Assert: _cc_.[[Invert]] is *false*.
3864738647
1. Let _listOfMatchers_ be an empty List of Matchers.
38648-
1. For each CharSetElement _s_ in _cs_ containing more than 1 character, iterating in descending order of length, do
38649-
1. Let _cs2_ be a one-element CharSet containing the last code point of _s_.
38648+
1. Let _csSequences_ be a new empty List.
38649+
1. For each CharSetElement _s_ of _cs_, do
38650+
1. If the length of _s_ > 1, append _s_ to _csSequences_.
38651+
1. Sort _csSequences_ according to the length of each CharSetElement in descending order.
38652+
1. For each CharSetElement _s_ of _csSequences_, do
38653+
1. Assert: _s_ is a sequence of 2 or more code points.
38654+
1. Let _remaining_ be a List consisting of the code points of _s_.
38655+
1. Let _cs2_ be a one-element CharSet containing the last element of _remaining_.
3865038656
1. Let _m2_ be CharacterSetMatcher(_regexpRecord_, _cs2_, *false*, _direction_).
38651-
1. For each code point _c1_ in _s_, iterating backwards from its second-to-last code point, do
38657+
1. Remove the last element of _remaining_.
38658+
1. For each code point _c1_ of _remaining_, in reverse List order, do
3865238659
1. Let _cs1_ be a one-element CharSet containing _c1_.
3865338660
1. Let _m1_ be CharacterSetMatcher(_regexpRecord_, _cs1_, *false*, _direction_).
3865438661
1. Set _m2_ to MatchSequence(_m1_, _m2_, _direction_).
@@ -38726,10 +38733,17 @@ <h1>
3872638733
1. Let _cs_ be CompileToCharSet of |CharacterClassEscape| with argument _regexpRecord_.
3872738734
1. If _regexpRecord_.[[UnicodeSets]] is *false* or every CharSetElement of _cs_ consists of a single character (including if _cs_ is empty), return CharacterSetMatcher(_regexpRecord_, _cs_, *false*, _direction_).
3872838735
1. Let _listOfMatchers_ be an empty List of Matchers.
38729-
1. For each CharSetElement _s_ in _cs_ containing more than 1 character, iterating in descending order of length, do
38730-
1. Let _cs2_ be a one-element CharSet containing the last code point of _s_.
38736+
1. Let _csSequences_ be a new empty List.
38737+
1. For each CharSetElement _s_ of _cs_, do
38738+
1. If the length of _s_ > 1, append _s_ to _csSequences_.
38739+
1. Sort _csSequences_ according to the length of each CharSetElement in descending order.
38740+
1. For each CharSetElement _s_ of _csSequences_, do
38741+
1. Assert: _s_ is a sequence of 2 or more code points.
38742+
1. Let _remaining_ be a List consisting of the code points of _s_.
38743+
1. Let _cs2_ be a one-element CharSet containing the last element of _remaining_.
3873138744
1. Let _m2_ be CharacterSetMatcher(_regexpRecord_, _cs2_, *false*, _direction_).
38732-
1. For each code point _c1_ in _s_, iterating backwards from its second-to-last code point, do
38745+
1. Remove the last element of _remaining_.
38746+
1. For each code point _c1_ of _remaining_, in reverse List order, do
3873338747
1. Let _cs1_ be a one-element CharSet containing _c1_.
3873438748
1. Let _m1_ be CharacterSetMatcher(_regexpRecord_, _cs1_, *false*, _direction_).
3873538749
1. Set _m2_ to MatchSequence(_m1_, _m2_, _direction_).
@@ -39263,7 +39277,7 @@ <h1>
3926339277
1. Let _otherSet_ be a new empty CharSet.
3926439278
1. For each CharSetElement _s_ of _charSet_, do
3926539279
1. Let _t_ be an empty sequence of characters.
39266-
1. For each single code point _codePoint_ in _s_, do
39280+
1. For each single code point _codePoint_ of _s_, do
3926739281
1. Append scf(_codePoint_) to _t_.
3926839282
1. Add _t_ to _otherSet_.
3926939283
1. Return _otherSet_.
@@ -50166,7 +50180,7 @@ <h1>The AsyncDisposable Interface</h1>
5016650180
a function object that returns a promise
5016750181
</td>
5016850182
<td>
50169-
<p>Invoking this method notifies the AsyncDisposable object that the caller does not intend to continue to use this object. This method should perform any necessary logic to perform explicit clean-up of the resource including, but not limited to, file system handles, streams, host objects, etc. When the promise returned by this method is rejected, it typically means that the resource could not be explicitly freed. An AsyncDisposable object is not considered "disposed" until the resulting Promise has been fulfilled.</p>
50183+
<p>Invoking this method notifies the AsyncDisposable object that the caller does not intend to continue to use this object. This method should perform any necessary logic to perform explicit clean-up of the resource including, but not limited to, file system handles, streams, host objects, etc. When the promise returned by this method is rejected, it typically means that the resource could not be explicitly freed. An AsyncDisposable object is not considered disposed until the resulting Promise has been fulfilled.</p>
5017050184
<p>Invoking this method more than once on the same object should avoid repeating clean-up logic against the already-disposed resource and should not throw an exception or return a rejected promise, even if an exception was thrown or a rejected promise was returned on the first invocation. However, this requirement is not enforced.</p>
5017150185
<p>When using an AsyncDisposable object with an `await using` declaration, the resource will be automatically disposed when the |Block| or |Module| immediately containing the declaration has been evaluated.</p>
5017250186
</td>

0 commit comments

Comments
 (0)