mirror of
https://github.com/chylex/.NET-Community-Toolkit.git
synced 2024-11-25 01:42:46 +01:00
58 lines
2.3 KiB
C#
58 lines
2.3 KiB
C#
// Licensed to the .NET Foundation under one or more agreements.
|
|
// The .NET Foundation licenses this file to you under the MIT license.
|
|
// See the LICENSE file in the project root for more information.
|
|
|
|
using System;
|
|
|
|
namespace CommunityToolkit.HighPerformance.Helpers;
|
|
|
|
/// <inheritdoc/>
|
|
partial class ParallelHelper
|
|
{
|
|
/// <summary>
|
|
/// Throws an <see cref="ArgumentOutOfRangeException"/> when an invalid parameter is specified for the minimum actions per thread.
|
|
/// </summary>
|
|
private static void ThrowArgumentOutOfRangeExceptionForInvalidMinimumActionsPerThread()
|
|
{
|
|
// Having the argument name here manually typed is
|
|
// not ideal, but this way we save passing that string as
|
|
// a parameter, since it's always the same anyway.
|
|
// Same goes for the other helper methods below.
|
|
throw new ArgumentOutOfRangeException(
|
|
"minimumActionsPerThread",
|
|
"Each thread needs to perform at least one action");
|
|
}
|
|
|
|
/// <summary>
|
|
/// Throws an <see cref="ArgumentOutOfRangeException"/> when an invalid start parameter is specified for 1D loops.
|
|
/// </summary>
|
|
private static void ThrowArgumentOutOfRangeExceptionForStartGreaterThanEnd()
|
|
{
|
|
throw new ArgumentOutOfRangeException("start", "The start parameter must be less than or equal to end");
|
|
}
|
|
|
|
/// <summary>
|
|
/// Throws an <see cref="ArgumentException"/> when a range has an index starting from an end.
|
|
/// </summary>
|
|
private static void ThrowArgumentExceptionForRangeIndexFromEnd(string name)
|
|
{
|
|
throw new ArgumentException("The bounds of the range can't start from an end", name);
|
|
}
|
|
|
|
/// <summary>
|
|
/// Throws an <see cref="ArgumentOutOfRangeException"/> when an invalid top parameter is specified for 2D loops.
|
|
/// </summary>
|
|
private static void ThrowArgumentOutOfRangeExceptionForTopGreaterThanBottom()
|
|
{
|
|
throw new ArgumentOutOfRangeException("top", "The top parameter must be less than or equal to bottom");
|
|
}
|
|
|
|
/// <summary>
|
|
/// Throws an <see cref="ArgumentOutOfRangeException"/> when an invalid left parameter is specified for 2D loops.
|
|
/// </summary>
|
|
private static void ThrowArgumentOutOfRangeExceptionForLeftGreaterThanRight()
|
|
{
|
|
throw new ArgumentOutOfRangeException("left", "The left parameter must be less than or equal to right");
|
|
}
|
|
}
|