1
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Cysharp.Threading.Tasks;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
@@ -70,6 +71,22 @@ namespace BITKit
|
||||
return Allow ? Value : other.Invoke();
|
||||
}
|
||||
|
||||
public async UniTask<T> IfNotAllowAsync(Func<UniTask<T>> func)
|
||||
{
|
||||
return Allow ? Value : await func.Invoke();
|
||||
}
|
||||
|
||||
public async UniTask<T> SetValueThenAllowAsync(Func<UniTask<T>> func)
|
||||
{
|
||||
if (Allow)
|
||||
{
|
||||
return value;
|
||||
}
|
||||
value = await func.Invoke();
|
||||
allow = true;
|
||||
return value;
|
||||
}
|
||||
|
||||
public void SetValueThenAllow(T newValue)
|
||||
{
|
||||
value = newValue;
|
||||
|
Reference in New Issue
Block a user