13 instantiations of ImmutableSegmentedList
Microsoft.Build.Framework (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);
125 references to ImmutableSegmentedList
Microsoft.Build (2)
Evaluation\LazyItemEvaluator.IncludeOperation.cs (2)
24private readonly ImmutableSegmentedList<string> _excludes; 177public ImmutableSegmentedList<string>.Builder Excludes { get; } = ImmutableSegmentedList.CreateBuilder<string>();
Microsoft.Build.Framework (123)
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 ImmutableSegmentedList<TOutput> ConvertAll<TOutput>(Converter<T, TOutput> converter) 141public ImmutableSegmentedList<T> FindAll(Predicate<T> match) 189public ImmutableSegmentedList<T> GetRange(int index, int count) 323public ImmutableSegmentedList<T> ToImmutable()
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;