From fb6e06952c1fea3c967ce676e518252e74753437 Mon Sep 17 00:00:00 2001 From: Louis Seubert Date: Wed, 1 May 2024 17:55:07 +0200 Subject: [PATCH] feat: fix inconsistent naming of transformation functions Fix naming of transformation functions like `Nap` and `Then` when handling `Task` or `ValueTask` as a result of the transformation. If the transformation function supplied to the `Map` or `Then` function returns a `Task` or `ValueTask`, now these functions always have the `Async` suffix in their name. If the function is an extension function which operates on a `Task>` or `ValueTask>` and does not fulfil the contracts with the task result of the transformation, the function does **not** have the `Async` suffix. --- src/Result/Extensions/Extensions.Task.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Result/Extensions/Extensions.Task.cs b/src/Result/Extensions/Extensions.Task.cs index b260621..70e695e 100644 --- a/src/Result/Extensions/Extensions.Task.cs +++ b/src/Result/Extensions/Extensions.Task.cs @@ -22,13 +22,14 @@ public static partial class Extensions /// A new result containing either the mapped success value or the failure value of the original /// result. [MethodImpl(MethodImplOptions.AggressiveInlining)] + // ReSharper disable once InconsistentNaming public static async ValueTask> Map(this Task> result, Func func) => (await result).Map(func); /// [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static async Task> Map(this Task> result, + public static async Task> MapAsync(this Task> result, Func> func) => await (await result).MapAsync(func); @@ -43,13 +44,14 @@ public static partial class Extensions /// A new result containing either the mapped success value or the failure value of the original /// result. [MethodImpl(MethodImplOptions.AggressiveInlining)] + // ReSharper disable once InconsistentNaming public static async Task> Then(this Task> result, Func> func) => (await result).Then(func); /// [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static async Task> Then(this Task> result, + public static async Task> ThenAsync(this Task> result, Func>> func) => await (await result).ThenAsync(func); @@ -59,25 +61,27 @@ public static partial class Extensions /// [MethodImpl(MethodImplOptions.AggressiveInlining)] + // ReSharper disable once InconsistentNaming public static async Task> Map(this ValueTask> result, Func func) => (await result).Map(func); /// [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static async ValueTask> Map(this ValueTask> result, + public static async ValueTask> MapAsync(this ValueTask> result, Func> func) => await (await result).MapAsync(func); /// [MethodImpl(MethodImplOptions.AggressiveInlining)] + // ReSharper disable once InconsistentNaming public static async ValueTask> Then(this ValueTask> result, Func> func) => (await result).Then(func); /// [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static async ValueTask> Then(this ValueTask> result, + public static async ValueTask> ThenAsync(this ValueTask> result, Func>> func) => await (await result).ThenAsync(func);