Skip to content

Commit

Permalink
udpate method builder
Browse files Browse the repository at this point in the history
  • Loading branch information
NMSAzulX committed Jul 10, 2024
1 parent 9c465d9 commit 0a54e00
Show file tree
Hide file tree
Showing 9 changed files with 772 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@

using Natasha.CSharp.Extension.MethodCreator;

namespace System
{
public static class NatashaAsyncDelegateExtension
{
#region Action Delegate
public static Action<T1> ToAsyncAction<T1>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1>>();
}
public static Action<T1, T2> ToAsyncAction<T1, T2>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2>>();
}
public static Action<T1, T2, T3> ToAsyncAction<T1, T2, T3>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3>>();
}
public static Action<T1, T2, T3, T4> ToAsyncAction<T1, T2, T3, T4>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4>>();
}
public static Action<T1, T2, T3, T4, T5> ToAsyncAction<T1, T2, T3, T4, T5>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4, T5>>();
}
public static Action<T1, T2, T3, T4, T5, T6> ToAsyncAction<T1, T2, T3, T4, T5, T6>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4, T5, T6>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7> ToAsyncAction<T1, T2, T3, T4, T5, T6, T7>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8> ToAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9> ToAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8, T9>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ToAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ToAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>>();
}
#endregion


#region Func Delegate
public static Func<T1> ToAsyncFunc<T1>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1>>();
}
public static Func<T1, T2> ToAsyncFunc<T1, T2>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2>>();
}
public static Func<T1, T2, T3> ToAsyncFunc<T1, T2, T3>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3>>();
}
public static Func<T1, T2, T3, T4> ToAsyncFunc<T1, T2, T3, T4>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4>>();
}
public static Func<T1, T2, T3, T4, T5> ToAsyncFunc<T1, T2, T3, T4, T5>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4, T5>>();
}
public static Func<T1, T2, T3, T4, T5, T6> ToAsyncFunc<T1, T2, T3, T4, T5, T6>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4, T5, T6>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7> ToAsyncFunc<T1, T2, T3, T4, T5, T6, T7>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8> ToAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9> ToAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ToAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ToAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(this NatashaSlimMethodBuilder builder)
{
return builder.ToAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>>();
}
#endregion

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

namespace System
{
public static class SystemDelegateExtension
public static class NatashaDelegateExtension
{
#region Action Delegate
public static Action<T1> ToAction<T1>(this NatashaSlimMethodBuilder builder)
Expand Down Expand Up @@ -56,7 +56,6 @@ public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToAction
}
#endregion


#region Func Delegate
public static Func<T1> ToFunc<T1>(this NatashaSlimMethodBuilder builder)
{
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@

using Natasha.CSharp.Extension.MethodCreator;

namespace System
{
public static class NatashaUnsafeAsyncDelegateExtension
{
#region Action Delegate
public static Action<T1> ToUnsafeAsyncAction<T1>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1>>();
}
public static Action<T1, T2> ToUnsafeAsyncAction<T1, T2>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2>>();
}
public static Action<T1, T2, T3> ToUnsafeAsyncAction<T1, T2, T3>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3>>();
}
public static Action<T1, T2, T3, T4> ToUnsafeAsyncAction<T1, T2, T3, T4>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4>>();
}
public static Action<T1, T2, T3, T4, T5> ToUnsafeAsyncAction<T1, T2, T3, T4, T5>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4, T5>>();
}
public static Action<T1, T2, T3, T4, T5, T6> ToUnsafeAsyncAction<T1, T2, T3, T4, T5, T6>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4, T5, T6>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7> ToUnsafeAsyncAction<T1, T2, T3, T4, T5, T6, T7>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8> ToUnsafeAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9> ToUnsafeAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8, T9>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ToUnsafeAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ToUnsafeAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToUnsafeAsyncAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>>();
}
#endregion


#region Func Delegate
public static Func<T1> ToUnsafeAsyncFunc<T1>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1>>();
}
public static Func<T1, T2> ToUnsafeAsyncFunc<T1, T2>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2>>();
}
public static Func<T1, T2, T3> ToUnsafeAsyncFunc<T1, T2, T3>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3>>();
}
public static Func<T1, T2, T3, T4> ToUnsafeAsyncFunc<T1, T2, T3, T4>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4>>();
}
public static Func<T1, T2, T3, T4, T5> ToUnsafeAsyncFunc<T1, T2, T3, T4, T5>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4, T5>>();
}
public static Func<T1, T2, T3, T4, T5, T6> ToUnsafeAsyncFunc<T1, T2, T3, T4, T5, T6>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4, T5, T6>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7> ToUnsafeAsyncFunc<T1, T2, T3, T4, T5, T6, T7>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8> ToUnsafeAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9> ToUnsafeAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ToUnsafeAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ToUnsafeAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToUnsafeAsyncFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeAsyncDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>>();
}
#endregion

}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@

using Natasha.CSharp.Extension.MethodCreator;

namespace System
{
public static class NatashaUnsafeDelegateExtension
{
#region Action Delegate
public static Action<T1> ToUnsafeAction<T1>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1>>();
}
public static Action<T1, T2> ToUnsafeAction<T1, T2>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2>>();
}
public static Action<T1, T2, T3> ToUnsafeAction<T1, T2, T3>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3>>();
}
public static Action<T1, T2, T3, T4> ToUnsafeAction<T1, T2, T3, T4>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4>>();
}
public static Action<T1, T2, T3, T4, T5> ToUnsafeAction<T1, T2, T3, T4, T5>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4, T5>>();
}
public static Action<T1, T2, T3, T4, T5, T6> ToUnsafeAction<T1, T2, T3, T4, T5, T6>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4, T5, T6>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7> ToUnsafeAction<T1, T2, T3, T4, T5, T6, T7>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4, T5, T6, T7>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8> ToUnsafeAction<T1, T2, T3, T4, T5, T6, T7, T8>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9> ToUnsafeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ToUnsafeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ToUnsafeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>>();
}
public static Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToUnsafeAction<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Action<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>>();
}
#endregion


#region Func Delegate
public static Func<T1> ToUnsafeFunc<T1>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1>>();
}
public static Func<T1, T2> ToUnsafeFunc<T1, T2>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2>>();
}
public static Func<T1, T2, T3> ToUnsafeFunc<T1, T2, T3>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3>>();
}
public static Func<T1, T2, T3, T4> ToUnsafeFunc<T1, T2, T3, T4>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4>>();
}
public static Func<T1, T2, T3, T4, T5> ToUnsafeFunc<T1, T2, T3, T4, T5>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4, T5>>();
}
public static Func<T1, T2, T3, T4, T5, T6> ToUnsafeFunc<T1, T2, T3, T4, T5, T6>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4, T5, T6>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7> ToUnsafeFunc<T1, T2, T3, T4, T5, T6, T7>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4, T5, T6, T7>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8> ToUnsafeFunc<T1, T2, T3, T4, T5, T6, T7, T8>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9> ToUnsafeFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ToUnsafeFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ToUnsafeFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>>();
}
public static Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToUnsafeFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(this NatashaSlimMethodBuilder builder)
{
return builder.ToUnsafeDelegate<Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>>();
}
#endregion

}
}
Loading

0 comments on commit 0a54e00

Please sign in to comment.