Re: [whatwg/webidl] WIP: switching maplike/setlike to use infra maps and sets (PR #1138)

@domenic commented on this pull request.

Generally looks like it's on the right track; very nice work.

I only left a few substantive comments. I think there are some editorial things but we can do those in a final pass. One more-pervasive editorial thing you might want to get done earlier is to use "`string`" instead of "string" for strings.

>  If an [=interface=] |A| is declared with
 a [=maplike declaration=], then
 there exists a number of additional properties on |A|’s
 [=interface prototype object=].
 These additional properties are described in the sub-sections below.
 
 <div algorithm>
+    To <dfn local-lt="coherency-check">coherency-check an object</dfn> |this|

IMO using |this| as a variable name is very confusing.

>  If an [=interface=] |A| is declared with
 a [=maplike declaration=], then
 there exists a number of additional properties on |A|’s
 [=interface prototype object=].
 These additional properties are described in the sub-sections below.
 
 <div algorithm>
+    To <dfn local-lt="coherency-check">coherency-check an object</dfn> |this|

The algorithm name doesn't give me a lot of insight into what this is doing. Also, it says it's checking an object but the first step is ToObject. Maybe "security-and-implements check"?

>  
-        1.  Let |O| be the <emu-val>this</emu-val> value.
-        1.  Let |name| be the name of the property – "<code>get</code>" or "<code>has</code>".
-        1.  If |O| [=is a platform object=],
-            then [=perform a security check=], passing:
-            *   the platform object |O|,
-            *   an identifier equal to |name|, and
-            *   the type "<code>method</code>".
-        1.  If |O| does not [=implement=] <var ignore>A</var>, then [=ECMAScript/throw=] a {{ECMAScript/TypeError}}.
-        1.  Let |map| be the {{ECMAScript/Map}} object that is the value of |O|’s \[[BackingMap]] [=internal slot=].
+The value of the [=function object=]’s <code class="idl">length</code> properties is the Number value <emu-val>1</emu-val>.
+
+The value of the [=function object=]’s <code class="idl">name</code> property is the String value "<code>get</code>".
+
+
+<h5 id="es-map-has">get</h5>

```suggestion
<h5 id="es-map-has">has</h5>
```

-- 
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/webidl/pull/1138#pullrequestreview-960707396

You are receiving this because you are subscribed to this thread.

Message ID: <whatwg/webidl/pull/1138/review/960707396@github.com>

Received on Tuesday, 3 May 2022 17:16:26 UTC