From 4096265006489c4639b9538e6b52382147f11f81 Mon Sep 17 00:00:00 2001 From: Oliver Booth Date: Thu, 21 Apr 2022 22:27:24 +0100 Subject: [PATCH] Move LINQ-inspired methods to child namespaces (#7) --- X10D.Tests/src/Core/EnumerableTests.Product.Byte.cs | 1 + .../src/Core/EnumerableTests.Product.Decimal.cs | 1 + .../src/Core/EnumerableTests.Product.Double.cs | 1 + X10D.Tests/src/Core/EnumerableTests.Product.Int16.cs | 1 + X10D.Tests/src/Core/EnumerableTests.Product.Int32.cs | 1 + X10D.Tests/src/Core/EnumerableTests.Product.Int64.cs | 1 + X10D.Tests/src/Core/EnumerableTests.Product.SByte.cs | 1 + .../src/Core/EnumerableTests.Product.Single.cs | 1 + .../src/Core/EnumerableTests.Product.UInt16.cs | 1 + .../src/Core/EnumerableTests.Product.UInt32.cs | 1 + .../src/Core/EnumerableTests.Product.UInt64.cs | 1 + .../EnumerableExtensions.cs | 2 +- .../ListExtensions.cs | 2 +- .../ByteExtensions.cs} | 12 ++++++++---- .../DecimalExtensions.cs} | 7 +++++-- .../DoubleExtensions.cs} | 7 +++++-- .../Int16Extensions.cs} | 12 ++++++++---- .../Int32Extensions.cs} | 7 +++++-- .../Int64Extensions.cs} | 8 ++++++-- .../SingleExtensions.cs} | 7 +++++-- 20 files changed, 55 insertions(+), 20 deletions(-) rename X10D/src/{EnumerableExtensions => Collections}/EnumerableExtensions.cs (96%) rename X10D/src/{ListExtensions => Collections}/ListExtensions.cs (98%) rename X10D/src/{EnumerableExtensions/EnumerableExtensions.Byte.cs => Linq/ByteExtensions.cs} (91%) rename X10D/src/{EnumerableExtensions/EnumerableExtensions.Decimal.cs => Linq/DecimalExtensions.cs} (86%) rename X10D/src/{EnumerableExtensions/EnumerableExtensions.Double.cs => Linq/DoubleExtensions.cs} (86%) rename X10D/src/{EnumerableExtensions/EnumerableExtensions.Int16.cs => Linq/Int16Extensions.cs} (90%) rename X10D/src/{EnumerableExtensions/EnumerableExtensions.Int32.cs => Linq/Int32Extensions.cs} (92%) rename X10D/src/{EnumerableExtensions/EnumerableExtensions.Int64.cs => Linq/Int64Extensions.cs} (92%) rename X10D/src/{EnumerableExtensions/EnumerableExtensions.Single.cs => Linq/SingleExtensions.cs} (86%) diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.Byte.cs b/X10D.Tests/src/Core/EnumerableTests.Product.Byte.cs index 3092751..a8d3d5d 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.Byte.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.Byte.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.Decimal.cs b/X10D.Tests/src/Core/EnumerableTests.Product.Decimal.cs index 1e46673..4bf9b59 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.Decimal.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.Decimal.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.Double.cs b/X10D.Tests/src/Core/EnumerableTests.Product.Double.cs index 3e1653b..41b7dca 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.Double.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.Double.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.Int16.cs b/X10D.Tests/src/Core/EnumerableTests.Product.Int16.cs index ac6c2a3..e4fe900 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.Int16.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.Int16.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.Int32.cs b/X10D.Tests/src/Core/EnumerableTests.Product.Int32.cs index d5327a5..6a9cc72 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.Int32.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.Int32.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.Int64.cs b/X10D.Tests/src/Core/EnumerableTests.Product.Int64.cs index b6fd43e..7d96ca3 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.Int64.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.Int64.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.SByte.cs b/X10D.Tests/src/Core/EnumerableTests.Product.SByte.cs index 513cdca..c7035a0 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.SByte.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.SByte.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.Single.cs b/X10D.Tests/src/Core/EnumerableTests.Product.Single.cs index fb8adaf..4185b5e 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.Single.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.Single.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.UInt16.cs b/X10D.Tests/src/Core/EnumerableTests.Product.UInt16.cs index 46d9895..9138c1e 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.UInt16.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.UInt16.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.UInt32.cs b/X10D.Tests/src/Core/EnumerableTests.Product.UInt32.cs index d17355e..2cf8bb2 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.UInt32.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.UInt32.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D.Tests/src/Core/EnumerableTests.Product.UInt64.cs b/X10D.Tests/src/Core/EnumerableTests.Product.UInt64.cs index 99cf5bb..58309c4 100644 --- a/X10D.Tests/src/Core/EnumerableTests.Product.UInt64.cs +++ b/X10D.Tests/src/Core/EnumerableTests.Product.UInt64.cs @@ -1,4 +1,5 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; +using X10D.Linq; namespace X10D.Tests.Core; diff --git a/X10D/src/EnumerableExtensions/EnumerableExtensions.cs b/X10D/src/Collections/EnumerableExtensions.cs similarity index 96% rename from X10D/src/EnumerableExtensions/EnumerableExtensions.cs rename to X10D/src/Collections/EnumerableExtensions.cs index cd7098b..02f4f66 100644 --- a/X10D/src/EnumerableExtensions/EnumerableExtensions.cs +++ b/X10D/src/Collections/EnumerableExtensions.cs @@ -1,4 +1,4 @@ -namespace X10D; +namespace X10D.Collections; /// /// Extension methods for . diff --git a/X10D/src/ListExtensions/ListExtensions.cs b/X10D/src/Collections/ListExtensions.cs similarity index 98% rename from X10D/src/ListExtensions/ListExtensions.cs rename to X10D/src/Collections/ListExtensions.cs index c3ca069..7fb8ce4 100644 --- a/X10D/src/ListExtensions/ListExtensions.cs +++ b/X10D/src/Collections/ListExtensions.cs @@ -1,4 +1,4 @@ -namespace X10D; +namespace X10D.Collections; /// /// Extension methods for and . diff --git a/X10D/src/EnumerableExtensions/EnumerableExtensions.Byte.cs b/X10D/src/Linq/ByteExtensions.cs similarity index 91% rename from X10D/src/EnumerableExtensions/EnumerableExtensions.Byte.cs rename to X10D/src/Linq/ByteExtensions.cs index 912b0ac..2f183cd 100644 --- a/X10D/src/EnumerableExtensions/EnumerableExtensions.Byte.cs +++ b/X10D/src/Linq/ByteExtensions.cs @@ -1,6 +1,9 @@ -namespace X10D; +namespace X10D.Linq; -public static partial class EnumerableExtensions +/// +/// LINQ-inspired extension methods for of . +/// +public static class ByteExtensions { /// /// Computes the product of a sequence of values. @@ -9,8 +12,9 @@ public static partial class EnumerableExtensions /// The product the values in the sequence. public static byte Product(this IEnumerable source) { - return source.Aggregate((byte)1, (current, value) => (byte) (current * value)); + return source.Aggregate((byte)1, (current, value) => (byte)(current * value)); } + /// /// Computes the product of a sequence of values. /// @@ -19,7 +23,7 @@ public static partial class EnumerableExtensions [CLSCompliant(false)] public static sbyte Product(this IEnumerable source) { - return source.Aggregate((sbyte)1, (current, value) => (sbyte) (current * value)); + return source.Aggregate((sbyte)1, (current, value) => (sbyte)(current * value)); } /// diff --git a/X10D/src/EnumerableExtensions/EnumerableExtensions.Decimal.cs b/X10D/src/Linq/DecimalExtensions.cs similarity index 86% rename from X10D/src/EnumerableExtensions/EnumerableExtensions.Decimal.cs rename to X10D/src/Linq/DecimalExtensions.cs index d3603ca..bcdf193 100644 --- a/X10D/src/EnumerableExtensions/EnumerableExtensions.Decimal.cs +++ b/X10D/src/Linq/DecimalExtensions.cs @@ -1,6 +1,9 @@ -namespace X10D; +namespace X10D.Linq; -public static partial class EnumerableExtensions +/// +/// LINQ-inspired extension methods for of . +/// +public static class DecimalExtensions { /// /// Computes the product of a sequence of values. diff --git a/X10D/src/EnumerableExtensions/EnumerableExtensions.Double.cs b/X10D/src/Linq/DoubleExtensions.cs similarity index 86% rename from X10D/src/EnumerableExtensions/EnumerableExtensions.Double.cs rename to X10D/src/Linq/DoubleExtensions.cs index d2e3079..70ac1ca 100644 --- a/X10D/src/EnumerableExtensions/EnumerableExtensions.Double.cs +++ b/X10D/src/Linq/DoubleExtensions.cs @@ -1,6 +1,9 @@ -namespace X10D; +namespace X10D.Linq; -public static partial class EnumerableExtensions +/// +/// LINQ-inspired extension methods for of . +/// +public static class DoubleExtensions { /// /// Computes the product of a sequence of values. diff --git a/X10D/src/EnumerableExtensions/EnumerableExtensions.Int16.cs b/X10D/src/Linq/Int16Extensions.cs similarity index 90% rename from X10D/src/EnumerableExtensions/EnumerableExtensions.Int16.cs rename to X10D/src/Linq/Int16Extensions.cs index e6c5574..e18d492 100644 --- a/X10D/src/EnumerableExtensions/EnumerableExtensions.Int16.cs +++ b/X10D/src/Linq/Int16Extensions.cs @@ -1,6 +1,9 @@ -namespace X10D; +namespace X10D.Linq; -public static partial class EnumerableExtensions +/// +/// LINQ-inspired extension methods for of . +/// +public static class Int16Extensions { /// /// Computes the product of a sequence of values. @@ -9,8 +12,9 @@ public static partial class EnumerableExtensions /// The product the values in the sequence. public static short Product(this IEnumerable source) { - return source.Aggregate((short)1, (current, value) => (short) (current * value)); + return source.Aggregate((short)1, (current, value) => (short)(current * value)); } + /// /// Computes the product of a sequence of values. /// @@ -19,7 +23,7 @@ public static partial class EnumerableExtensions [CLSCompliant(false)] public static ushort Product(this IEnumerable source) { - return source.Aggregate((ushort)1, (current, value) => (ushort) (current * value)); + return source.Aggregate((ushort)1, (current, value) => (ushort)(current * value)); } /// diff --git a/X10D/src/EnumerableExtensions/EnumerableExtensions.Int32.cs b/X10D/src/Linq/Int32Extensions.cs similarity index 92% rename from X10D/src/EnumerableExtensions/EnumerableExtensions.Int32.cs rename to X10D/src/Linq/Int32Extensions.cs index 3068889..b8f6692 100644 --- a/X10D/src/EnumerableExtensions/EnumerableExtensions.Int32.cs +++ b/X10D/src/Linq/Int32Extensions.cs @@ -1,6 +1,9 @@ -namespace X10D; +namespace X10D.Linq; -public static partial class EnumerableExtensions +/// +/// LINQ-inspired extension methods for of . +/// +public static class Int32Extensions { /// /// Computes the product of a sequence of values. diff --git a/X10D/src/EnumerableExtensions/EnumerableExtensions.Int64.cs b/X10D/src/Linq/Int64Extensions.cs similarity index 92% rename from X10D/src/EnumerableExtensions/EnumerableExtensions.Int64.cs rename to X10D/src/Linq/Int64Extensions.cs index d51e9eb..df1b6c1 100644 --- a/X10D/src/EnumerableExtensions/EnumerableExtensions.Int64.cs +++ b/X10D/src/Linq/Int64Extensions.cs @@ -1,6 +1,9 @@ -namespace X10D; +namespace X10D.Linq; -public static partial class EnumerableExtensions +/// +/// LINQ-inspired extension methods for of . +/// +public static class Int64Extensions { /// /// Computes the product of a sequence of values. @@ -11,6 +14,7 @@ public static partial class EnumerableExtensions { return source.Aggregate(1L, (current, value) => current * value); } + /// /// Computes the product of a sequence of values. /// diff --git a/X10D/src/EnumerableExtensions/EnumerableExtensions.Single.cs b/X10D/src/Linq/SingleExtensions.cs similarity index 86% rename from X10D/src/EnumerableExtensions/EnumerableExtensions.Single.cs rename to X10D/src/Linq/SingleExtensions.cs index d653823..1797eaf 100644 --- a/X10D/src/EnumerableExtensions/EnumerableExtensions.Single.cs +++ b/X10D/src/Linq/SingleExtensions.cs @@ -1,6 +1,9 @@ -namespace X10D; +namespace X10D.Linq; -public static partial class EnumerableExtensions +/// +/// LINQ-inspired extension methods for of . +/// +public static class SingleExtensions { /// /// Computes the product of a sequence of values.