Ron Buckton (2014-08-12T02:03:26.000Z)
domenic at domenicdenicola.com (2014-08-18T18:36:21.005Z)
That should have been @@isValue (Set/Map) and @@isKey (Map. The downside of having an @@isValue filter is that there are likely still ways to get around it (subclasses could define their own, create a new object whose [[Prototype]] is an instance of your subclass with its own @@isValue, etc.). Too bad there's no way to *really* seal a member. The options argument could be a definitive solution, though. The Set constructor could use the provided options to set an internal slot for a value filter. There's possibly still a hole that can't be closed due to constructor/prototype tricks.