Skip to content

Commit

Permalink
Merge pull request #71 from pfpack/feature/FuncInterfaces_InitialCreate
Browse files Browse the repository at this point in the history
Ready for release of functional interfaces
  • Loading branch information
andreise authored Feb 11, 2021
2 parents b13e9a8 + f017d29 commit 023ea27
Show file tree
Hide file tree
Showing 124 changed files with 151 additions and 151 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_00_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<CancellationToken, ValueTask<StructType>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_01_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<StructType?, CancellationToken, ValueTask<RefType>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_02_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RefType?, RecordType, CancellationToken, ValueTask<StructType>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_03_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RecordType?, StructType, string, CancellationToken, ValueTask<RefType?>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_04_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RefType?, string, RecordType, StructType, CancellationToken, ValueTask<Guid>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_05_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RefType?, object, Guid, StructType, RecordType, CancellationToken, ValueTask<string?>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_06_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RefType?, StructType, string, RecordType?, DateTimeKind, object, CancellationToken, ValueTask<RecordType>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_07_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RecordType, string, RefType?, object, Guid?, int, StructType, CancellationToken, ValueTask<int>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_08_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<DateTimeOffset, object, RefType?, Guid, RecordType, StructType?, string, long, CancellationToken, ValueTask<RecordType?>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_09_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<long, RefType?, StructType, RecordType, DateTimeOffset, int?, RecordType?, object?, RefType, CancellationToken, ValueTask<object?>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_10_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RecordType?, object, string, DateTime?, int, StructType, long, RefType?, StructType?, RecordType, CancellationToken, ValueTask<string>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_11_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RecordType?, string, StructType, long?, object, DateTimeKind, RefType?, decimal, object, RecordType, byte, CancellationToken, ValueTask<DateTime>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_12_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<string, int, decimal?, object?, RefType, StructType?, DateTime?, RecordType, int, StructType, object?, string?, CancellationToken, ValueTask<RefType?>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_13_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<long, RecordType, string?, object?, RecordType?, object?, RecordType, DateTimeOffset, object, DateTimeKind, string, int, RecordType?, CancellationToken, ValueTask<long>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_14_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<int?, object?, RefType?, RefType, StructType, DateTime, int, RecordType, DateTimeKind, RecordType?, object, string, long, object, CancellationToken, ValueTask<RecordType>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public void Create_15_SourceFuncIsNull_ExpectArgumentNullException()
{
var sourceFunc = (Func<RefType, int?, string, RefType?, StructType, DateTimeKind?, DateTime, int, byte, string, RecordType?, object, decimal, long, StructType?, CancellationToken, ValueTask<RecordType>>)null!;
var ex = Assert.Throws<ArgumentNullException>(() => _ = Func.Create(sourceFunc));
Assert.Equal("func", ex.ParamName);
Assert.Equal("funcAsync", ex.ParamName);
}

[Theory]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
<Copyright>Copyright © 2020 Andrei Sergeev, Pavel Moskovoy</Copyright>
<RootNamespace>System</RootNamespace>
<AssemblyName>PrimeFuncPack.Core.Func.Factory</AssemblyName>
<Version>1.0.0-preview.1.1.0</Version>
<Version>1.0.0-preview.1.3.0</Version>
</PropertyGroup>

<ItemGroup>
Expand All @@ -22,7 +22,7 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="PrimeFuncPack.Core.Func" Version="1.0.0-preview.1.0.0" />
<PackageReference Include="PrimeFuncPack.Core.Func" Version="1.0.0-preview.1.1.0" />
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<TResult> Create<TResult>(
Func<CancellationToken, ValueTask<TResult>> func)
Func<CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T, TResult> Create<T, TResult>(
Func<T, CancellationToken, ValueTask<TResult>> func)
Func<T, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, TResult> Create<T1, T2, TResult>(
Func<T1, T2, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, TResult> Create<T1, T2, T3, TResult>(
Func<T1, T2, T3, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, TResult> Create<T1, T2, T3, T4, TResult>(
Func<T1, T2, T3, T4, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, TResult> Create<T1, T2, T3, T4, T5, TResult>(
Func<T1, T2, T3, T4, T5, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, TResult> Create<T1, T2, T3, T4, T5, T6, TResult>(
Func<T1, T2, T3, T4, T5, T6, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, TResult> Create<T1, T2, T3, T4, T5, T6, T7, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, TResult> Create<T1, T2, T3, T4, T5, T6, T7, T8, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, T8, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, T8, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult> Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult> Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult> Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult> Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult> Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult> Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ namespace System
partial class Func
{
public static IAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult> Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult>(
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, CancellationToken, ValueTask<TResult>> func)
Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, CancellationToken, ValueTask<TResult>> funcAsync)
=>
new ImplAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult>(
func ?? throw new ArgumentNullException(nameof(func)));
funcAsync ?? throw new ArgumentNullException(nameof(funcAsync)));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ namespace System
{
internal sealed class ImplAsyncFunc<TResult> : IAsyncFunc<TResult>
{
private readonly Func<CancellationToken, ValueTask<TResult>> func;
private readonly Func<CancellationToken, ValueTask<TResult>> funcAsync;

public ImplAsyncFunc(
Func<CancellationToken, ValueTask<TResult>> func)
Func<CancellationToken, ValueTask<TResult>> funcAsync)
=>
this.func = func;
this.funcAsync = funcAsync;

public ValueTask<TResult> InvokeAsync(CancellationToken cancellationToken = default)
public ValueTask<TResult> InvokeAsync(CancellationToken cancellationToken)
=>
func.Invoke(cancellationToken);
funcAsync.Invoke(cancellationToken);
}
}
Loading

0 comments on commit 023ea27

Please sign in to comment.