Upcoming proposal of class fields[1] requires private fields. The easiest way to implement it is adding a property with specially marked symbols. Currently, we have private symbols, which is used for internal use cases, and managed in the hash table. But this proposal will encourage users to create such private symbols more and more. So, I think introducing notion of Private and Internal into WTF SymbolImpl is simpler. We do not need to look up value from private symbol hash table no longer. SymbolImpl knows that it is a private/internal/public symbol. [1]: https://github.com/tc39/proposal-class-fields
(In reply to Yusuke Suzuki from comment #0) > Upcoming proposal of class fields[1] requires private fields. > The easiest way to implement it is adding a property with specially marked > symbols. > Currently, we have private symbols, which is used for internal use cases, > and managed in the hash table. > But this proposal will encourage users to create such private symbols more > and more. > > So, I think introducing notion of Private and Internal into WTF SymbolImpl > is simpler. > We do not need to look up value from private symbol hash table no longer. > SymbolImpl knows that it is a private/internal/public symbol. > > [1]: https://github.com/tc39/proposal-class-fields Note that class field proposal is now stage 3.
Created attachment 316640 [details] Patch
Created attachment 316645 [details] Patch
Comment on attachment 316645 [details] Patch Clearing flags on attachment: 316645 Committed r220053: <http://trac.webkit.org/changeset/220053>
All reviewed patches have been landed. Closing bug.
<rdar://problem/33618567>
*** Bug 167574 has been marked as a duplicate of this bug. ***