Commit Graph
78 Commits
Author SHA1 Message Date
mlemanczyk d465029358 RecyclableList<T>.RecyclableListHelpers renamed to RecyclableList<T>.Helpers 2023-06-25 20:16:30 +02:00
mlemanczyk e65a7c2230 IVersionedList<T> & IVersionedLongList<T> renamed to IRecyclableVersionedList<T> & IRecyclableVersionedLongList<T>. README.md updated. 2023-06-25 01:08:06 +02:00
mlemanczyk d830a53006 Versioned enumerator for RecyclableList implemented. Benchmarks & tests added. 2023-06-25 00:05:17 +02:00
mlemanczyk 448656fd29 IVersionedLongList<T> interface & RecyclableLongList.GetVersionedEnumerator added for use with foreach. 2023-06-25 00:04:05 +02:00
mlemanczyk 20fe0cc491 RecyclableList.Enumerator optimized. Tests fixed. 2023-06-21 02:15:09 +02:00
mlemanczyk c5406b04b7 RecyclableLongListExtensions & ListExtensions cleaned up 2023-06-17 13:09:19 +02:00
mlemanczyk e03daf337f NuGet packages updated to latest versions. 2023-06-10 09:44:20 +02:00
mlemanczyk 3ae44a0d21 RecyclableQueueTests extended 2023-06-10 09:13:32 +02:00
mlemanczyk 5b961c73d1 RecyclableLongList fixes to LastBlockWithData calculations. Tests extended. 2023-06-10 06:39:30 +02:00
mlemanczyk 21c82d80a2 Compilation error fixed. 2023-05-25 19:22:32 +02:00
mlemanczyk 1a723c6f4f RecyclableArrayList renamed to RecyclableList 2023-05-21 20:43:33 +02:00
mlemanczyk 9429218c62 RecyclableList renamed to RecyclableLongList. 2023-05-21 20:09:38 +02:00
mlemanczyk 24c2491df0 Cleanup of no longer needed classes. ParallelSynchronizationContext/-Pool renamed to IndexOfSynchronizationContext/-Pool. 2023-05-21 16:10:21 +02:00
mlemanczyk 98658e73fa The no. of max items count limited due to very long running times. 2023-05-21 15:43:33 +02:00
mlemanczyk b458f450fc RecyclableList.IndexOf performance improvements. 2023-05-21 15:42:32 +02:00
mlemanczyk 3db10d7602 RecyclableList.IndexOf parallel performance improvements. 2023-05-03 12:36:37 +02:00
mlemanczyk 52dc663ada Several hints removed & code cleaned up. 2023-05-01 17:45:03 +02:00
mlemanczyk ac6d71686c ItemRangesIterator tests re-enabled. 2023-04-30 22:04:01 +02:00
mlemanczyk aa78a2ba40 Dirty RecyclableList.IndexOf parallelization implemented. 2023-04-25 01:51:22 +02:00
mlemanczyk 098d862a3c x64 platform added. 2023-04-11 20:33:59 +02:00
mlemanczyk fdea416dc1 RecyclableList[index] tests added for get. 2023-04-10 22:37:15 +02:00
mlemanczyk 1ce91c0062 RecyclableArrayList.Remove, RecyclableArrayList.RemoveAt, RecyclableList.Remove & RecyclableList.RemoveAt performance improvements.
Support for removal of any item implemented in RecyclableList.Remove & .RemoveAt.
2023-04-07 01:09:25 +02:00
mlemanczyk 1f86ef2c59 MathUtils.IsPow2 & MathUtils.GetPow2Shift performance improvements. 2023-03-27 01:12:39 +02:00
mlemanczyk 858964edbc MathUtils added 2023-03-26 23:38:21 +02:00
mlemanczyk c7052e778f RecyclableList.SetNewLength fixed to properly initialize the list if the no. of memory blocks from array pool exceeds requested no. 2023-03-26 23:22:32 +02:00
mlemanczyk b815767d8f RecyclableArrayList & RecyclableList tests synced. 2023-03-24 20:53:54 +01:00
mlemanczyk 76598dcc7d Cleanup 2023-03-24 20:14:29 +01:00
mlemanczyk 00b059006d Compilation error fix. 2023-03-24 20:13:40 +01:00
mlemanczyk 98026f0103 No. of test cases reduced due to high execution times. 2023-03-24 20:10:49 +01:00
mlemanczyk a5a4129f1c Resolved problem with running tests all together. 2023-03-24 20:04:16 +01:00
mlemanczyk e4e63715c2 Added missing "using" 2023-03-24 19:06:01 +01:00
mlemanczyk 5a39dc87f0 Tests ordered alphabetically. 2023-03-22 00:25:16 +01:00
mlemanczyk c84cf263ca Missing using added to limit pressure on garbage collector.
RecyclableArrayList.Remove tests extended to cover more cases.

Tiny cleanup.
2023-03-22 00:07:24 +01:00
mlemanczyk cda1c2b77d Merge branch 'recyclable-block-list-added' of https://github.com/mlemanczyk/Recyclable.Collections into recyclable-block-list-added 2023-03-20 23:51:30 +01:00
mlemanczyk 277e52f701 RecyclableArrayList.Contains fixed to not throw exception when the list is empty.
RecyclableArrayList tests sorted alphabetically, simplified & extended to use the test data & validate various combinations of item counts & block sizes.
2023-03-20 23:51:23 +01:00
mlemanczyk b91c4476eb RecyclableList.BlockCount renamed => RecyclableList.ReservedBlockCount. Fixed to always include the last block.
RecyclableList.LastTakenBlockIndex property added for some scenarios.

RecyclableList.IndexOf & .LongIndexOf fixed to use the correct index.

RecyclableArrayList.AddRange(RecyclableList<T> items) fixed to use the correct index.

Some test cases excluded, where needed.
2023-03-20 23:46:50 +01:00
mlemanczyk b1e6c587c3 RecyclableList modified to respect the removal of blocks.
RecyclableList.IndexOf fixed to work in various combinations.

RecyclableList tests extended.
2023-03-20 21:48:09 +01:00
mlemanczyk 070549de9e Merge branch 'recyclable-block-list-added' of https://github.com/mlemanczyk/Recyclable.Collections into recyclable-block-list-added 2023-03-20 19:40:11 +01:00
mlemanczyk 1157e3e23d Test cases adjusted to limit execution time. 2023-03-20 19:32:08 +01:00
Marek Lemańczyk e6224ebe44 Fixed handling of empty lists in RecyclableArrayList.
Some RecyclableList properties made public to allow use in RecyclableArrayList.

Added support for RecyclableList in RecyclableArrayList.AddRange.

Additional tests added for RecyclableArrayList.
2023-03-19 20:37:18 +01:00
Marek Lemańczyk e312accfe5 Unused & confusing test data removed. 2023-03-17 02:09:16 +01:00
Marek Lemańczyk 3e8f03e59f RecyclableList tests extended & parameterized for various combinations of block sizes in source & target lists, including different no. of items. 2023-03-17 01:42:30 +01:00
Marek Lemańczyk bdf69f300d Added test cases for various block sizes & items counts. 2023-03-12 18:01:30 +01:00
Marek Lemańczyk c211fb6ee4 RecyclableList.AddRange(IEnumerable<T> source) performance improvements. Small source code cleanup. 2023-03-12 03:44:07 +01:00
Marek Lemańczyk efb393e13f Recyclable.AddRange fixed to ignore empty sources 2023-03-12 03:23:13 +01:00
Marek Lemańczyk 025cdb3073 Tiny cleanup 2023-03-11 23:19:59 +01:00
Marek Lemańczyk 25a85ec763 New tests added. AddRangeShouldAddItemsInCorrectOrder & AddRangeShouldNotOverrideItems converted to theories with [MemberData] 2023-03-11 23:16:15 +01:00
Marek Lemańczyk f08633da61 New unit tests added. 2023-03-11 20:02:58 +01:00
Marek Lemańczyk 3ce3becfbd RecyclableList performance improvements & fixes. New tests added. 2023-03-10 16:52:36 +01:00
Marek Lemańczyk 02138dfac6 New tests added for IndexOf & LongIndexOf 2023-03-05 19:19:54 +01:00