Files
nadekobot/src/NadekoBot/Common/AsyncLazy.cs
2021-12-29 06:07:16 +01:00

20 lines
411 B
C#

#nullable disable
using System.Runtime.CompilerServices;
namespace NadekoBot.Common;
public class AsyncLazy<T> : Lazy<Task<T>>
{
public AsyncLazy(Func<T> valueFactory)
: base(() => Task.Run(valueFactory))
{
}
public AsyncLazy(Func<Task<T>> taskFactory)
: base(() => Task.Run(taskFactory))
{
}
public TaskAwaiter<T> GetAwaiter()
=> Value.GetAwaiter();
}