You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The upstream code uses a very object-oriented approach, where you have to create an object for your algorithm in order to use it. In many cases, this is unnecessary, and just leads to more code and increased allocations. Additionally, static method calls are slightly faster. We should retain the ability to instantiate these algorithms as objects so that it is not a breaking change and users can still swap implementations via the interfaces, but the object-based methods should delegate their state as parameters (or just call directly, if there's no state) to public static methods on these types.
This may require some reworking of the ShingleBased base class.
The benchmarks should be conditionally-compiled to include these static method calls for performance comparison, since they are not available on older versions.
Activity