diff options
Diffstat (limited to 'modules/mono/glue/cs_files/SignalAwaiter.cs')
-rw-r--r-- | modules/mono/glue/cs_files/SignalAwaiter.cs | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/modules/mono/glue/cs_files/SignalAwaiter.cs b/modules/mono/glue/cs_files/SignalAwaiter.cs deleted file mode 100644 index c06f6b05c9..0000000000 --- a/modules/mono/glue/cs_files/SignalAwaiter.cs +++ /dev/null @@ -1,59 +0,0 @@ -using System; - -namespace Godot -{ - public class SignalAwaiter : IAwaiter<object[]>, IAwaitable<object[]> - { - private bool completed; - private object[] result; - private Action action; - - public SignalAwaiter(Object source, string signal, Object target) - { - NativeCalls.godot_icall_Object_connect_signal_awaiter( - Object.GetPtr(source), - signal, Object.GetPtr(target), this - ); - } - - public bool IsCompleted - { - get - { - return completed; - } - } - - public void OnCompleted(Action action) - { - this.action = action; - } - - public object[] GetResult() - { - return result; - } - - public IAwaiter<object[]> GetAwaiter() - { - return this; - } - - internal void SignalCallback(object[] args) - { - completed = true; - result = args; - - if (action != null) - { - action(); - } - } - - internal void FailureCallback() - { - action = null; - completed = true; - } - } -} |