On Thu, 9 Feb 2023 19:37:03 GMT, liach <d...@openjdk.org> wrote: > Just curious, how does this enum set change affect the performance of > construction of regular sets via Set.of calls?
See `ImmutableCollections.setFromArray`, it relies on the fact that `EnumSet.copyOf` will throw a `ClassCastException` if the elements are not enum constants of a same enum class. Trying to catch an exception is a bit expensive (so maybe I can optimize that). > On the JBS there's https://bugs.openjdk.org/browse/JDK-8145048 which appears > to fit your changes. I only enhanced `EnumSet`, but not `EnumMap` (yet) so I don't think it fits my changes. > Just took a peek again. Besides the critical error of not throwing IAE for > duplicate inputs (which you should probably add new test cases for), I think > the 2 implementations share the same `toArray` `hashCode`, and the `contains` > logic can be pulled to call an abstract `contains(int ordinal)` instead. @liach Thanks for reviewing. I've fixed the issues you've mentioned. > Have you submitted an issue at https://bugreport.java.com/bugreport/ ? It > will show up a few days later on the JBS. If not, I can create an issue on > the JBS for you too as long as you provide a prompt. No I haven't. Submit one for me please. Thanks! ------------- PR: https://git.openjdk.org/jdk/pull/12498