Re: [heycam/webidl] Update attribute setter/getters in various ways (#217)

domenic commented on this pull request.



> +                    (This will subsequently cause a <emu-val>TypeError</emu-val> in a few steps, if
+                    the global object does not implement |target| and [{{LenientThis}}] is not
+                    specified.)
+                    <!-- https://www.w3.org/Bugs/Public/show_bug.cgi?id=18547#c9 -->
+                1.  Otherwise, set |O| to the <emu-val>this</emu-val> value.
+                1.  If |O| is a [=platform object=], then [=perform a security check=], passing |O|,
+                    |attribute|'s [=identifier=], and "getter".
+                1.  If |O| is not a [=platform object=] that implements the interface |target|,
+                    then:
+                    1.  If |attribute| was specified with the [{{LenientThis}}]
+                        [=extended attribute=], then return <emu-val>undefined</emu-val>.
+                    1. Otherwise, [=ECMAScript/throw=] a <emu-val>TypeError</emu-val>.
+            1.  Let |R| be the result of performing the actions listed in the
+                description of |attribute| that occur on getting (or those listed in the description
+                of the inherited attribute, if this attribute is declared to
+                [=inherit its getter=]), on |O| if |O| is not <emu-val>null</emu-val>.

Well, there's no `this` formally (that's https://www.w3.org/Bugs/Public/show_bug.cgi?id=27301). The idea is not to provide anything at all; providing `undefined` isn't really correct.

-- 
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/217

Received on Thursday, 19 January 2017 21:39:56 UTC