- From: Ms2ger <notifications@github.com>
- Date: Mon, 11 Feb 2019 08:01:58 -0800
- To: heycam/webidl <webidl@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <heycam/webidl/pull/635/review/202187656@github.com>
Ms2ger commented on this pull request.
> @@ -12349,12 +12363,60 @@ It is the responsibility of specifications using Web IDL to state
which global environment (or, by proxy, which global object) each platform
object is associated with.
+<div algorithm>
+ To <dfn export lt="new|create|create a new|create an object implementing|create an object
+ implementing the interface">create an object implementing the interface</dfn> |interface| in the
+ Realm |realm|, with optional `new.target` value |newTarget|, perform the following steps:
+
+ 1. Assert: |interface| is [=exposed=] in |realm|.
+ 1. Let prototype be the [=interface prototype object=] for |interface| in
+ |realm|.
+ 1. If |newTarget| is provided, then:
+ 1. Issue: If we just pass {{NewTarget}} through in a constructor, would this not
+ always be defined (sometimes to the [=interface object=] itself)?
I still think that pulling the NewTarget from the ambient algorithm makes this unnecessarily hard to follow. Alternative proposal: when passing a NewTarget, we derive the realm from that. That at least means that specs defining constructors don't need to think about realms there.
--
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/635#discussion_r255572315
Received on Monday, 11 February 2019 16:02:19 UTC