- From: Timothy Gu <notifications@github.com>
- Date: Mon, 11 Dec 2017 09:42:56 +0000 (UTC)
- To: heycam/webidl <webidl@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <heycam/webidl/pull/494/review/82431284@github.com>
TimothyGu commented on this pull request.
> - 1. Otherwise, if |A| is declared to inherit from another
- interface, then return the
- [=interface prototype object=]
- for the inherited interface.
- 1. Otherwise, if |A| is declared with the [{{LegacyArrayClass}}]
- extended attribute, then return {{%ArrayPrototype%}}.
- 1. Otherwise, return {{%ObjectPrototype%}}.
+ 1. Let |proto| be null.
+ 1. If |interface| is declared with the [{{Global}}] [=extended attribute=],
+ and |interface| [=support named properties|supports named properties=],
+ then set |proto| to the [=named properties object=] of |interface|,
+ as defined in [[#named-properties-object]].
+ 1. Otherwise, if |interface| is declared to inherit from another interface,
+ then set |proto| to the [=interface prototype object=] of the inherited interface.
+ 1. Otherwise, if |interface| is declared with the [{{LegacyArrayClass}}] [=extended attribute=],
+ then set |proto| to |realm|.\[[Intrinsics]].\[[{{%ArrayPrototype%}}]].
This becomes rendered as "<var>realm</var>.[[Intrinsics]].\[[%ArrayPrototype%]]"
> + 1. Let |proto| be null.
+ 1. If |interface| is declared with the [{{Global}}] [=extended attribute=],
+ and |interface| [=support named properties|supports named properties=],
+ then set |proto| to the [=named properties object=] of |interface|,
+ as defined in [[#named-properties-object]].
+ 1. Otherwise, if |interface| is declared to inherit from another interface,
+ then set |proto| to the [=interface prototype object=] of the inherited interface.
+ 1. Otherwise, if |interface| is declared with the [{{LegacyArrayClass}}] [=extended attribute=],
+ then set |proto| to |realm|.\[[Intrinsics]].\[[{{%ArrayPrototype%}}]].
+ 1. Otherwise, set |proto| to |realm|.\[[Intrinsics]].\[[{{%ObjectPrototype%}}]].
+ 1. Let |interfaceProtoObj| be [=!=] <a abstract-op>ObjectCreate</a>(|proto|).
+ 1. Let |unscopableObject| be null.
+ 1. If |interface| has any [=member=] declared with the [{{Unscopable}}] [=extended attribute=],
+ then:
+ 1. Set |unscopableObject| to be [=!=]
+ <a abstract-op>ObjectCreate</a>({{%ObjectPrototype%}} of |realm|).
Still needs conversion.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/heycam/webidl/pull/494#pullrequestreview-82431284
Received on Monday, 11 December 2017 09:43:21 UTC