<PackageReference Include="NUnit" Version="4.5.1" />

ArgumentsExtensions

static class ArgumentsExtensions
using NUnit.Framework.Interfaces; using System; using System.Reflection; using System.Runtime.CompilerServices; using System.Threading; namespace NUnit.Framework.Internal.Extensions { [System.Runtime.CompilerServices.NullableContext(1)] [System.Runtime.CompilerServices.Nullable(0)] internal static class ArgumentsExtensions { public sealed class <G>$5826E9994B69910B49B9282D8BFF5922 { public static class <M>$522E48C9F2CE458AF717D4844EC3AD4A { } [ExtensionMarker("<M>$522E48C9F2CE458AF717D4844EC3AD4A")] [return: System.Runtime.CompilerServices.Nullable(new byte[] { 1, 2 })] public object[] Unpack() { throw null; } } public sealed class <G>$8B246D26940F9C51BF3AB90E7FD796D9 { public static class <M>$323F7F41D9803D7D201B6D6BDA190C13 { } [ExtensionMarker("<M>$323F7F41D9803D7D201B6D6BDA190C13")] public bool LastArgumentIsCancellationToken() { throw null; } } public sealed class <G>$1811C7E5C32E82AF4E1B159CAFA5F293 { public static class <M>$E9216EEBA576A71DF23F80947A55113B { } [ExtensionMarker("<M>$E9216EEBA576A71DF23F80947A55113B")] public bool ParameterIsParamsArray() { throw null; } } public sealed class <G>$248DBFF30607091B4958CD8CD757152A { public static class <M>$04C942FBA5110577BF3EEEC5C3689F43 { } [ExtensionMarker("<M>$04C942FBA5110577BF3EEEC5C3689F43")] public bool ParameterIsParamsArray() { throw null; } } public sealed class <G>$34346CEB1280D5FB3EDF6624EBA19C1F { public static class <M>$8B785AD64216E996E13FBF33B3DF4533 { } [ExtensionMarker("<M>$8B785AD64216E996E13FBF33B3DF4533")] public bool LastParameterAcceptsCancellationToken() { throw null; } [ExtensionMarker("<M>$8B785AD64216E996E13FBF33B3DF4533")] public bool LastParameterIsParamsArray() { throw null; } [ExtensionMarker("<M>$8B785AD64216E996E13FBF33B3DF4533")] public bool HasSingleParameterOfType(Type type) { throw null; } [ExtensionMarker("<M>$8B785AD64216E996E13FBF33B3DF4533")] public bool ShouldUnpackArrayAsArguments(Array array) { throw null; } } public sealed class <G>$C9EF4C2B0678AD03008034688213EECB { public static class <M>$83B5328A3D4052D2026AA76444B2C9A7 { } [ExtensionMarker("<M>$83B5328A3D4052D2026AA76444B2C9A7")] public bool LastParameterAcceptsCancellationToken() { throw null; } } [return: System.Runtime.CompilerServices.Nullable(new byte[] { 1, 2 })] public static object[] Unpack(this Array array) { object[] array2 = new object[array.Length]; for (int i = 0; i < array.Length; i++) { array2[i] = array.GetValue(i); } return array2; } public static bool LastArgumentIsCancellationToken([System.Runtime.CompilerServices.Nullable(new byte[] { 1, 2 })] this object[] arguments) { if (arguments.Length != 0) return arguments[arguments.Length - 1]?.GetType() == typeof(CancellationToken); return false; } public static bool ParameterIsParamsArray(this IParameterInfo lastParameter) { if (lastParameter.ParameterType.IsArray) return lastParameter.ParameterInfo.ParameterIsParamsArray(); return false; } public static bool ParameterIsParamsArray(this ParameterInfo lastParameter) { if (lastParameter.ParameterType.IsArray) return lastParameter.HasAttribute<ParamArrayAttribute>(false); return false; } public static bool LastParameterAcceptsCancellationToken(this IParameterInfo[] parameters) { if (parameters.Length != 0) return parameters[parameters.Length - 1].ParameterType == typeof(CancellationToken); return false; } public static bool LastParameterIsParamsArray(this IParameterInfo[] parameters) { if (parameters.Length == 0) return false; return parameters[parameters.Length - 1].ParameterIsParamsArray(); } public static bool HasSingleParameterOfType(this IParameterInfo[] parameters, Type type) { if (parameters.Length == 1) return parameters[0].ParameterType == type; return false; } public static bool ShouldUnpackArrayAsArguments(this IParameterInfo[] parameters, Array array) { int num = parameters.Length; if (num == 0) return false; Type parameterType = parameters[0].ParameterType; Type type = array.GetType(); if (type == typeof(object[]) && array.Length == 1 && parameterType != typeof(object)) return true; if (parameterType.IsAssignableFrom(type)) { switch (num) { case 2: if (!parameters.LastParameterIsParamsArray()) break; goto case 1; case 1: return false; } } if (parameters.LastParameterIsParamsArray()) return true; if (num > 1) return true; if (parameterType == typeof(object)) return false; return true; } public static bool LastParameterAcceptsCancellationToken(this ParameterInfo[] parameters) { if (parameters.Length != 0) return parameters[parameters.Length - 1].ParameterType == typeof(CancellationToken); return false; } } }