On Sun, 13 Apr 2025, Martin Frb via fpc-devel wrote:

On 13/04/2025 20:43, Michael Van Canneyt via fpc-devel wrote:

But why don't you simply use a TList<TRange> with your custom comparer ?
You can then use List.BinarySearch() and retrieve the existing TRange at once?

Your solution seems quite hackish to me. So if you really need it in TDictionary, make it protected as you indicated...

Because there may be several 10000 entries (ok extreme case, I get 40000 entries, after scanning several 100 files).

And entries are added over time.
When adding a new entry, the list must be sorted again. That is the slow part.

Hm. I assumed a 'Sorted' property as in TStringList,
which should insert on the correct spot if you do an add, but apparently the generic TList does not have this :-(

Michael.
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to