Skip to content

Commit 21c5062

Browse files
committed
[IStructCollection] add ICollectionEnumerator
1 parent 9d0091f commit 21c5062

31 files changed

+175
-80
lines changed

src/StructLinq.BCL/Dictionary/DictionaryEnumerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
namespace StructLinq.BCL.Dictionary
55
{
6-
public struct DictionaryEnumerator<TKey, TValue> : IStructEnumerator<KeyValuePair<TKey, TValue>>
6+
public struct DictionaryEnumerator<TKey, TValue> : ICollectionEnumerator<KeyValuePair<TKey, TValue>>
77
{
88
private readonly Entry<TKey, TValue>[] entries;
99
private readonly int length;

src/StructLinq.BCL/Dictionary/DictionaryKeyEnumerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace StructLinq.BCL.Dictionary
44
{
5-
public struct DictionaryKeyEnumerator<TKey, TValue> : IStructEnumerator<TKey>
5+
public struct DictionaryKeyEnumerator<TKey, TValue> : ICollectionEnumerator<TKey>
66
{
77
private readonly Entry<TKey, TValue>[] entries;
88
private readonly int length;

src/StructLinq.BCL/Dictionary/DictionaryValueEnumerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace StructLinq.BCL.Dictionary
44
{
5-
public struct DictionaryValueEnumerator<TKey, TValue> : IStructEnumerator<TValue>
5+
public struct DictionaryValueEnumerator<TKey, TValue> : ICollectionEnumerator<TValue>
66
{
77
private readonly Entry<TKey, TValue>[] entries;
88
private readonly int length;

src/StructLinq.BCL/Hashset/HashsetEnumerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace StructLinq.BCL.Hashset
44
{
5-
public struct HashsetEnumerator<T> : IStructEnumerator<T>
5+
public struct HashsetEnumerator<T> : ICollectionEnumerator<T>
66
{
77
private readonly Slot<T>[] entries;
88
private readonly int length;

src/StructLinq.BCL/List/BCLStructEnumerable.ToList.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
using StructLinq.BCL.List;
88
using StructLinq.Utils.Collections;
99

10+
// ReSharper disable once CheckNamespace
1011
namespace StructLinq
1112
{
1213
public static partial class BCLStructEnumerable
@@ -36,7 +37,7 @@ public static List<T> ToList<T, TEnumerator>(this IStructEnumerable<T, TEnumerat
3637

3738
[MethodImpl(MethodImplOptions.AggressiveInlining)]
3839
public static List<T> ToList<T, TEnumerator>(this IStructCollection<T, TEnumerator> collection)
39-
where TEnumerator : struct, IStructEnumerator<T>
40+
where TEnumerator : struct, ICollectionEnumerator<T>
4041
{
4142
return collection.ToList(collection.Count, ArrayPool<T>.Shared);
4243
}
@@ -77,7 +78,7 @@ public static List<T> ToList<T, TCollection, TEnumerator>(
7778
this TCollection collection,
7879
Func<TCollection, IStructCollection<T, TEnumerator>> _)
7980
where TCollection : IStructCollection<T, TEnumerator>
80-
where TEnumerator : struct, IStructEnumerator<T>
81+
where TEnumerator : struct, ICollectionEnumerator<T>
8182
{
8283
return collection.ToList(collection.Count, ArrayPool<T>.Shared, _);
8384
}

src/StructLinq.Tests/AbstractCollectionTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ namespace StructLinq.Tests
88
public abstract class AbstractCollectionTests<T, TStructCollection, TEnumerator>
99
: AbstractEnumerableTests<T, TStructCollection, TEnumerator>
1010
where TStructCollection : struct, IStructCollection<T, TEnumerator>
11-
where TEnumerator : struct, IStructEnumerator<T>
11+
where TEnumerator : struct, ICollectionEnumerator<T>
1212
{
1313
[Theory]
1414
[InlineData(0)]

src/StructLinq.Tests/SelectCollectionFuncTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ namespace StructLinq.Tests
88
{
99
public class SelectCollectionFuncTests : AbstractCollectionTests<double,
1010
SelectCollection<int, double, RangeEnumerable, RangeEnumerator>,
11-
SelectEnumerator<int, double, RangeEnumerator>>
11+
SelectCollectionEnumerator<int, double, RangeEnumerator>>
1212
{
1313
[Fact]
1414
public void DelegateTest()

src/StructLinq.Tests/SelectCollectionTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ namespace StructLinq.Tests
88
{
99
public class SelectCollectionTests : AbstractCollectionTests<double,
1010
SelectCollection<int, double, RangeEnumerable, RangeEnumerator, MultFunction>,
11-
SelectEnumerator<int, double, RangeEnumerator, MultFunction>>
11+
SelectCollectionEnumerator<int, double, RangeEnumerator, MultFunction>>
1212
{
1313
[Fact]
1414
public void DelegateTest()

src/StructLinq/Array/ArrayStructEnumerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace StructLinq.Array
44
{
5-
public struct ArrayStructEnumerator<T> : IStructEnumerator<T>
5+
public struct ArrayStructEnumerator<T> : ICollectionEnumerator<T>
66
{
77
#region private fields
88
private readonly T[] array;

src/StructLinq/Count/StructEnumerable.Count.cs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using System;
66
using System.Runtime.CompilerServices;
77

8+
// ReSharper disable once CheckNamespace
89
namespace StructLinq
910
{
1011
public static partial class StructEnumerable
@@ -100,44 +101,44 @@ public static uint UIntCount<T, TEnumerable, TEnumerator>(this TEnumerable enume
100101
[MethodImpl(MethodImplOptions.AggressiveInlining)]
101102
public static int Count<T, TCollection, TEnumerator>(this TCollection collection, Func<TCollection, IStructCollection<T, TEnumerator>> _)
102103
where TCollection : IStructCollection<T, TEnumerator>
103-
where TEnumerator : struct, IStructEnumerator<T>
104+
where TEnumerator : struct, ICollectionEnumerator<T>
104105
{
105106
return collection.Count;
106107
}
107108

108109
[MethodImpl(MethodImplOptions.AggressiveInlining)]
109110
public static int Count<T, TEnumerator>(this IStructCollection<T, TEnumerator> collection)
110-
where TEnumerator : struct, IStructEnumerator<T>
111+
where TEnumerator : struct, ICollectionEnumerator<T>
111112
{
112113
return collection.Count;
113114
}
114115

115116
[MethodImpl(MethodImplOptions.AggressiveInlining)]
116117
public static uint UIntCount<T, TCollection, TEnumerator>(this TCollection collection, Func<TCollection, IStructCollection<T, TEnumerator>> _)
117118
where TCollection : IStructCollection<T, TEnumerator>
118-
where TEnumerator : struct, IStructEnumerator<T>
119+
where TEnumerator : struct, ICollectionEnumerator<T>
119120
{
120121
return (uint)collection.Count;
121122
}
122123

123124
[MethodImpl(MethodImplOptions.AggressiveInlining)]
124125
public static uint UIntCount<T, TEnumerator>(this IStructCollection<T, TEnumerator> collection)
125-
where TEnumerator : struct, IStructEnumerator<T>
126+
where TEnumerator : struct, ICollectionEnumerator<T>
126127
{
127128
return (uint)collection.Count;
128129
}
129130

130131
[MethodImpl(MethodImplOptions.AggressiveInlining)]
131132
public static long LongCount<T, TCollection, TEnumerator>(this TCollection collection, Func<TCollection, IStructCollection<T, TEnumerator>> _)
132133
where TCollection : IStructCollection<T, TEnumerator>
133-
where TEnumerator : struct, IStructEnumerator<T>
134+
where TEnumerator : struct, ICollectionEnumerator<T>
134135
{
135136
return collection.Count;
136137
}
137138

138139
[MethodImpl(MethodImplOptions.AggressiveInlining)]
139140
public static long LongCount<T, TEnumerator>(this IStructCollection<T, TEnumerator> collection)
140-
where TEnumerator : struct, IStructEnumerator<T>
141+
where TEnumerator : struct, ICollectionEnumerator<T>
141142
{
142143
return collection.Count;
143144
}

0 commit comments

Comments
 (0)