Answered the Object.observe part of this. Basically we treat these
accessor-backed data properties just the same as API-level accessor-backed data properties, and thus we don't want to notify about changes to them in general.
Instead, your accessor needs to call EnqueueChangeRecord.


https://codereview.chromium.org/960343002/diff/80001/test/mjsunit/es7/object-observe.js
File test/mjsunit/es7/object-observe.js (right):

https://codereview.chromium.org/960343002/diff/80001/test/mjsunit/es7/object-observe.js#newcode1146
test/mjsunit/es7/object-observe.js:1146: (obj instanceof Function &&
prop === "name")
On 2015/02/26 21:26:24, arv wrote:
Adam, do you know why this is needed?

Because this sort of "internal" accessor needs to do its own
"notifying". See SetFunctionPrototype for an example.

https://codereview.chromium.org/960343002/diff/120001/src/accessors.cc
File src/accessors.cc (right):

https://codereview.chromium.org/960343002/diff/120001/src/accessors.cc#newcode1151
src/accessors.cc:1151: }
You're going to want an EnqueueChangeRecord call here similar to the one
for SetFunctionPrototype.

https://codereview.chromium.org/960343002/

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to