13 instantiations of ImmutableSegmentedList
Microsoft.CodeAnalysis (13)
ImmutableSegmentedList`1.cs (6)
74public static readonly ImmutableSegmentedList<T> Empty = new(new SegmentedList<T>()); 146return new ImmutableSegmentedList<T>(list); 175return new ImmutableSegmentedList<T>(list); 207=> new ImmutableSegmentedList<TOutput>(_list.ConvertAll(converter)); 230=> new ImmutableSegmentedList<T>(_list.FindAll(match)); 298return new ImmutableSegmentedList<T>(self._list.GetRange(index, count));
ImmutableSegmentedList`1+PrivateInterlocked.cs (3)
23return new ImmutableSegmentedList<T>(list); 32return new ImmutableSegmentedList<T>(list); 41return new ImmutableSegmentedList<T>(list);
ImmutableSegmentedList`1+ValueBuilder.cs (4)
124=> new ImmutableSegmentedList<TOutput>(ReadOnlyList.ConvertAll(converter)); 142=> new ImmutableSegmentedList<T>(ReadOnlyList.FindAll(match)); 194return new ImmutableSegmentedList<T>(ReadOnlyList.GetRange(index, count)); 325_list = new ImmutableSegmentedList<T>(ReadOnlyList);
393 references to ImmutableSegmentedList
Microsoft.CodeAnalysis (132)
Collections\ImmutableArrayExtensions.cs (1)
960internal static int BinarySearch<TElement, TValue>(this ImmutableSegmentedList<TElement> array, TValue value, Func<TElement, TValue, int> comparer)
ImmutableSegmentedList.cs (15)
14public static ImmutableSegmentedList<T> Create<T>() 15=> ImmutableSegmentedList<T>.Empty; 18public static ImmutableSegmentedList<T> Create<T>(T item) 19=> ImmutableSegmentedList<T>.Empty.Add(item); 22public static ImmutableSegmentedList<T> Create<T>(params T[] items) 23=> ImmutableSegmentedList<T>.Empty.AddRange(items); 26public static ImmutableSegmentedList<T>.Builder CreateBuilder<T>() 27=> ImmutableSegmentedList<T>.Empty.ToBuilder(); 30public static ImmutableSegmentedList<T> CreateRange<T>(IEnumerable<T> items) 31=> ImmutableSegmentedList<T>.Empty.AddRange(items); 34public static ImmutableSegmentedList<T> ToImmutableSegmentedList<T>(this IEnumerable<T> source) 36if (source is ImmutableSegmentedList<T> existingList) 39return ImmutableSegmentedList<T>.Empty.AddRange(source); 43public static ImmutableSegmentedList<T> ToImmutableSegmentedList<T>(this ImmutableSegmentedList<T>.Builder builder)
ImmutableSegmentedList`1.cs (61)
18/// <para>There are different scenarios best for <see cref="ImmutableSegmentedList{T}"/> and others 22/// <see cref="ImmutableSegmentedList{T}"/>:</para> 27/// <description><see cref="ImmutableSegmentedList{T}"/> Complexity</description> 71internal readonly partial struct ImmutableSegmentedList<T> : IImmutableList<T>, IReadOnlyList<T>, IList<T>, IList, IEquatable<ImmutableSegmentedList<T>> 74public static readonly ImmutableSegmentedList<T> Empty = new(new SegmentedList<T>()); 112public static bool operator ==(ImmutableSegmentedList<T> left, ImmutableSegmentedList<T> right) 115public static bool operator !=(ImmutableSegmentedList<T> left, ImmutableSegmentedList<T> right) 118public static bool operator ==(ImmutableSegmentedList<T>? left, ImmutableSegmentedList<T>? right) 121public static bool operator !=(ImmutableSegmentedList<T>? left, ImmutableSegmentedList<T>? right) 127var self = this; 139public ImmutableSegmentedList<T> Add(T value) 141var self = this; 159public ImmutableSegmentedList<T> AddRange(IEnumerable<T> items) 161var self = this; 169if (items is ImmutableSegmentedList<T> immutableList) 171else if (items is ImmutableSegmentedList<T>.Builder builder) 199public ImmutableSegmentedList<T> Clear() 206public ImmutableSegmentedList<TOutput> ConvertAll<TOutput>(Converter<T, TOutput> converter) 229public ImmutableSegmentedList<T> FindAll(Predicate<T> match) 255var self = this; 270var self = this; 291public ImmutableSegmentedList<T> GetRange(int index, int count) 293var self = this; 308public ImmutableSegmentedList<T> Insert(int index, T item) 310var self = this; 323public ImmutableSegmentedList<T> InsertRange(int index, IEnumerable<T> items) 325var self = this; 339var self = this; 359public ImmutableSegmentedList<T> Remove(T value) 361var self = this; 371public ImmutableSegmentedList<T> Remove(T value, IEqualityComparer<T>? equalityComparer) 373var self = this; 383public ImmutableSegmentedList<T> RemoveAll(Predicate<T> match) 393public ImmutableSegmentedList<T> RemoveAt(int index) 402public ImmutableSegmentedList<T> RemoveRange(IEnumerable<T> items) 407var self = this; 426public ImmutableSegmentedList<T> RemoveRange(IEnumerable<T> items, IEqualityComparer<T>? equalityComparer) 431var self = this; 450public ImmutableSegmentedList<T> RemoveRange(int index, int count) 452var self = this; 466public ImmutableSegmentedList<T> Replace(T oldValue, T newValue) 468var self = this; 480public ImmutableSegmentedList<T> Replace(T oldValue, T newValue, IEqualityComparer<T>? equalityComparer) 482var self = this; 494public ImmutableSegmentedList<T> Reverse() 496var self = this; 506public ImmutableSegmentedList<T> Reverse(int index, int count) 514public ImmutableSegmentedList<T> SetItem(int index, T value) 523public ImmutableSegmentedList<T> Sort() 525var self = this; 537public ImmutableSegmentedList<T> Sort(IComparer<T>? comparer) 539var self = this; 551public ImmutableSegmentedList<T> Sort(Comparison<T> comparison) 558var self = this; 570public ImmutableSegmentedList<T> Sort(int index, int count, IComparer<T>? comparer) 590return obj is ImmutableSegmentedList<T> other 594public bool Equals(ImmutableSegmentedList<T> other)
ImmutableSegmentedList`1+Builder.cs (5)
21internal Builder(ImmutableSegmentedList<T> list) 78public ImmutableSegmentedList<TOutput> ConvertAll<TOutput>(Converter<T, TOutput> converter) 101public ImmutableSegmentedList<T> FindAll(Predicate<T> match) 141public ImmutableSegmentedList<T> GetRange(int index, int count) 217public ImmutableSegmentedList<T> ToImmutable()
ImmutableSegmentedList`1+PrivateInterlocked.cs (9)
17internal static ImmutableSegmentedList<T> VolatileRead(in ImmutableSegmentedList<T> location) 26internal static ImmutableSegmentedList<T> InterlockedExchange(ref ImmutableSegmentedList<T> location, ImmutableSegmentedList<T> value) 35internal static ImmutableSegmentedList<T> InterlockedCompareExchange(ref ImmutableSegmentedList<T> location, ImmutableSegmentedList<T> value, ImmutableSegmentedList<T> comparand)
ImmutableSegmentedList`1+ValueBuilder.cs (7)
19private ImmutableSegmentedList<T> _list; 27internal ValueBuilder(ImmutableSegmentedList<T> list) 74var originalList = RoslynImmutableInterlocked.InterlockedExchange(ref _list, default); 123public readonly ImmutableSegmentedList<TOutput> ConvertAll<TOutput>(Converter<T, TOutput> converter) 141public readonly ImmutableSegmentedList<T> FindAll(Predicate<T> match) 189public ImmutableSegmentedList<T> GetRange(int index, int count) 323public ImmutableSegmentedList<T> ToImmutable()
ImmutableSegmentedListExtensions.cs (8)
15public static bool All<T>(this ImmutableSegmentedList<T> immutableList, Func<T, bool> predicate) 31public static bool Any<T>(this ImmutableSegmentedList<T> immutableList) 39public static bool Any<T>(this ImmutableSegmentedList<T>.Builder builder) 47public static bool Any<T>(this ImmutableSegmentedList<T> immutableList, Func<T, bool> predicate) 63public static T Last<T>(this ImmutableSegmentedList<T> immutableList) 72public static T Last<T>(this ImmutableSegmentedList<T>.Builder builder) 84public static T Last<T>(this ImmutableSegmentedList<T> immutableList, Func<T, bool> predicate) 101public static IEnumerable<TResult> Select<T, TResult>(this ImmutableSegmentedList<T> immutableList, Func<T, TResult> selector)
RoslynImmutableInterlocked.cs (26)
30public static bool Update<T>(ref ImmutableSegmentedList<T> location, Func<ImmutableSegmentedList<T>, ImmutableSegmentedList<T>> transformer) 35var oldValue = ImmutableSegmentedList<T>.PrivateInterlocked.VolatileRead(in location); 38var newValue = transformer(oldValue); 45var interlockedResult = InterlockedCompareExchange(ref location, newValue, oldValue); 71public static bool Update<T, TArg>(ref ImmutableSegmentedList<T> location, Func<ImmutableSegmentedList<T>, TArg, ImmutableSegmentedList<T>> transformer, TArg transformerArgument) 76var oldValue = ImmutableSegmentedList<T>.PrivateInterlocked.VolatileRead(in location); 79var newValue = transformer(oldValue, transformerArgument); 86var interlockedResult = InterlockedCompareExchange(ref location, newValue, oldValue); 102public static ImmutableSegmentedList<T> InterlockedExchange<T>(ref ImmutableSegmentedList<T> location, ImmutableSegmentedList<T> value) 104return ImmutableSegmentedList<T>.PrivateInterlocked.InterlockedExchange(ref location, value); 116public static ImmutableSegmentedList<T> InterlockedCompareExchange<T>(ref ImmutableSegmentedList<T> location, ImmutableSegmentedList<T> value, ImmutableSegmentedList<T> comparand) 118return ImmutableSegmentedList<T>.PrivateInterlocked.InterlockedCompareExchange(ref location, value, comparand); 130public static bool InterlockedInitialize<T>(ref ImmutableSegmentedList<T> location, ImmutableSegmentedList<T> value) 132return InterlockedCompareExchange(ref location, value, default(ImmutableSegmentedList<T>)).IsDefault;
Microsoft.CodeAnalysis.UnitTests (261)
Collections\ImmutableListTestBase.cs (86)
28internal abstract IReadOnlyList<T> GetListQuery<T>(ImmutableSegmentedList<T> list); 30private protected abstract ImmutableSegmentedList<TOutput> ConvertAllImpl<T, TOutput>(ImmutableSegmentedList<T> list, Converter<T, TOutput> converter); 32private protected abstract void ForEachImpl<T>(ImmutableSegmentedList<T> list, Action<T> action); 34private protected abstract ImmutableSegmentedList<T> GetRangeImpl<T>(ImmutableSegmentedList<T> list, int index, int count); 36private protected abstract void CopyToImpl<T>(ImmutableSegmentedList<T> list, T[] array); 38private protected abstract void CopyToImpl<T>(ImmutableSegmentedList<T> list, T[] array, int arrayIndex); 40private protected abstract void CopyToImpl<T>(ImmutableSegmentedList<T> list, int index, T[] array, int arrayIndex, int count); 42private protected abstract bool ExistsImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match); 44private protected abstract T? FindImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match); 46private protected abstract ImmutableSegmentedList<T> FindAllImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match); 48private protected abstract int FindIndexImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match); 50private protected abstract int FindIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, Predicate<T> match); 52private protected abstract int FindIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, int count, Predicate<T> match); 54private protected abstract T? FindLastImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match); 56private protected abstract int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match); 58private protected abstract int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, Predicate<T> match); 60private protected abstract int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, int count, Predicate<T> match); 62private protected abstract bool TrueForAllImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> test); 64private protected abstract int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, T item); 66private protected abstract int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, T item, IComparer<T>? comparer); 68private protected abstract int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, int index, int count, T item, IComparer<T>? comparer); 74CopyToImpl(ImmutableSegmentedList<int>.Empty, array); 75CopyToImpl(ImmutableSegmentedList<int>.Empty, array, 0); 76CopyToImpl(ImmutableSegmentedList<int>.Empty, 0, array, 0, 0); 77((ICollection)this.GetListQuery(ImmutableSegmentedList<int>.Empty)).CopyTo(array, 0); 83var list = ImmutableSegmentedList.Create(1, 2); 114ForEachImpl(ImmutableSegmentedList<int>.Empty, n => { throw ExceptionUtilities.Unreachable(); }); 116var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(5, 3)); 134Assert.False(ExistsImpl(ImmutableSegmentedList<int>.Empty, n => true)); 136var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(1, 5)); 144Assert.True(FindAllImpl(ImmutableSegmentedList<int>.Empty, n => true).IsEmpty); 145var list = ImmutableSegmentedList<int>.Empty.AddRange(new[] { 2, 3, 4, 5, 6 }); 146var actual = FindAllImpl(list, n => n % 2 == 1); 154Assert.Equal(0, FindImpl(ImmutableSegmentedList<int>.Empty, n => true)); 155var list = ImmutableSegmentedList<int>.Empty.AddRange(new[] { 2, 3, 4, 5, 6 }); 162Assert.Equal(0, FindLastImpl(ImmutableSegmentedList<int>.Empty, n => { throw ExceptionUtilities.Unreachable(); })); 163var list = ImmutableSegmentedList<int>.Empty.AddRange(new[] { 2, 3, 4, 5, 6 }); 170Assert.Equal(-1, FindIndexImpl(ImmutableSegmentedList<int>.Empty, n => true)); 171Assert.Equal(-1, FindIndexImpl(ImmutableSegmentedList<int>.Empty, 0, n => true)); 172Assert.Equal(-1, FindIndexImpl(ImmutableSegmentedList<int>.Empty, 0, 0, n => true)); 175var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(100, 5).Concat(Enumerable.Range(100, 5))); 224Assert.Equal(-1, FindLastIndexImpl(ImmutableSegmentedList<int>.Empty, n => true)); 225Assert.Equal(-1, FindLastIndexImpl(ImmutableSegmentedList<int>.Empty, 0, n => true)); 226Assert.Equal(-1, FindLastIndexImpl(ImmutableSegmentedList<int>.Empty, 0, 0, n => true)); 229var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(100, 5).Concat(Enumerable.Range(100, 5))); 332Assert.True(ConvertAllImpl<int, float>(ImmutableSegmentedList<int>.Empty, n => n).IsEmpty); 333var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(5, 10)); 336var actual = ConvertAllImpl(list, converter); 343Assert.True(GetRangeImpl(ImmutableSegmentedList<int>.Empty, 0, 0).IsEmpty); 344var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(5, 10)); 352var actual = GetRangeImpl(list, index, count); 361Assert.True(TrueForAllImpl(ImmutableSegmentedList<int>.Empty, n => false)); 362var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(5, 10)); 371var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(5, 10)); 382var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(5, 10)); 396Assert.Throws<ArgumentNullException>("comparison", () => this.SortTestHelper(ImmutableSegmentedList<int>.Empty, (Comparison<int>)null!)); 403ImmutableSegmentedList<int>.Empty, 404ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(1, 50)), 405ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(1, 50).Reverse()), 408foreach (var scenario in scenarios) 451var query = basis.ToImmutableSegmentedList(); 493var query = inputData.ToImmutableSegmentedList(); 527private protected abstract void RemoveAllTestHelper<T>(ImmutableSegmentedList<T> list, Predicate<T> test); 529private protected abstract void ReverseTestHelper<T>(ImmutableSegmentedList<T> list, int index, int count); 531private protected abstract List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list); 533private protected abstract List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, Comparison<T> comparison); 535private protected abstract List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, IComparer<T>? comparer); 537private protected abstract List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, int index, int count, IComparer<T>? comparer); 546/// Asserts that the <see cref="ImmutableSegmentedList{T}"/> or <see cref="ImmutableSegmentedList{T}.Builder"/>'s 569private void TrueForAllTestHelper<T>(ImmutableSegmentedList<T> list, Predicate<T> test)
Collections\ImmutableSegmentedListBuilderTest.cs (57)
28ImmutableSegmentedList<string>.Builder builder = ImmutableSegmentedList.CreateBuilder<string>(); 35var builder = ImmutableSegmentedList<int>.Empty.ToBuilder(); 44var list = builder.ToImmutable(); 56var list = ImmutableSegmentedList<int>.Empty.Add(1); 67var list2 = builder.ToImmutable(); 82var mutable = ImmutableSegmentedList<int>.Empty.ToBuilder(); 83var immutable1 = mutable.ToImmutable(); 87var immutable2 = mutable.ToImmutable(); 96var builder = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(1, 10)).ToBuilder(); 118var collection = ImmutableSegmentedList<int>.Empty.Add(1); 123var newImmutable = builder.ToImmutable(); 131var mutable = ImmutableSegmentedList<int>.Empty.ToBuilder(); 144var mutable = ImmutableSegmentedList<int>.Empty.ToBuilder(); 161var mutable = ImmutableSegmentedList<int>.Empty.ToBuilder(); 175var mutable = ImmutableSegmentedList<int>.Empty.ToBuilder(); 207var mutable = ImmutableSegmentedList<int>.Empty.ToBuilder(); 359ImmutableSegmentedList<string>.Builder builder = ImmutableSegmentedList.CreateBuilder<string>(); 379var list = new[] { 1, 2, 3 }.ToImmutableSegmentedList(); 380var builder = new ImmutableSegmentedList<int>.Builder(list); 395var list = new[] { 1, 2, 3 }.ToImmutableSegmentedList(); 396var builder = new ImmutableSegmentedList<int>.Builder(list); 404ImmutableSegmentedList<int>.Builder builder = ImmutableSegmentedList.CreateBuilder<int>(); 409var list = builder.ToImmutableSegmentedList(); 422ImmutableSegmentedList<int>.Builder? nullBuilder = null; 428return ImmutableSegmentedList<T>.Empty.AddRange(contents).ToBuilder(); 431private protected override void RemoveAllTestHelper<T>(ImmutableSegmentedList<T> list, Predicate<T> test) 442private protected override void ReverseTestHelper<T>(ImmutableSegmentedList<T> list, int index, int count) 451internal override IReadOnlyList<T> GetListQuery<T>(ImmutableSegmentedList<T> list) 456private protected override ImmutableSegmentedList<TOutput> ConvertAllImpl<T, TOutput>(ImmutableSegmentedList<T> list, Converter<T, TOutput> converter) 459private protected override void ForEachImpl<T>(ImmutableSegmentedList<T> list, Action<T> action) 462private protected override ImmutableSegmentedList<T> GetRangeImpl<T>(ImmutableSegmentedList<T> list, int index, int count) 465private protected override void CopyToImpl<T>(ImmutableSegmentedList<T> list, T[] array) 468private protected override void CopyToImpl<T>(ImmutableSegmentedList<T> list, T[] array, int arrayIndex) 471private protected override void CopyToImpl<T>(ImmutableSegmentedList<T> list, int index, T[] array, int arrayIndex, int count) 474private protected override bool ExistsImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 477private protected override T? FindImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 481private protected override ImmutableSegmentedList<T> FindAllImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 484private protected override int FindIndexImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 487private protected override int FindIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, Predicate<T> match) 490private protected override int FindIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, int count, Predicate<T> match) 493private protected override T? FindLastImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 497private protected override int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 500private protected override int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, Predicate<T> match) 503private protected override int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, int count, Predicate<T> match) 506private protected override bool TrueForAllImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> test) 509private protected override int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, T item) 512private protected override int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, T item, IComparer<T>? comparer) 515private protected override int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, int index, int count, T item, IComparer<T>? comparer) 518private protected override List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list) 525private protected override List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, Comparison<T> comparison) 532private protected override List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, IComparer<T>? comparer) 539private protected override List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, int index, int count, IComparer<T>? comparer)
Collections\ImmutableSegmentedListTest.cs (112)
43var actual = ImmutableSegmentedList<int>.Empty; 107var empty = ImmutableSegmentedList<GenericParameterHelper?>.Empty; 108Assert.True(IsSame(empty, ImmutableSegmentedList<GenericParameterHelper>.Empty)); 126var list = ImmutableSegmentedList<int>.Empty; 139var bulkList = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(1, 10).Select(i => i * 10)); 146var list = ImmutableSegmentedList<int>.Empty; 149list = list.AddRange(ImmutableSegmentedList<int>.Empty.AddRange(new[] { 6, 7, 8 })); 151list = list.AddRange(ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(9, 1000))); 158var list = ImmutableSegmentedList<int>.Empty; 159ImmutableSegmentedList<int>.Builder builder = ImmutableSegmentedList.CreateBuilder<int>(); 170var emptyList = ImmutableSegmentedList.Create<string>(); 176var nonEmptyListDefaultComparer = ImmutableSegmentedList.Create("5"); 193var list = ImmutableSegmentedList<int>.Empty; 245var list = ImmutableSegmentedList<int>.Empty; 269var list = ImmutableSegmentedList.Create(1); 278var list = ImmutableSegmentedList<int>.Empty; 294var list = ImmutableSegmentedList<int>.Empty; 295var nonEmptyList = ImmutableSegmentedList.Create(1); 301list = list.InsertRange(2, ImmutableSegmentedList<int>.Empty); 302list = list.InsertRange(3, ImmutableSegmentedList<int>.Empty.InsertRange(0, Enumerable.Range(4, 100))); 312var list = ImmutableSegmentedList<GenericParameterHelper?>.Empty; 332var collection = ImmutableSegmentedList.Create(1, 2, 3); 333var modified = collection.Remove(2, null); 345ImmutableSegmentedList<int> list = ImmutableSegmentedList<int>.Empty; 369System.Collections.Immutable.IImmutableList<int> list2 = ImmutableSegmentedList<int>.Empty; 396var list = ImmutableSegmentedList<int>.Empty; 415var list = ImmutableSegmentedList<int>.Empty; 422var list = ImmutableSegmentedList<int>.Empty; 450var list = ImmutableSegmentedList<string>.Empty; 473var list = ImmutableSegmentedList.CreateRange(Enumerable.Range(1, 3)); 525var list = ImmutableSegmentedList<int>.Empty.Add(3).Add(5).Add(8); 534list = ImmutableSegmentedList<int>.Empty.Add(3).Add(3).Add(5); 544var list = ImmutableSegmentedList.Create(new Person { Name = "Andrew", Age = 20 }); 546var updatedList = list.Replace(newAge, newAge, new NameOnlyEqualityComparer()); 562Assert.Throws<ArgumentException>("oldValue", () => ImmutableSegmentedList<int>.Empty.Replace(5, 3)); 568Assert.False(ImmutableSegmentedList<int>.Empty.Equals(null)); 569Assert.False(ImmutableSegmentedList<int>.Empty.Equals("hi")); 570Assert.True(ImmutableSegmentedList<int>.Empty.Equals(ImmutableSegmentedList<int>.Empty)); 571Assert.False(ImmutableSegmentedList<int>.Empty.Add(3).Equals(ImmutableSegmentedList<int>.Empty.Add(3))); 579ImmutableSegmentedList<string> list = ImmutableSegmentedList.Create<string>(); 595ImmutableSegmentedList<string> list = new[] { "a", "b" }.ToImmutableSegmentedList(); 605var list = ImmutableSegmentedList.Create("a"); 612Assert.Throws<ArgumentNullException>("match", () => ImmutableSegmentedList<int>.Empty.RemoveAll(null!)); 618Assert.True(ImmutableSegmentedList<int>.Empty.RemoveRange(0, 0).IsEmpty); 620var list = ImmutableSegmentedList.Create(1, 2, 3); 632var list = ImmutableSegmentedList.Create(1, 2, 3); 633var removed2eq = list.RemoveRange(new[] { 2 }, null); 641var list = ImmutableSegmentedList.Create(1, 2, 3); 644ImmutableSegmentedList<int> removed2 = list.RemoveRange(new[] { 2 }); 648ImmutableSegmentedList<int> removed13 = list.RemoveRange(new[] { 1, 3, 5 }); 656var listWithDuplicates = ImmutableSegmentedList.Create(1, 2, 2, 3); 667var list = ImmutableSegmentedList.Create("a"); 689var collection = ImmutableSegmentedList.Create(1); 714var emptyList = ImmutableSegmentedList.Create<int>(); 717var populatedList = ImmutableSegmentedList.Create(3, 2, 1); 724var emptyList = ImmutableSegmentedList.Create<int>(); 729var listOfOne = emptyList.Add(5); 773ImmutableSegmentedList<double> list = ImmutableSegmentedList.Create<double>(1, 2, 3); 815var list = new[] { 1, 2, 3 }.ToImmutableSegmentedList(); 830var list = new[] { 1, 2, 3 }.ToImmutableSegmentedList(); 837return ImmutableSegmentedList<T>.Empty.AddRange(contents); 840private protected override void RemoveAllTestHelper<T>(ImmutableSegmentedList<T> list, Predicate<T> test) 844var actual = list.RemoveAll(test); 848private protected override void ReverseTestHelper<T>(ImmutableSegmentedList<T> list, int index, int count) 852var actual = list.Reverse(index, count); 856private protected override List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list) 861private protected override List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, Comparison<T> comparison) 866private protected override List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, IComparer<T>? comparer) 871private protected override List<T> SortTestHelper<T>(ImmutableSegmentedList<T> list, int index, int count, IComparer<T>? comparer) 876internal override IReadOnlyList<T> GetListQuery<T>(ImmutableSegmentedList<T> list) 881private protected override ImmutableSegmentedList<TOutput> ConvertAllImpl<T, TOutput>(ImmutableSegmentedList<T> list, Converter<T, TOutput> converter) 884private protected override void ForEachImpl<T>(ImmutableSegmentedList<T> list, Action<T> action) 887private protected override ImmutableSegmentedList<T> GetRangeImpl<T>(ImmutableSegmentedList<T> list, int index, int count) 890private protected override void CopyToImpl<T>(ImmutableSegmentedList<T> list, T[] array) 893private protected override void CopyToImpl<T>(ImmutableSegmentedList<T> list, T[] array, int arrayIndex) 896private protected override void CopyToImpl<T>(ImmutableSegmentedList<T> list, int index, T[] array, int arrayIndex, int count) 899private protected override bool ExistsImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 902private protected override T? FindImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 906private protected override ImmutableSegmentedList<T> FindAllImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 909private protected override int FindIndexImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 912private protected override int FindIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, Predicate<T> match) 915private protected override int FindIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, int count, Predicate<T> match) 918private protected override T? FindLastImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 922private protected override int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> match) 925private protected override int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, Predicate<T> match) 928private protected override int FindLastIndexImpl<T>(ImmutableSegmentedList<T> list, int startIndex, int count, Predicate<T> match) 931private protected override bool TrueForAllImpl<T>(ImmutableSegmentedList<T> list, Predicate<T> test) 934private protected override int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, T item) 937private protected override int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, T item, IComparer<T>? comparer) 940private protected override int BinarySearchImpl<T>(ImmutableSegmentedList<T> list, int index, int count, T item, IComparer<T>? comparer)
Collections\ImmutablesTestBase.cs (2)
55if (first is ImmutableSegmentedList<T> firstSegmented 56&& second is ImmutableSegmentedList<T> secondSegmented)
Collections\IndexOfTests.cs (4)
50var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(100, 5).Concat(Enumerable.Range(100, 5))); 118var list = ImmutableSegmentedList<int>.Empty.AddRange(Enumerable.Range(100, 5).Concat(Enumerable.Range(100, 5)));