A DOM use case that can't be emulated with direct proxies

Tom Van Cutsem tomvc.be at gmail.com
Tue Dec 18 13:34:31 PST 2012


2012/12/12 Kevin Reid <kpreid at google.com>

> On Wed, Dec 12, 2012 at 12:35 PM, David Bruant <bruant.d at gmail.com> wrote:
>
>> I was a bit too strong in my statement, sorry. Let me rephrase: the
>> internal [[Target]] can't be changed, but a proxy can emulate changing of
>> "fake" target as long as what happens with this "fake" target doesn't
>> involve invariant checking.
>> That's the reason I was suggesting that WindowProxies could (maybe
>> depending on how the object reference was obtained) throw whenever
>> invariant checks are involved.
>>
>
> Exactly. So a user-defined switching proxy needs only to:
> 1. refuse to commit to any invariant (non-configurable property or
> preventExtensions)
> 2. even if its switchable-target has an invariant, do not expose that
> invariant (i.e. pretend each property is configurable)
>

Sorry for arriving late to this thread.


The solution that Kevin described is also how I would approach a
"retargetable proxy" (i.e. a proxy that can wrap different target objects
over time).
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20121218/b6323b59/attachment.html>


More information about the es-discuss mailing list