2020-05-09 23:22:51 +09:00
|
|
|
|
#pragma warning disable 0649
|
|
|
|
|
|
|
2020-05-09 15:33:46 +09:00
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Cysharp.Threading.Tasks
|
|
|
|
|
|
{
|
|
|
|
|
|
public static class UniTaskValueTaskExtensions
|
|
|
|
|
|
{
|
2020-05-24 00:18:39 +09:00
|
|
|
|
public static ValueTask AsValueTask(this in UniTask task)
|
2020-05-09 15:33:46 +09:00
|
|
|
|
{
|
2020-05-24 00:18:39 +09:00
|
|
|
|
return task;
|
2020-05-09 15:33:46 +09:00
|
|
|
|
}
|
|
|
|
|
|
|
2020-05-24 00:18:39 +09:00
|
|
|
|
public static ValueTask<T> AsValueTask<T>(this in UniTask<T> task)
|
2020-05-09 15:33:46 +09:00
|
|
|
|
{
|
2020-05-24 00:18:39 +09:00
|
|
|
|
return task;
|
2020-05-09 15:33:46 +09:00
|
|
|
|
}
|
2020-05-24 01:30:52 +09:00
|
|
|
|
|
|
|
|
|
|
public static UniTask<T> AsUniTask<T>(this ValueTask<T> task, bool useCurrentSynchronizationContext = true)
|
|
|
|
|
|
{
|
|
|
|
|
|
// NOTE: get _obj and _token directly for low overhead conversion but not yet implemented.
|
|
|
|
|
|
return task.AsTask().AsUniTask(useCurrentSynchronizationContext);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public static UniTask AsUniTask(this ValueTask task, bool useCurrentSynchronizationContext = true)
|
|
|
|
|
|
{
|
|
|
|
|
|
return task.AsTask().AsUniTask(useCurrentSynchronizationContext);
|
|
|
|
|
|
}
|
2020-05-09 15:33:46 +09:00
|
|
|
|
}
|
|
|
|
|
|
}
|