Re: [whatwg/dom] Add AbortSignal.any() (PR #1152)

@annevk commented on this pull request.



> @@ -1802,6 +1806,11 @@ interface AbortSignal : EventTarget {
  <dd>Returns an {{AbortSignal}} instance whose <a for=AbortSignal>abort reason</a> is set to
  <var>reason</var> if not undefined; otherwise to an "{{AbortError!!exception}}" {{DOMException}}.
 
+ <dt><code>AbortSignal . <a method for=AbortSignal lt=any(signals)>any</a>(<var>signals</var>)</code>
+ <dd>Returns an {{AbortSignal}} instance which will be aborted once any of <var>signals</var> is
+ aborted. Its <a for=AbortSignal>abort reason</a> will be set to whichever one of <var>signals</var>
+ cause it to be aborted.

caused? (Not entirely sure.)

> @@ -1828,6 +1837,17 @@ JavaScript value. It is undefined unless specified otherwise.
 <a for=/>set</a> of algorithms which are to be executed when it is [=AbortSignal/aborted=]. Unless
 specified otherwise, its value is the empty set.
 
+<p>An {{AbortSignal}} object has a <dfn for="AbortSignal">composite</dfn> (a boolean), which is
+initially false.
+
+<p>An {{AbortSignal}} object has associated <dfn for=AbortSignal>source signals</dfn>, which is a
+<a for=/>set</a> of weak references to {{AbortSignal}}s that the object is dependent on for its

I would prefer AbortSignal objects over pluralizing the name of the object. (Here and elsewhere.)

> + <li><p><a for=set>Empty</a> <var>signal</var>'s <a for=AbortSignal>dependent signals</a>.
+
+ <li><p><a for=set>Empty</a> <var>signal</var>'s <a for=AbortSignal>source signals</a>.

So technically we don't have to do this, right? In https://github.com/whatwg/dom/issues/1159#issuecomment-1428011868 we "decided" to not do this for mutation observers so maybe we probably shouldn't do it here either.

>    </ol>
+ <li>Return <var>resultSignal</var>.

Missing newline before this.

>  </ol>
 
 
+<h4 id=abort-signal-garbage-collection>Garbage collection</h4>
+
+<p>A [=AbortSignal/composite=] {{AbortSignal}} object must not be garbage collected while its
+[=AbortSignal/source signals=] is non-empty unless it has no registered event listeners for its

Maybe "and it has registered ... or its abort algorithms is non-empty"?

-- 
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/dom/pull/1152#pullrequestreview-1323923830
You are receiving this because you are subscribed to this thread.

Message ID: <whatwg/dom/pull/1152/review/1323923830@github.com>

Received on Friday, 3 March 2023 14:44:13 UTC