diff options
Diffstat (limited to 'Rx.NET/System.Reactive.Linq/Reactive/Internal/ImmutableList.cs')
-rw-r--r-- | Rx.NET/System.Reactive.Linq/Reactive/Internal/ImmutableList.cs | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/Rx.NET/System.Reactive.Linq/Reactive/Internal/ImmutableList.cs b/Rx.NET/System.Reactive.Linq/Reactive/Internal/ImmutableList.cs deleted file mode 100644 index 5866778..0000000 --- a/Rx.NET/System.Reactive.Linq/Reactive/Internal/ImmutableList.cs +++ /dev/null @@ -1,49 +0,0 @@ -namespace System.Reactive -{ - class ImmutableList<T> - { - T[] data; - - public ImmutableList() - { - data = new T[0]; - } - - public ImmutableList(T[] data) - { - this.data = data; - } - - public ImmutableList<T> Add(T value) - { - var newData = new T[data.Length + 1]; - Array.Copy(data, newData, data.Length); - newData[data.Length] = value; - return new ImmutableList<T>(newData); - } - - public ImmutableList<T> Remove(T value) - { - var i = IndexOf(value); - if (i < 0) - return this; - var newData = new T[data.Length - 1]; - Array.Copy(data, 0, newData, 0, i); - Array.Copy(data, i + 1, newData, i, data.Length - i - 1); - return new ImmutableList<T>(newData); - } - - public int IndexOf(T value) - { - for (var i = 0; i < data.Length; ++i) - if (data[i].Equals(value)) - return i; - return -1; - } - - public T[] Data - { - get { return data; } - } - } -} |