- From: Domenic Denicola <notifications@github.com>
- Date: Thu, 12 Mar 2020 12:42:35 -0700
- To: heycam/webidl <webidl@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <heycam/webidl/pull/840/review/373849569@github.com>
domenic commented on this pull request. > + 1. Perform [=!=] [$CreateDataProperty$](|handler|, "<code>defineProperty</code>", |defineProperty|). + 1. Let |deleteProperty| be [=!=] [$CreateBuiltinFunction$](the steps from [[#es-observable-array-deleteProperty]], « », |realm|). + 1. Perform [=!=] [$CreateDataProperty$](|handler|, "<code>deleteProperty</code>", |deleteProperty|). + 1. Let |get| be [=!=] [$CreateBuiltinFunction$](the steps from [[#es-observable-array-get]], « », |realm|). + 1. Perform [=!=] [$CreateDataProperty$](|handler|, "<code>get</code>", |get|). + 1. Let |getOwnPropertyDescriptor| be [=!=] [$CreateBuiltinFunction$](the steps from [[#es-observable-array-getOwnPropertyDescriptor]], « », |realm|). + 1. Perform [=!=] [$CreateDataProperty$](|handler|, "<code>getOwnPropertyDescriptor</code>", |getOwnPropertyDescriptor|). + 1. Let |has| be [=!=] [$CreateBuiltinFunction$](the steps from [[#es-observable-array-has]], « », |realm|). + 1. Perform [=!=] [$CreateDataProperty$](|handler|, "<code>has</code>", |has|). + 1. Let |ownKeys| be [=!=] [$CreateBuiltinFunction$](the steps from [[#es-observable-array-ownKeys]], « », |realm|). + 1. Perform [=!=] [$CreateDataProperty$](|handler|, "<code>ownKeys</code>", |ownKeys|). + 1. Let |preventExtensions| be [=!=] [$CreateBuiltinFunction$](the steps from [[#es-observable-array-preventExtensions]], « », |realm|). + 1. Perform [=!=] [$CreateDataProperty$](|handler|, "<code>preventExtensions</code>", |preventExtensions|). + 1. Let |set| be [=!=] [$CreateBuiltinFunction$](the steps from [[#es-observable-array-set]], « », |realm|). + 1. Perform [=!=] [$CreateDataProperty$](|handler|, "<code>set</code>", |set|). + 1. Return [=!=] [$ProxyCreate$](|innerArray|, |handler|). If we can think of some even-slightly-compelling reason to prevent setting the prototype, I'm happy to add it. In general I think JS engine folks desperately wish Array instances could not get their prototypes changed, as that would make the VM work easier in various ways, but at least the implementation-side reasoning doesn't apply here... -- 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/840#discussion_r391850375
Received on Thursday, 12 March 2020 19:42:47 UTC