[[Set]] and inherited readonly data properties

Mark S. Miller erights at google.com
Tue Apr 1 06:49:09 PDT 2014

On Tue, Apr 1, 2014 at 3:09 AM, Axel Rauschmayer <axel at rauschma.de> wrote:

> On 01 Apr 2014, at 4:47 , Mark S. Miller <erights at google.com> wrote:
> > Unless the committee revisits the override mistake, which seems
> unlikely, the only way to cope that I know of is to use tamperProof(obj)
> where you would have used freeze(obj).
> What library does tamperProof() come from? I can’t seem to find it in Caja.

Once Caja (or just SES) is loaded, it is at cajaVM.tamperProof.

It's defined at <
and made available on the cajaVM object at <
See also <
and <
to understand some of the intricacies of getting the initialization order
of this right for SES purposes.

Often, tamperProof is used indirectly by Caja or SES code via
cajaVM.def(obj) <
which applies tamperProof to obj, and to all objects reachable from obj via
transitive reflective property and prototype traversal.

> Thanks!
> Axel
> --
> Dr. Axel Rauschmayer
> axel at rauschma.de
> home: rauschma.de
> twitter: twitter.com/rauschma
> blog: 2ality.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20140401/ebf5edb7/attachment.html>

More information about the es-discuss mailing list