- From: Marcos Caceres <marcosc@w3.org>
- Date: Tue, 29 Jun 2021 10:40:10 +1000
- To: spec-prod <spec-prod@w3.org>
Hi ReSpec users!
Tl;dr: internal slots must now explicitly point to a WebIDL interface. ReSpec will report an error otherwise.
If you don't know what an "internal slot" is (you can learn about them at [1]!), or your spec doesn't use WebIDL, please disregard this email.
## What's changed?
From v26.9.1, we require all internal slots to be explicitly associated with a WebIDL interface. So, this will no longer work:
```
{{ [[internalSlot]] }}
```
You must now do:
```
{{ MyInterface[[internalSlot]] }}
```
Or, for internal methods:
```
{{ MyInterface[[internalMethod]](foo, bar, baz) }}
```
Similarly, when defining an internal slot, you must explicitly associate an internal slot with an interface:
```
<dfn data-dfn-for="MyInterface">[[\InternalSlot]]</dfn>
```
Or for internal methods:
```
<dfn data-dfn-for="MyInterface">[[\InternalMethod]](foo, bar, baz)</dfn>
```
As always, give us a shout if you encounter any issues or need help!
[1] https://medium.com/jspoint/what-are-internal-slots-and-internal-methods-in-javascript-f2f0f6b38de
Received on Tuesday, 29 June 2021 00:40:25 UTC