I addressed some of these as well but didn't put it up here yet. Semantics
(this is all on the gist as well in more readable form)


* Objects keep an internal map of protector *Name* objects to keys.
* A protector can only protect one key per object.
* Each key on an object can only have one protector (this isn't necessary
but seems preferable).
* The key a protector protects can vary between objects.
* The protector for an object's key can be changed.
* A non-writable property's value can always be changed via the protector
(but not direct assignment).
* Setting an object to non-configurable makes it non-protected (they are
mutually exclusive and configurability trumps).
* By extension, a non-configurable property cannot become protected.
* For Accessors, the __public__ property of the protector is passed to the
setter (matches how private Names work with Proxies).
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to