FabricMC / Enigma

This is a fork of cuchaz's Enigma, a deobfuscation/remapping tool for Java software.
GNU Lesser General Public License v3.0
426 stars 112 forks source link

Optimize NestedPackages by deferring sorting #513

Open BasiqueEvangelist opened 1 year ago

BasiqueEvangelist commented 1 year ago

NestedPackages uses a linear search to add in new entries right now. Unsurprisingly, this is really bad when there are a lot of entries. This PR changes the tree node type to use a non-synchronized tree node class that defers sorting, which makes adding nodes a lot faster.

This is basically just a port of QuiltMC/Enigma#84 (my own PR) to Fabric Enigma.