| #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member | 
|   | 
| using System.Threading; | 
| using UnityEngine; | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
| using UnityEngine.EventSystems; | 
| #endif | 
|   | 
| namespace Cysharp.Threading.Tasks.Triggers | 
| { | 
| #region FixedUpdate | 
|   | 
|     public interface IAsyncFixedUpdateHandler | 
|     { | 
|         UniTask FixedUpdateAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncFixedUpdateHandler | 
|     { | 
|         UniTask IAsyncFixedUpdateHandler.FixedUpdateAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncFixedUpdateTrigger GetAsyncFixedUpdateTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncFixedUpdateTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncFixedUpdateTrigger GetAsyncFixedUpdateTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncFixedUpdateTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncFixedUpdateTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void FixedUpdate() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncFixedUpdateHandler GetFixedUpdateAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncFixedUpdateHandler GetFixedUpdateAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask FixedUpdateAsync() | 
|         { | 
|             return ((IAsyncFixedUpdateHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).FixedUpdateAsync(); | 
|         } | 
|   | 
|         public UniTask FixedUpdateAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncFixedUpdateHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).FixedUpdateAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region LateUpdate | 
|   | 
|     public interface IAsyncLateUpdateHandler | 
|     { | 
|         UniTask LateUpdateAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncLateUpdateHandler | 
|     { | 
|         UniTask IAsyncLateUpdateHandler.LateUpdateAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncLateUpdateTrigger GetAsyncLateUpdateTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncLateUpdateTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncLateUpdateTrigger GetAsyncLateUpdateTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncLateUpdateTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncLateUpdateTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void LateUpdate() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncLateUpdateHandler GetLateUpdateAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncLateUpdateHandler GetLateUpdateAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask LateUpdateAsync() | 
|         { | 
|             return ((IAsyncLateUpdateHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).LateUpdateAsync(); | 
|         } | 
|   | 
|         public UniTask LateUpdateAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncLateUpdateHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).LateUpdateAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region AnimatorIK | 
|   | 
|     public interface IAsyncOnAnimatorIKHandler | 
|     { | 
|         UniTask<int> OnAnimatorIKAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnAnimatorIKHandler | 
|     { | 
|         UniTask<int> IAsyncOnAnimatorIKHandler.OnAnimatorIKAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<int>((IUniTaskSource<int>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncAnimatorIKTrigger GetAsyncAnimatorIKTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncAnimatorIKTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncAnimatorIKTrigger GetAsyncAnimatorIKTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncAnimatorIKTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncAnimatorIKTrigger : AsyncTriggerBase<int> | 
|     { | 
|         void OnAnimatorIK(int layerIndex) | 
|         { | 
|             RaiseEvent((layerIndex)); | 
|         } | 
|   | 
|         public IAsyncOnAnimatorIKHandler GetOnAnimatorIKAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<int>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnAnimatorIKHandler GetOnAnimatorIKAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<int>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<int> OnAnimatorIKAsync() | 
|         { | 
|             return ((IAsyncOnAnimatorIKHandler)new AsyncTriggerHandler<int>(this, true)).OnAnimatorIKAsync(); | 
|         } | 
|   | 
|         public UniTask<int> OnAnimatorIKAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnAnimatorIKHandler)new AsyncTriggerHandler<int>(this, cancellationToken, true)).OnAnimatorIKAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region AnimatorMove | 
|   | 
|     public interface IAsyncOnAnimatorMoveHandler | 
|     { | 
|         UniTask OnAnimatorMoveAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnAnimatorMoveHandler | 
|     { | 
|         UniTask IAsyncOnAnimatorMoveHandler.OnAnimatorMoveAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncAnimatorMoveTrigger GetAsyncAnimatorMoveTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncAnimatorMoveTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncAnimatorMoveTrigger GetAsyncAnimatorMoveTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncAnimatorMoveTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncAnimatorMoveTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnAnimatorMove() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnAnimatorMoveHandler GetOnAnimatorMoveAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnAnimatorMoveHandler GetOnAnimatorMoveAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnAnimatorMoveAsync() | 
|         { | 
|             return ((IAsyncOnAnimatorMoveHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnAnimatorMoveAsync(); | 
|         } | 
|   | 
|         public UniTask OnAnimatorMoveAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnAnimatorMoveHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnAnimatorMoveAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region ApplicationFocus | 
|   | 
|     public interface IAsyncOnApplicationFocusHandler | 
|     { | 
|         UniTask<bool> OnApplicationFocusAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnApplicationFocusHandler | 
|     { | 
|         UniTask<bool> IAsyncOnApplicationFocusHandler.OnApplicationFocusAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<bool>((IUniTaskSource<bool>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncApplicationFocusTrigger GetAsyncApplicationFocusTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncApplicationFocusTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncApplicationFocusTrigger GetAsyncApplicationFocusTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncApplicationFocusTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncApplicationFocusTrigger : AsyncTriggerBase<bool> | 
|     { | 
|         void OnApplicationFocus(bool hasFocus) | 
|         { | 
|             RaiseEvent((hasFocus)); | 
|         } | 
|   | 
|         public IAsyncOnApplicationFocusHandler GetOnApplicationFocusAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<bool>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnApplicationFocusHandler GetOnApplicationFocusAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<bool>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<bool> OnApplicationFocusAsync() | 
|         { | 
|             return ((IAsyncOnApplicationFocusHandler)new AsyncTriggerHandler<bool>(this, true)).OnApplicationFocusAsync(); | 
|         } | 
|   | 
|         public UniTask<bool> OnApplicationFocusAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnApplicationFocusHandler)new AsyncTriggerHandler<bool>(this, cancellationToken, true)).OnApplicationFocusAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region ApplicationPause | 
|   | 
|     public interface IAsyncOnApplicationPauseHandler | 
|     { | 
|         UniTask<bool> OnApplicationPauseAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnApplicationPauseHandler | 
|     { | 
|         UniTask<bool> IAsyncOnApplicationPauseHandler.OnApplicationPauseAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<bool>((IUniTaskSource<bool>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncApplicationPauseTrigger GetAsyncApplicationPauseTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncApplicationPauseTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncApplicationPauseTrigger GetAsyncApplicationPauseTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncApplicationPauseTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncApplicationPauseTrigger : AsyncTriggerBase<bool> | 
|     { | 
|         void OnApplicationPause(bool pauseStatus) | 
|         { | 
|             RaiseEvent((pauseStatus)); | 
|         } | 
|   | 
|         public IAsyncOnApplicationPauseHandler GetOnApplicationPauseAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<bool>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnApplicationPauseHandler GetOnApplicationPauseAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<bool>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<bool> OnApplicationPauseAsync() | 
|         { | 
|             return ((IAsyncOnApplicationPauseHandler)new AsyncTriggerHandler<bool>(this, true)).OnApplicationPauseAsync(); | 
|         } | 
|   | 
|         public UniTask<bool> OnApplicationPauseAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnApplicationPauseHandler)new AsyncTriggerHandler<bool>(this, cancellationToken, true)).OnApplicationPauseAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region ApplicationQuit | 
|   | 
|     public interface IAsyncOnApplicationQuitHandler | 
|     { | 
|         UniTask OnApplicationQuitAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnApplicationQuitHandler | 
|     { | 
|         UniTask IAsyncOnApplicationQuitHandler.OnApplicationQuitAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncApplicationQuitTrigger GetAsyncApplicationQuitTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncApplicationQuitTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncApplicationQuitTrigger GetAsyncApplicationQuitTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncApplicationQuitTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncApplicationQuitTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnApplicationQuit() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnApplicationQuitHandler GetOnApplicationQuitAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnApplicationQuitHandler GetOnApplicationQuitAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnApplicationQuitAsync() | 
|         { | 
|             return ((IAsyncOnApplicationQuitHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnApplicationQuitAsync(); | 
|         } | 
|   | 
|         public UniTask OnApplicationQuitAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnApplicationQuitHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnApplicationQuitAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region AudioFilterRead | 
|   | 
|     public interface IAsyncOnAudioFilterReadHandler | 
|     { | 
|         UniTask<(float[] data, int channels)> OnAudioFilterReadAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnAudioFilterReadHandler | 
|     { | 
|         UniTask<(float[] data, int channels)> IAsyncOnAudioFilterReadHandler.OnAudioFilterReadAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<(float[] data, int channels)>((IUniTaskSource<(float[] data, int channels)>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncAudioFilterReadTrigger GetAsyncAudioFilterReadTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncAudioFilterReadTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncAudioFilterReadTrigger GetAsyncAudioFilterReadTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncAudioFilterReadTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncAudioFilterReadTrigger : AsyncTriggerBase<(float[] data, int channels)> | 
|     { | 
|         void OnAudioFilterRead(float[] data, int channels) | 
|         { | 
|             RaiseEvent((data, channels)); | 
|         } | 
|   | 
|         public IAsyncOnAudioFilterReadHandler GetOnAudioFilterReadAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<(float[] data, int channels)>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnAudioFilterReadHandler GetOnAudioFilterReadAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<(float[] data, int channels)>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<(float[] data, int channels)> OnAudioFilterReadAsync() | 
|         { | 
|             return ((IAsyncOnAudioFilterReadHandler)new AsyncTriggerHandler<(float[] data, int channels)>(this, true)).OnAudioFilterReadAsync(); | 
|         } | 
|   | 
|         public UniTask<(float[] data, int channels)> OnAudioFilterReadAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnAudioFilterReadHandler)new AsyncTriggerHandler<(float[] data, int channels)>(this, cancellationToken, true)).OnAudioFilterReadAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region BecameInvisible | 
|   | 
|     public interface IAsyncOnBecameInvisibleHandler | 
|     { | 
|         UniTask OnBecameInvisibleAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnBecameInvisibleHandler | 
|     { | 
|         UniTask IAsyncOnBecameInvisibleHandler.OnBecameInvisibleAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncBecameInvisibleTrigger GetAsyncBecameInvisibleTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncBecameInvisibleTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncBecameInvisibleTrigger GetAsyncBecameInvisibleTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncBecameInvisibleTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncBecameInvisibleTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnBecameInvisible() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnBecameInvisibleHandler GetOnBecameInvisibleAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnBecameInvisibleHandler GetOnBecameInvisibleAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnBecameInvisibleAsync() | 
|         { | 
|             return ((IAsyncOnBecameInvisibleHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnBecameInvisibleAsync(); | 
|         } | 
|   | 
|         public UniTask OnBecameInvisibleAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnBecameInvisibleHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnBecameInvisibleAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region BecameVisible | 
|   | 
|     public interface IAsyncOnBecameVisibleHandler | 
|     { | 
|         UniTask OnBecameVisibleAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnBecameVisibleHandler | 
|     { | 
|         UniTask IAsyncOnBecameVisibleHandler.OnBecameVisibleAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncBecameVisibleTrigger GetAsyncBecameVisibleTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncBecameVisibleTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncBecameVisibleTrigger GetAsyncBecameVisibleTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncBecameVisibleTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncBecameVisibleTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnBecameVisible() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnBecameVisibleHandler GetOnBecameVisibleAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnBecameVisibleHandler GetOnBecameVisibleAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnBecameVisibleAsync() | 
|         { | 
|             return ((IAsyncOnBecameVisibleHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnBecameVisibleAsync(); | 
|         } | 
|   | 
|         public UniTask OnBecameVisibleAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnBecameVisibleHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnBecameVisibleAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region BeforeTransformParentChanged | 
|   | 
|     public interface IAsyncOnBeforeTransformParentChangedHandler | 
|     { | 
|         UniTask OnBeforeTransformParentChangedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnBeforeTransformParentChangedHandler | 
|     { | 
|         UniTask IAsyncOnBeforeTransformParentChangedHandler.OnBeforeTransformParentChangedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncBeforeTransformParentChangedTrigger GetAsyncBeforeTransformParentChangedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncBeforeTransformParentChangedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncBeforeTransformParentChangedTrigger GetAsyncBeforeTransformParentChangedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncBeforeTransformParentChangedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncBeforeTransformParentChangedTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnBeforeTransformParentChanged() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnBeforeTransformParentChangedHandler GetOnBeforeTransformParentChangedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnBeforeTransformParentChangedHandler GetOnBeforeTransformParentChangedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnBeforeTransformParentChangedAsync() | 
|         { | 
|             return ((IAsyncOnBeforeTransformParentChangedHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnBeforeTransformParentChangedAsync(); | 
|         } | 
|   | 
|         public UniTask OnBeforeTransformParentChangedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnBeforeTransformParentChangedHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnBeforeTransformParentChangedAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region OnCanvasGroupChanged | 
|   | 
|     public interface IAsyncOnCanvasGroupChangedHandler | 
|     { | 
|         UniTask OnCanvasGroupChangedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnCanvasGroupChangedHandler | 
|     { | 
|         UniTask IAsyncOnCanvasGroupChangedHandler.OnCanvasGroupChangedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncOnCanvasGroupChangedTrigger GetAsyncOnCanvasGroupChangedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncOnCanvasGroupChangedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncOnCanvasGroupChangedTrigger GetAsyncOnCanvasGroupChangedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncOnCanvasGroupChangedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncOnCanvasGroupChangedTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnCanvasGroupChanged() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnCanvasGroupChangedHandler GetOnCanvasGroupChangedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnCanvasGroupChangedHandler GetOnCanvasGroupChangedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnCanvasGroupChangedAsync() | 
|         { | 
|             return ((IAsyncOnCanvasGroupChangedHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnCanvasGroupChangedAsync(); | 
|         } | 
|   | 
|         public UniTask OnCanvasGroupChangedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnCanvasGroupChangedHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnCanvasGroupChangedAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region CollisionEnter | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS_SUPPORT | 
|   | 
|     public interface IAsyncOnCollisionEnterHandler | 
|     { | 
|         UniTask<Collision> OnCollisionEnterAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnCollisionEnterHandler | 
|     { | 
|         UniTask<Collision> IAsyncOnCollisionEnterHandler.OnCollisionEnterAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collision>((IUniTaskSource<Collision>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncCollisionEnterTrigger GetAsyncCollisionEnterTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncCollisionEnterTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncCollisionEnterTrigger GetAsyncCollisionEnterTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncCollisionEnterTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncCollisionEnterTrigger : AsyncTriggerBase<Collision> | 
|     { | 
|         void OnCollisionEnter(Collision coll) | 
|         { | 
|             RaiseEvent((coll)); | 
|         } | 
|   | 
|         public IAsyncOnCollisionEnterHandler GetOnCollisionEnterAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collision>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnCollisionEnterHandler GetOnCollisionEnterAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collision>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collision> OnCollisionEnterAsync() | 
|         { | 
|             return ((IAsyncOnCollisionEnterHandler)new AsyncTriggerHandler<Collision>(this, true)).OnCollisionEnterAsync(); | 
|         } | 
|   | 
|         public UniTask<Collision> OnCollisionEnterAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnCollisionEnterHandler)new AsyncTriggerHandler<Collision>(this, cancellationToken, true)).OnCollisionEnterAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region CollisionEnter2D | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS2D_SUPPORT | 
|   | 
|     public interface IAsyncOnCollisionEnter2DHandler | 
|     { | 
|         UniTask<Collision2D> OnCollisionEnter2DAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnCollisionEnter2DHandler | 
|     { | 
|         UniTask<Collision2D> IAsyncOnCollisionEnter2DHandler.OnCollisionEnter2DAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collision2D>((IUniTaskSource<Collision2D>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncCollisionEnter2DTrigger GetAsyncCollisionEnter2DTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncCollisionEnter2DTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncCollisionEnter2DTrigger GetAsyncCollisionEnter2DTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncCollisionEnter2DTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncCollisionEnter2DTrigger : AsyncTriggerBase<Collision2D> | 
|     { | 
|         void OnCollisionEnter2D(Collision2D coll) | 
|         { | 
|             RaiseEvent((coll)); | 
|         } | 
|   | 
|         public IAsyncOnCollisionEnter2DHandler GetOnCollisionEnter2DAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collision2D>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnCollisionEnter2DHandler GetOnCollisionEnter2DAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collision2D>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collision2D> OnCollisionEnter2DAsync() | 
|         { | 
|             return ((IAsyncOnCollisionEnter2DHandler)new AsyncTriggerHandler<Collision2D>(this, true)).OnCollisionEnter2DAsync(); | 
|         } | 
|   | 
|         public UniTask<Collision2D> OnCollisionEnter2DAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnCollisionEnter2DHandler)new AsyncTriggerHandler<Collision2D>(this, cancellationToken, true)).OnCollisionEnter2DAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region CollisionExit | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS_SUPPORT | 
|   | 
|     public interface IAsyncOnCollisionExitHandler | 
|     { | 
|         UniTask<Collision> OnCollisionExitAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnCollisionExitHandler | 
|     { | 
|         UniTask<Collision> IAsyncOnCollisionExitHandler.OnCollisionExitAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collision>((IUniTaskSource<Collision>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncCollisionExitTrigger GetAsyncCollisionExitTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncCollisionExitTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncCollisionExitTrigger GetAsyncCollisionExitTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncCollisionExitTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncCollisionExitTrigger : AsyncTriggerBase<Collision> | 
|     { | 
|         void OnCollisionExit(Collision coll) | 
|         { | 
|             RaiseEvent((coll)); | 
|         } | 
|   | 
|         public IAsyncOnCollisionExitHandler GetOnCollisionExitAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collision>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnCollisionExitHandler GetOnCollisionExitAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collision>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collision> OnCollisionExitAsync() | 
|         { | 
|             return ((IAsyncOnCollisionExitHandler)new AsyncTriggerHandler<Collision>(this, true)).OnCollisionExitAsync(); | 
|         } | 
|   | 
|         public UniTask<Collision> OnCollisionExitAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnCollisionExitHandler)new AsyncTriggerHandler<Collision>(this, cancellationToken, true)).OnCollisionExitAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region CollisionExit2D | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS2D_SUPPORT | 
|   | 
|     public interface IAsyncOnCollisionExit2DHandler | 
|     { | 
|         UniTask<Collision2D> OnCollisionExit2DAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnCollisionExit2DHandler | 
|     { | 
|         UniTask<Collision2D> IAsyncOnCollisionExit2DHandler.OnCollisionExit2DAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collision2D>((IUniTaskSource<Collision2D>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncCollisionExit2DTrigger GetAsyncCollisionExit2DTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncCollisionExit2DTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncCollisionExit2DTrigger GetAsyncCollisionExit2DTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncCollisionExit2DTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncCollisionExit2DTrigger : AsyncTriggerBase<Collision2D> | 
|     { | 
|         void OnCollisionExit2D(Collision2D coll) | 
|         { | 
|             RaiseEvent((coll)); | 
|         } | 
|   | 
|         public IAsyncOnCollisionExit2DHandler GetOnCollisionExit2DAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collision2D>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnCollisionExit2DHandler GetOnCollisionExit2DAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collision2D>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collision2D> OnCollisionExit2DAsync() | 
|         { | 
|             return ((IAsyncOnCollisionExit2DHandler)new AsyncTriggerHandler<Collision2D>(this, true)).OnCollisionExit2DAsync(); | 
|         } | 
|   | 
|         public UniTask<Collision2D> OnCollisionExit2DAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnCollisionExit2DHandler)new AsyncTriggerHandler<Collision2D>(this, cancellationToken, true)).OnCollisionExit2DAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region CollisionStay | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS_SUPPORT | 
|   | 
|     public interface IAsyncOnCollisionStayHandler | 
|     { | 
|         UniTask<Collision> OnCollisionStayAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnCollisionStayHandler | 
|     { | 
|         UniTask<Collision> IAsyncOnCollisionStayHandler.OnCollisionStayAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collision>((IUniTaskSource<Collision>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncCollisionStayTrigger GetAsyncCollisionStayTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncCollisionStayTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncCollisionStayTrigger GetAsyncCollisionStayTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncCollisionStayTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncCollisionStayTrigger : AsyncTriggerBase<Collision> | 
|     { | 
|         void OnCollisionStay(Collision coll) | 
|         { | 
|             RaiseEvent((coll)); | 
|         } | 
|   | 
|         public IAsyncOnCollisionStayHandler GetOnCollisionStayAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collision>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnCollisionStayHandler GetOnCollisionStayAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collision>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collision> OnCollisionStayAsync() | 
|         { | 
|             return ((IAsyncOnCollisionStayHandler)new AsyncTriggerHandler<Collision>(this, true)).OnCollisionStayAsync(); | 
|         } | 
|   | 
|         public UniTask<Collision> OnCollisionStayAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnCollisionStayHandler)new AsyncTriggerHandler<Collision>(this, cancellationToken, true)).OnCollisionStayAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region CollisionStay2D | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS2D_SUPPORT | 
|   | 
|     public interface IAsyncOnCollisionStay2DHandler | 
|     { | 
|         UniTask<Collision2D> OnCollisionStay2DAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnCollisionStay2DHandler | 
|     { | 
|         UniTask<Collision2D> IAsyncOnCollisionStay2DHandler.OnCollisionStay2DAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collision2D>((IUniTaskSource<Collision2D>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncCollisionStay2DTrigger GetAsyncCollisionStay2DTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncCollisionStay2DTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncCollisionStay2DTrigger GetAsyncCollisionStay2DTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncCollisionStay2DTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncCollisionStay2DTrigger : AsyncTriggerBase<Collision2D> | 
|     { | 
|         void OnCollisionStay2D(Collision2D coll) | 
|         { | 
|             RaiseEvent((coll)); | 
|         } | 
|   | 
|         public IAsyncOnCollisionStay2DHandler GetOnCollisionStay2DAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collision2D>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnCollisionStay2DHandler GetOnCollisionStay2DAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collision2D>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collision2D> OnCollisionStay2DAsync() | 
|         { | 
|             return ((IAsyncOnCollisionStay2DHandler)new AsyncTriggerHandler<Collision2D>(this, true)).OnCollisionStay2DAsync(); | 
|         } | 
|   | 
|         public UniTask<Collision2D> OnCollisionStay2DAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnCollisionStay2DHandler)new AsyncTriggerHandler<Collision2D>(this, cancellationToken, true)).OnCollisionStay2DAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region ControllerColliderHit | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS_SUPPORT | 
|   | 
|     public interface IAsyncOnControllerColliderHitHandler | 
|     { | 
|         UniTask<ControllerColliderHit> OnControllerColliderHitAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnControllerColliderHitHandler | 
|     { | 
|         UniTask<ControllerColliderHit> IAsyncOnControllerColliderHitHandler.OnControllerColliderHitAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<ControllerColliderHit>((IUniTaskSource<ControllerColliderHit>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncControllerColliderHitTrigger GetAsyncControllerColliderHitTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncControllerColliderHitTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncControllerColliderHitTrigger GetAsyncControllerColliderHitTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncControllerColliderHitTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncControllerColliderHitTrigger : AsyncTriggerBase<ControllerColliderHit> | 
|     { | 
|         void OnControllerColliderHit(ControllerColliderHit hit) | 
|         { | 
|             RaiseEvent((hit)); | 
|         } | 
|   | 
|         public IAsyncOnControllerColliderHitHandler GetOnControllerColliderHitAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<ControllerColliderHit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnControllerColliderHitHandler GetOnControllerColliderHitAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<ControllerColliderHit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<ControllerColliderHit> OnControllerColliderHitAsync() | 
|         { | 
|             return ((IAsyncOnControllerColliderHitHandler)new AsyncTriggerHandler<ControllerColliderHit>(this, true)).OnControllerColliderHitAsync(); | 
|         } | 
|   | 
|         public UniTask<ControllerColliderHit> OnControllerColliderHitAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnControllerColliderHitHandler)new AsyncTriggerHandler<ControllerColliderHit>(this, cancellationToken, true)).OnControllerColliderHitAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Disable | 
|   | 
|     public interface IAsyncOnDisableHandler | 
|     { | 
|         UniTask OnDisableAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnDisableHandler | 
|     { | 
|         UniTask IAsyncOnDisableHandler.OnDisableAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncDisableTrigger GetAsyncDisableTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncDisableTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncDisableTrigger GetAsyncDisableTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncDisableTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncDisableTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnDisable() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnDisableHandler GetOnDisableAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnDisableHandler GetOnDisableAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnDisableAsync() | 
|         { | 
|             return ((IAsyncOnDisableHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnDisableAsync(); | 
|         } | 
|   | 
|         public UniTask OnDisableAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnDisableHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnDisableAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region DrawGizmos | 
|   | 
|     public interface IAsyncOnDrawGizmosHandler | 
|     { | 
|         UniTask OnDrawGizmosAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnDrawGizmosHandler | 
|     { | 
|         UniTask IAsyncOnDrawGizmosHandler.OnDrawGizmosAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncDrawGizmosTrigger GetAsyncDrawGizmosTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncDrawGizmosTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncDrawGizmosTrigger GetAsyncDrawGizmosTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncDrawGizmosTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncDrawGizmosTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnDrawGizmos() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnDrawGizmosHandler GetOnDrawGizmosAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnDrawGizmosHandler GetOnDrawGizmosAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnDrawGizmosAsync() | 
|         { | 
|             return ((IAsyncOnDrawGizmosHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnDrawGizmosAsync(); | 
|         } | 
|   | 
|         public UniTask OnDrawGizmosAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnDrawGizmosHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnDrawGizmosAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region DrawGizmosSelected | 
|   | 
|     public interface IAsyncOnDrawGizmosSelectedHandler | 
|     { | 
|         UniTask OnDrawGizmosSelectedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnDrawGizmosSelectedHandler | 
|     { | 
|         UniTask IAsyncOnDrawGizmosSelectedHandler.OnDrawGizmosSelectedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncDrawGizmosSelectedTrigger GetAsyncDrawGizmosSelectedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncDrawGizmosSelectedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncDrawGizmosSelectedTrigger GetAsyncDrawGizmosSelectedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncDrawGizmosSelectedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncDrawGizmosSelectedTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnDrawGizmosSelected() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnDrawGizmosSelectedHandler GetOnDrawGizmosSelectedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnDrawGizmosSelectedHandler GetOnDrawGizmosSelectedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnDrawGizmosSelectedAsync() | 
|         { | 
|             return ((IAsyncOnDrawGizmosSelectedHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnDrawGizmosSelectedAsync(); | 
|         } | 
|   | 
|         public UniTask OnDrawGizmosSelectedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnDrawGizmosSelectedHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnDrawGizmosSelectedAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region Enable | 
|   | 
|     public interface IAsyncOnEnableHandler | 
|     { | 
|         UniTask OnEnableAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnEnableHandler | 
|     { | 
|         UniTask IAsyncOnEnableHandler.OnEnableAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncEnableTrigger GetAsyncEnableTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncEnableTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncEnableTrigger GetAsyncEnableTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncEnableTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncEnableTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnEnable() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnEnableHandler GetOnEnableAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnEnableHandler GetOnEnableAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnEnableAsync() | 
|         { | 
|             return ((IAsyncOnEnableHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnEnableAsync(); | 
|         } | 
|   | 
|         public UniTask OnEnableAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnEnableHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnEnableAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region GUI | 
|   | 
|     public interface IAsyncOnGUIHandler | 
|     { | 
|         UniTask OnGUIAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnGUIHandler | 
|     { | 
|         UniTask IAsyncOnGUIHandler.OnGUIAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncGUITrigger GetAsyncGUITrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncGUITrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncGUITrigger GetAsyncGUITrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncGUITrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncGUITrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnGUI() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnGUIHandler GetOnGUIAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnGUIHandler GetOnGUIAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnGUIAsync() | 
|         { | 
|             return ((IAsyncOnGUIHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnGUIAsync(); | 
|         } | 
|   | 
|         public UniTask OnGUIAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnGUIHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnGUIAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region JointBreak | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS_SUPPORT | 
|   | 
|     public interface IAsyncOnJointBreakHandler | 
|     { | 
|         UniTask<float> OnJointBreakAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnJointBreakHandler | 
|     { | 
|         UniTask<float> IAsyncOnJointBreakHandler.OnJointBreakAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<float>((IUniTaskSource<float>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncJointBreakTrigger GetAsyncJointBreakTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncJointBreakTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncJointBreakTrigger GetAsyncJointBreakTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncJointBreakTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncJointBreakTrigger : AsyncTriggerBase<float> | 
|     { | 
|         void OnJointBreak(float breakForce) | 
|         { | 
|             RaiseEvent((breakForce)); | 
|         } | 
|   | 
|         public IAsyncOnJointBreakHandler GetOnJointBreakAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<float>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnJointBreakHandler GetOnJointBreakAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<float>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<float> OnJointBreakAsync() | 
|         { | 
|             return ((IAsyncOnJointBreakHandler)new AsyncTriggerHandler<float>(this, true)).OnJointBreakAsync(); | 
|         } | 
|   | 
|         public UniTask<float> OnJointBreakAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnJointBreakHandler)new AsyncTriggerHandler<float>(this, cancellationToken, true)).OnJointBreakAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region JointBreak2D | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS2D_SUPPORT | 
|   | 
|     public interface IAsyncOnJointBreak2DHandler | 
|     { | 
|         UniTask<Joint2D> OnJointBreak2DAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnJointBreak2DHandler | 
|     { | 
|         UniTask<Joint2D> IAsyncOnJointBreak2DHandler.OnJointBreak2DAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Joint2D>((IUniTaskSource<Joint2D>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncJointBreak2DTrigger GetAsyncJointBreak2DTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncJointBreak2DTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncJointBreak2DTrigger GetAsyncJointBreak2DTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncJointBreak2DTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncJointBreak2DTrigger : AsyncTriggerBase<Joint2D> | 
|     { | 
|         void OnJointBreak2D(Joint2D brokenJoint) | 
|         { | 
|             RaiseEvent((brokenJoint)); | 
|         } | 
|   | 
|         public IAsyncOnJointBreak2DHandler GetOnJointBreak2DAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Joint2D>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnJointBreak2DHandler GetOnJointBreak2DAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Joint2D>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Joint2D> OnJointBreak2DAsync() | 
|         { | 
|             return ((IAsyncOnJointBreak2DHandler)new AsyncTriggerHandler<Joint2D>(this, true)).OnJointBreak2DAsync(); | 
|         } | 
|   | 
|         public UniTask<Joint2D> OnJointBreak2DAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnJointBreak2DHandler)new AsyncTriggerHandler<Joint2D>(this, cancellationToken, true)).OnJointBreak2DAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region MouseDown | 
| #if !(UNITY_IPHONE || UNITY_ANDROID || UNITY_METRO) | 
|   | 
|     public interface IAsyncOnMouseDownHandler | 
|     { | 
|         UniTask OnMouseDownAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnMouseDownHandler | 
|     { | 
|         UniTask IAsyncOnMouseDownHandler.OnMouseDownAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncMouseDownTrigger GetAsyncMouseDownTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncMouseDownTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncMouseDownTrigger GetAsyncMouseDownTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncMouseDownTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncMouseDownTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnMouseDown() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnMouseDownHandler GetOnMouseDownAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnMouseDownHandler GetOnMouseDownAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnMouseDownAsync() | 
|         { | 
|             return ((IAsyncOnMouseDownHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnMouseDownAsync(); | 
|         } | 
|   | 
|         public UniTask OnMouseDownAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnMouseDownHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnMouseDownAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region MouseDrag | 
| #if !(UNITY_IPHONE || UNITY_ANDROID || UNITY_METRO) | 
|   | 
|     public interface IAsyncOnMouseDragHandler | 
|     { | 
|         UniTask OnMouseDragAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnMouseDragHandler | 
|     { | 
|         UniTask IAsyncOnMouseDragHandler.OnMouseDragAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncMouseDragTrigger GetAsyncMouseDragTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncMouseDragTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncMouseDragTrigger GetAsyncMouseDragTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncMouseDragTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncMouseDragTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnMouseDrag() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnMouseDragHandler GetOnMouseDragAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnMouseDragHandler GetOnMouseDragAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnMouseDragAsync() | 
|         { | 
|             return ((IAsyncOnMouseDragHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnMouseDragAsync(); | 
|         } | 
|   | 
|         public UniTask OnMouseDragAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnMouseDragHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnMouseDragAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region MouseEnter | 
| #if !(UNITY_IPHONE || UNITY_ANDROID || UNITY_METRO) | 
|   | 
|     public interface IAsyncOnMouseEnterHandler | 
|     { | 
|         UniTask OnMouseEnterAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnMouseEnterHandler | 
|     { | 
|         UniTask IAsyncOnMouseEnterHandler.OnMouseEnterAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncMouseEnterTrigger GetAsyncMouseEnterTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncMouseEnterTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncMouseEnterTrigger GetAsyncMouseEnterTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncMouseEnterTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncMouseEnterTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnMouseEnter() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnMouseEnterHandler GetOnMouseEnterAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnMouseEnterHandler GetOnMouseEnterAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnMouseEnterAsync() | 
|         { | 
|             return ((IAsyncOnMouseEnterHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnMouseEnterAsync(); | 
|         } | 
|   | 
|         public UniTask OnMouseEnterAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnMouseEnterHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnMouseEnterAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region MouseExit | 
| #if !(UNITY_IPHONE || UNITY_ANDROID || UNITY_METRO) | 
|   | 
|     public interface IAsyncOnMouseExitHandler | 
|     { | 
|         UniTask OnMouseExitAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnMouseExitHandler | 
|     { | 
|         UniTask IAsyncOnMouseExitHandler.OnMouseExitAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncMouseExitTrigger GetAsyncMouseExitTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncMouseExitTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncMouseExitTrigger GetAsyncMouseExitTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncMouseExitTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncMouseExitTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnMouseExit() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnMouseExitHandler GetOnMouseExitAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnMouseExitHandler GetOnMouseExitAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnMouseExitAsync() | 
|         { | 
|             return ((IAsyncOnMouseExitHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnMouseExitAsync(); | 
|         } | 
|   | 
|         public UniTask OnMouseExitAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnMouseExitHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnMouseExitAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region MouseOver | 
| #if !(UNITY_IPHONE || UNITY_ANDROID || UNITY_METRO) | 
|   | 
|     public interface IAsyncOnMouseOverHandler | 
|     { | 
|         UniTask OnMouseOverAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnMouseOverHandler | 
|     { | 
|         UniTask IAsyncOnMouseOverHandler.OnMouseOverAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncMouseOverTrigger GetAsyncMouseOverTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncMouseOverTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncMouseOverTrigger GetAsyncMouseOverTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncMouseOverTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncMouseOverTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnMouseOver() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnMouseOverHandler GetOnMouseOverAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnMouseOverHandler GetOnMouseOverAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnMouseOverAsync() | 
|         { | 
|             return ((IAsyncOnMouseOverHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnMouseOverAsync(); | 
|         } | 
|   | 
|         public UniTask OnMouseOverAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnMouseOverHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnMouseOverAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region MouseUp | 
| #if !(UNITY_IPHONE || UNITY_ANDROID || UNITY_METRO) | 
|   | 
|     public interface IAsyncOnMouseUpHandler | 
|     { | 
|         UniTask OnMouseUpAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnMouseUpHandler | 
|     { | 
|         UniTask IAsyncOnMouseUpHandler.OnMouseUpAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncMouseUpTrigger GetAsyncMouseUpTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncMouseUpTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncMouseUpTrigger GetAsyncMouseUpTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncMouseUpTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncMouseUpTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnMouseUp() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnMouseUpHandler GetOnMouseUpAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnMouseUpHandler GetOnMouseUpAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnMouseUpAsync() | 
|         { | 
|             return ((IAsyncOnMouseUpHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnMouseUpAsync(); | 
|         } | 
|   | 
|         public UniTask OnMouseUpAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnMouseUpHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnMouseUpAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region MouseUpAsButton | 
| #if !(UNITY_IPHONE || UNITY_ANDROID || UNITY_METRO) | 
|   | 
|     public interface IAsyncOnMouseUpAsButtonHandler | 
|     { | 
|         UniTask OnMouseUpAsButtonAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnMouseUpAsButtonHandler | 
|     { | 
|         UniTask IAsyncOnMouseUpAsButtonHandler.OnMouseUpAsButtonAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncMouseUpAsButtonTrigger GetAsyncMouseUpAsButtonTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncMouseUpAsButtonTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncMouseUpAsButtonTrigger GetAsyncMouseUpAsButtonTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncMouseUpAsButtonTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncMouseUpAsButtonTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnMouseUpAsButton() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnMouseUpAsButtonHandler GetOnMouseUpAsButtonAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnMouseUpAsButtonHandler GetOnMouseUpAsButtonAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnMouseUpAsButtonAsync() | 
|         { | 
|             return ((IAsyncOnMouseUpAsButtonHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnMouseUpAsButtonAsync(); | 
|         } | 
|   | 
|         public UniTask OnMouseUpAsButtonAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnMouseUpAsButtonHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnMouseUpAsButtonAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region ParticleCollision | 
|   | 
|     public interface IAsyncOnParticleCollisionHandler | 
|     { | 
|         UniTask<GameObject> OnParticleCollisionAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnParticleCollisionHandler | 
|     { | 
|         UniTask<GameObject> IAsyncOnParticleCollisionHandler.OnParticleCollisionAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<GameObject>((IUniTaskSource<GameObject>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncParticleCollisionTrigger GetAsyncParticleCollisionTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncParticleCollisionTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncParticleCollisionTrigger GetAsyncParticleCollisionTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncParticleCollisionTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncParticleCollisionTrigger : AsyncTriggerBase<GameObject> | 
|     { | 
|         void OnParticleCollision(GameObject other) | 
|         { | 
|             RaiseEvent((other)); | 
|         } | 
|   | 
|         public IAsyncOnParticleCollisionHandler GetOnParticleCollisionAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<GameObject>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnParticleCollisionHandler GetOnParticleCollisionAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<GameObject>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<GameObject> OnParticleCollisionAsync() | 
|         { | 
|             return ((IAsyncOnParticleCollisionHandler)new AsyncTriggerHandler<GameObject>(this, true)).OnParticleCollisionAsync(); | 
|         } | 
|   | 
|         public UniTask<GameObject> OnParticleCollisionAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnParticleCollisionHandler)new AsyncTriggerHandler<GameObject>(this, cancellationToken, true)).OnParticleCollisionAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region ParticleSystemStopped | 
|   | 
|     public interface IAsyncOnParticleSystemStoppedHandler | 
|     { | 
|         UniTask OnParticleSystemStoppedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnParticleSystemStoppedHandler | 
|     { | 
|         UniTask IAsyncOnParticleSystemStoppedHandler.OnParticleSystemStoppedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncParticleSystemStoppedTrigger GetAsyncParticleSystemStoppedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncParticleSystemStoppedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncParticleSystemStoppedTrigger GetAsyncParticleSystemStoppedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncParticleSystemStoppedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncParticleSystemStoppedTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnParticleSystemStopped() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnParticleSystemStoppedHandler GetOnParticleSystemStoppedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnParticleSystemStoppedHandler GetOnParticleSystemStoppedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnParticleSystemStoppedAsync() | 
|         { | 
|             return ((IAsyncOnParticleSystemStoppedHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnParticleSystemStoppedAsync(); | 
|         } | 
|   | 
|         public UniTask OnParticleSystemStoppedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnParticleSystemStoppedHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnParticleSystemStoppedAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region ParticleTrigger | 
|   | 
|     public interface IAsyncOnParticleTriggerHandler | 
|     { | 
|         UniTask OnParticleTriggerAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnParticleTriggerHandler | 
|     { | 
|         UniTask IAsyncOnParticleTriggerHandler.OnParticleTriggerAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncParticleTriggerTrigger GetAsyncParticleTriggerTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncParticleTriggerTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncParticleTriggerTrigger GetAsyncParticleTriggerTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncParticleTriggerTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncParticleTriggerTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnParticleTrigger() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnParticleTriggerHandler GetOnParticleTriggerAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnParticleTriggerHandler GetOnParticleTriggerAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnParticleTriggerAsync() | 
|         { | 
|             return ((IAsyncOnParticleTriggerHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnParticleTriggerAsync(); | 
|         } | 
|   | 
|         public UniTask OnParticleTriggerAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnParticleTriggerHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnParticleTriggerAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region ParticleUpdateJobScheduled | 
| #if UNITY_2019_3_OR_NEWER && (!UNITY_2019_1_OR_NEWER || UNITASK_PARTICLESYSTEM_SUPPORT) | 
|   | 
|     public interface IAsyncOnParticleUpdateJobScheduledHandler | 
|     { | 
|         UniTask<UnityEngine.ParticleSystemJobs.ParticleSystemJobData> OnParticleUpdateJobScheduledAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnParticleUpdateJobScheduledHandler | 
|     { | 
|         UniTask<UnityEngine.ParticleSystemJobs.ParticleSystemJobData> IAsyncOnParticleUpdateJobScheduledHandler.OnParticleUpdateJobScheduledAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<UnityEngine.ParticleSystemJobs.ParticleSystemJobData>((IUniTaskSource<UnityEngine.ParticleSystemJobs.ParticleSystemJobData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncParticleUpdateJobScheduledTrigger GetAsyncParticleUpdateJobScheduledTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncParticleUpdateJobScheduledTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncParticleUpdateJobScheduledTrigger GetAsyncParticleUpdateJobScheduledTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncParticleUpdateJobScheduledTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncParticleUpdateJobScheduledTrigger : AsyncTriggerBase<UnityEngine.ParticleSystemJobs.ParticleSystemJobData> | 
|     { | 
|         void OnParticleUpdateJobScheduled(UnityEngine.ParticleSystemJobs.ParticleSystemJobData particles) | 
|         { | 
|             RaiseEvent((particles)); | 
|         } | 
|   | 
|         public IAsyncOnParticleUpdateJobScheduledHandler GetOnParticleUpdateJobScheduledAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<UnityEngine.ParticleSystemJobs.ParticleSystemJobData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnParticleUpdateJobScheduledHandler GetOnParticleUpdateJobScheduledAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<UnityEngine.ParticleSystemJobs.ParticleSystemJobData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<UnityEngine.ParticleSystemJobs.ParticleSystemJobData> OnParticleUpdateJobScheduledAsync() | 
|         { | 
|             return ((IAsyncOnParticleUpdateJobScheduledHandler)new AsyncTriggerHandler<UnityEngine.ParticleSystemJobs.ParticleSystemJobData>(this, true)).OnParticleUpdateJobScheduledAsync(); | 
|         } | 
|   | 
|         public UniTask<UnityEngine.ParticleSystemJobs.ParticleSystemJobData> OnParticleUpdateJobScheduledAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnParticleUpdateJobScheduledHandler)new AsyncTriggerHandler<UnityEngine.ParticleSystemJobs.ParticleSystemJobData>(this, cancellationToken, true)).OnParticleUpdateJobScheduledAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region PostRender | 
|   | 
|     public interface IAsyncOnPostRenderHandler | 
|     { | 
|         UniTask OnPostRenderAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnPostRenderHandler | 
|     { | 
|         UniTask IAsyncOnPostRenderHandler.OnPostRenderAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncPostRenderTrigger GetAsyncPostRenderTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncPostRenderTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncPostRenderTrigger GetAsyncPostRenderTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncPostRenderTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncPostRenderTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnPostRender() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnPostRenderHandler GetOnPostRenderAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnPostRenderHandler GetOnPostRenderAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnPostRenderAsync() | 
|         { | 
|             return ((IAsyncOnPostRenderHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnPostRenderAsync(); | 
|         } | 
|   | 
|         public UniTask OnPostRenderAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnPostRenderHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnPostRenderAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region PreCull | 
|   | 
|     public interface IAsyncOnPreCullHandler | 
|     { | 
|         UniTask OnPreCullAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnPreCullHandler | 
|     { | 
|         UniTask IAsyncOnPreCullHandler.OnPreCullAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncPreCullTrigger GetAsyncPreCullTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncPreCullTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncPreCullTrigger GetAsyncPreCullTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncPreCullTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncPreCullTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnPreCull() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnPreCullHandler GetOnPreCullAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnPreCullHandler GetOnPreCullAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnPreCullAsync() | 
|         { | 
|             return ((IAsyncOnPreCullHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnPreCullAsync(); | 
|         } | 
|   | 
|         public UniTask OnPreCullAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnPreCullHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnPreCullAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region PreRender | 
|   | 
|     public interface IAsyncOnPreRenderHandler | 
|     { | 
|         UniTask OnPreRenderAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnPreRenderHandler | 
|     { | 
|         UniTask IAsyncOnPreRenderHandler.OnPreRenderAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncPreRenderTrigger GetAsyncPreRenderTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncPreRenderTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncPreRenderTrigger GetAsyncPreRenderTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncPreRenderTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncPreRenderTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnPreRender() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnPreRenderHandler GetOnPreRenderAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnPreRenderHandler GetOnPreRenderAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnPreRenderAsync() | 
|         { | 
|             return ((IAsyncOnPreRenderHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnPreRenderAsync(); | 
|         } | 
|   | 
|         public UniTask OnPreRenderAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnPreRenderHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnPreRenderAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region RectTransformDimensionsChange | 
|   | 
|     public interface IAsyncOnRectTransformDimensionsChangeHandler | 
|     { | 
|         UniTask OnRectTransformDimensionsChangeAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnRectTransformDimensionsChangeHandler | 
|     { | 
|         UniTask IAsyncOnRectTransformDimensionsChangeHandler.OnRectTransformDimensionsChangeAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncRectTransformDimensionsChangeTrigger GetAsyncRectTransformDimensionsChangeTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncRectTransformDimensionsChangeTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncRectTransformDimensionsChangeTrigger GetAsyncRectTransformDimensionsChangeTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncRectTransformDimensionsChangeTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncRectTransformDimensionsChangeTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnRectTransformDimensionsChange() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnRectTransformDimensionsChangeHandler GetOnRectTransformDimensionsChangeAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnRectTransformDimensionsChangeHandler GetOnRectTransformDimensionsChangeAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnRectTransformDimensionsChangeAsync() | 
|         { | 
|             return ((IAsyncOnRectTransformDimensionsChangeHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnRectTransformDimensionsChangeAsync(); | 
|         } | 
|   | 
|         public UniTask OnRectTransformDimensionsChangeAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnRectTransformDimensionsChangeHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnRectTransformDimensionsChangeAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region RectTransformRemoved | 
|   | 
|     public interface IAsyncOnRectTransformRemovedHandler | 
|     { | 
|         UniTask OnRectTransformRemovedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnRectTransformRemovedHandler | 
|     { | 
|         UniTask IAsyncOnRectTransformRemovedHandler.OnRectTransformRemovedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncRectTransformRemovedTrigger GetAsyncRectTransformRemovedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncRectTransformRemovedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncRectTransformRemovedTrigger GetAsyncRectTransformRemovedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncRectTransformRemovedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncRectTransformRemovedTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnRectTransformRemoved() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnRectTransformRemovedHandler GetOnRectTransformRemovedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnRectTransformRemovedHandler GetOnRectTransformRemovedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnRectTransformRemovedAsync() | 
|         { | 
|             return ((IAsyncOnRectTransformRemovedHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnRectTransformRemovedAsync(); | 
|         } | 
|   | 
|         public UniTask OnRectTransformRemovedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnRectTransformRemovedHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnRectTransformRemovedAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region RenderImage | 
|   | 
|     public interface IAsyncOnRenderImageHandler | 
|     { | 
|         UniTask<(RenderTexture source, RenderTexture destination)> OnRenderImageAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnRenderImageHandler | 
|     { | 
|         UniTask<(RenderTexture source, RenderTexture destination)> IAsyncOnRenderImageHandler.OnRenderImageAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<(RenderTexture source, RenderTexture destination)>((IUniTaskSource<(RenderTexture source, RenderTexture destination)>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncRenderImageTrigger GetAsyncRenderImageTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncRenderImageTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncRenderImageTrigger GetAsyncRenderImageTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncRenderImageTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncRenderImageTrigger : AsyncTriggerBase<(RenderTexture source, RenderTexture destination)> | 
|     { | 
|         void OnRenderImage(RenderTexture source, RenderTexture destination) | 
|         { | 
|             RaiseEvent((source, destination)); | 
|         } | 
|   | 
|         public IAsyncOnRenderImageHandler GetOnRenderImageAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<(RenderTexture source, RenderTexture destination)>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnRenderImageHandler GetOnRenderImageAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<(RenderTexture source, RenderTexture destination)>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<(RenderTexture source, RenderTexture destination)> OnRenderImageAsync() | 
|         { | 
|             return ((IAsyncOnRenderImageHandler)new AsyncTriggerHandler<(RenderTexture source, RenderTexture destination)>(this, true)).OnRenderImageAsync(); | 
|         } | 
|   | 
|         public UniTask<(RenderTexture source, RenderTexture destination)> OnRenderImageAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnRenderImageHandler)new AsyncTriggerHandler<(RenderTexture source, RenderTexture destination)>(this, cancellationToken, true)).OnRenderImageAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region RenderObject | 
|   | 
|     public interface IAsyncOnRenderObjectHandler | 
|     { | 
|         UniTask OnRenderObjectAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnRenderObjectHandler | 
|     { | 
|         UniTask IAsyncOnRenderObjectHandler.OnRenderObjectAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncRenderObjectTrigger GetAsyncRenderObjectTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncRenderObjectTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncRenderObjectTrigger GetAsyncRenderObjectTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncRenderObjectTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncRenderObjectTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnRenderObject() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnRenderObjectHandler GetOnRenderObjectAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnRenderObjectHandler GetOnRenderObjectAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnRenderObjectAsync() | 
|         { | 
|             return ((IAsyncOnRenderObjectHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnRenderObjectAsync(); | 
|         } | 
|   | 
|         public UniTask OnRenderObjectAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnRenderObjectHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnRenderObjectAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region ServerInitialized | 
|   | 
|     public interface IAsyncOnServerInitializedHandler | 
|     { | 
|         UniTask OnServerInitializedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnServerInitializedHandler | 
|     { | 
|         UniTask IAsyncOnServerInitializedHandler.OnServerInitializedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncServerInitializedTrigger GetAsyncServerInitializedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncServerInitializedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncServerInitializedTrigger GetAsyncServerInitializedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncServerInitializedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncServerInitializedTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnServerInitialized() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnServerInitializedHandler GetOnServerInitializedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnServerInitializedHandler GetOnServerInitializedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnServerInitializedAsync() | 
|         { | 
|             return ((IAsyncOnServerInitializedHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnServerInitializedAsync(); | 
|         } | 
|   | 
|         public UniTask OnServerInitializedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnServerInitializedHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnServerInitializedAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region TransformChildrenChanged | 
|   | 
|     public interface IAsyncOnTransformChildrenChangedHandler | 
|     { | 
|         UniTask OnTransformChildrenChangedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnTransformChildrenChangedHandler | 
|     { | 
|         UniTask IAsyncOnTransformChildrenChangedHandler.OnTransformChildrenChangedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncTransformChildrenChangedTrigger GetAsyncTransformChildrenChangedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncTransformChildrenChangedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncTransformChildrenChangedTrigger GetAsyncTransformChildrenChangedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncTransformChildrenChangedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncTransformChildrenChangedTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnTransformChildrenChanged() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnTransformChildrenChangedHandler GetOnTransformChildrenChangedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnTransformChildrenChangedHandler GetOnTransformChildrenChangedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnTransformChildrenChangedAsync() | 
|         { | 
|             return ((IAsyncOnTransformChildrenChangedHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnTransformChildrenChangedAsync(); | 
|         } | 
|   | 
|         public UniTask OnTransformChildrenChangedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnTransformChildrenChangedHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnTransformChildrenChangedAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region TransformParentChanged | 
|   | 
|     public interface IAsyncOnTransformParentChangedHandler | 
|     { | 
|         UniTask OnTransformParentChangedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnTransformParentChangedHandler | 
|     { | 
|         UniTask IAsyncOnTransformParentChangedHandler.OnTransformParentChangedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncTransformParentChangedTrigger GetAsyncTransformParentChangedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncTransformParentChangedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncTransformParentChangedTrigger GetAsyncTransformParentChangedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncTransformParentChangedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncTransformParentChangedTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnTransformParentChanged() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnTransformParentChangedHandler GetOnTransformParentChangedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnTransformParentChangedHandler GetOnTransformParentChangedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnTransformParentChangedAsync() | 
|         { | 
|             return ((IAsyncOnTransformParentChangedHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnTransformParentChangedAsync(); | 
|         } | 
|   | 
|         public UniTask OnTransformParentChangedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnTransformParentChangedHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnTransformParentChangedAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region TriggerEnter | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS_SUPPORT | 
|   | 
|     public interface IAsyncOnTriggerEnterHandler | 
|     { | 
|         UniTask<Collider> OnTriggerEnterAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnTriggerEnterHandler | 
|     { | 
|         UniTask<Collider> IAsyncOnTriggerEnterHandler.OnTriggerEnterAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collider>((IUniTaskSource<Collider>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncTriggerEnterTrigger GetAsyncTriggerEnterTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncTriggerEnterTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncTriggerEnterTrigger GetAsyncTriggerEnterTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncTriggerEnterTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncTriggerEnterTrigger : AsyncTriggerBase<Collider> | 
|     { | 
|         void OnTriggerEnter(Collider other) | 
|         { | 
|             RaiseEvent((other)); | 
|         } | 
|   | 
|         public IAsyncOnTriggerEnterHandler GetOnTriggerEnterAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collider>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnTriggerEnterHandler GetOnTriggerEnterAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collider>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collider> OnTriggerEnterAsync() | 
|         { | 
|             return ((IAsyncOnTriggerEnterHandler)new AsyncTriggerHandler<Collider>(this, true)).OnTriggerEnterAsync(); | 
|         } | 
|   | 
|         public UniTask<Collider> OnTriggerEnterAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnTriggerEnterHandler)new AsyncTriggerHandler<Collider>(this, cancellationToken, true)).OnTriggerEnterAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region TriggerEnter2D | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS2D_SUPPORT | 
|   | 
|     public interface IAsyncOnTriggerEnter2DHandler | 
|     { | 
|         UniTask<Collider2D> OnTriggerEnter2DAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnTriggerEnter2DHandler | 
|     { | 
|         UniTask<Collider2D> IAsyncOnTriggerEnter2DHandler.OnTriggerEnter2DAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collider2D>((IUniTaskSource<Collider2D>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncTriggerEnter2DTrigger GetAsyncTriggerEnter2DTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncTriggerEnter2DTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncTriggerEnter2DTrigger GetAsyncTriggerEnter2DTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncTriggerEnter2DTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncTriggerEnter2DTrigger : AsyncTriggerBase<Collider2D> | 
|     { | 
|         void OnTriggerEnter2D(Collider2D other) | 
|         { | 
|             RaiseEvent((other)); | 
|         } | 
|   | 
|         public IAsyncOnTriggerEnter2DHandler GetOnTriggerEnter2DAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collider2D>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnTriggerEnter2DHandler GetOnTriggerEnter2DAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collider2D>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collider2D> OnTriggerEnter2DAsync() | 
|         { | 
|             return ((IAsyncOnTriggerEnter2DHandler)new AsyncTriggerHandler<Collider2D>(this, true)).OnTriggerEnter2DAsync(); | 
|         } | 
|   | 
|         public UniTask<Collider2D> OnTriggerEnter2DAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnTriggerEnter2DHandler)new AsyncTriggerHandler<Collider2D>(this, cancellationToken, true)).OnTriggerEnter2DAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region TriggerExit | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS_SUPPORT | 
|   | 
|     public interface IAsyncOnTriggerExitHandler | 
|     { | 
|         UniTask<Collider> OnTriggerExitAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnTriggerExitHandler | 
|     { | 
|         UniTask<Collider> IAsyncOnTriggerExitHandler.OnTriggerExitAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collider>((IUniTaskSource<Collider>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncTriggerExitTrigger GetAsyncTriggerExitTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncTriggerExitTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncTriggerExitTrigger GetAsyncTriggerExitTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncTriggerExitTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncTriggerExitTrigger : AsyncTriggerBase<Collider> | 
|     { | 
|         void OnTriggerExit(Collider other) | 
|         { | 
|             RaiseEvent((other)); | 
|         } | 
|   | 
|         public IAsyncOnTriggerExitHandler GetOnTriggerExitAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collider>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnTriggerExitHandler GetOnTriggerExitAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collider>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collider> OnTriggerExitAsync() | 
|         { | 
|             return ((IAsyncOnTriggerExitHandler)new AsyncTriggerHandler<Collider>(this, true)).OnTriggerExitAsync(); | 
|         } | 
|   | 
|         public UniTask<Collider> OnTriggerExitAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnTriggerExitHandler)new AsyncTriggerHandler<Collider>(this, cancellationToken, true)).OnTriggerExitAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region TriggerExit2D | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS2D_SUPPORT | 
|   | 
|     public interface IAsyncOnTriggerExit2DHandler | 
|     { | 
|         UniTask<Collider2D> OnTriggerExit2DAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnTriggerExit2DHandler | 
|     { | 
|         UniTask<Collider2D> IAsyncOnTriggerExit2DHandler.OnTriggerExit2DAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collider2D>((IUniTaskSource<Collider2D>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncTriggerExit2DTrigger GetAsyncTriggerExit2DTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncTriggerExit2DTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncTriggerExit2DTrigger GetAsyncTriggerExit2DTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncTriggerExit2DTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncTriggerExit2DTrigger : AsyncTriggerBase<Collider2D> | 
|     { | 
|         void OnTriggerExit2D(Collider2D other) | 
|         { | 
|             RaiseEvent((other)); | 
|         } | 
|   | 
|         public IAsyncOnTriggerExit2DHandler GetOnTriggerExit2DAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collider2D>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnTriggerExit2DHandler GetOnTriggerExit2DAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collider2D>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collider2D> OnTriggerExit2DAsync() | 
|         { | 
|             return ((IAsyncOnTriggerExit2DHandler)new AsyncTriggerHandler<Collider2D>(this, true)).OnTriggerExit2DAsync(); | 
|         } | 
|   | 
|         public UniTask<Collider2D> OnTriggerExit2DAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnTriggerExit2DHandler)new AsyncTriggerHandler<Collider2D>(this, cancellationToken, true)).OnTriggerExit2DAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region TriggerStay | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS_SUPPORT | 
|   | 
|     public interface IAsyncOnTriggerStayHandler | 
|     { | 
|         UniTask<Collider> OnTriggerStayAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnTriggerStayHandler | 
|     { | 
|         UniTask<Collider> IAsyncOnTriggerStayHandler.OnTriggerStayAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collider>((IUniTaskSource<Collider>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncTriggerStayTrigger GetAsyncTriggerStayTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncTriggerStayTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncTriggerStayTrigger GetAsyncTriggerStayTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncTriggerStayTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncTriggerStayTrigger : AsyncTriggerBase<Collider> | 
|     { | 
|         void OnTriggerStay(Collider other) | 
|         { | 
|             RaiseEvent((other)); | 
|         } | 
|   | 
|         public IAsyncOnTriggerStayHandler GetOnTriggerStayAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collider>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnTriggerStayHandler GetOnTriggerStayAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collider>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collider> OnTriggerStayAsync() | 
|         { | 
|             return ((IAsyncOnTriggerStayHandler)new AsyncTriggerHandler<Collider>(this, true)).OnTriggerStayAsync(); | 
|         } | 
|   | 
|         public UniTask<Collider> OnTriggerStayAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnTriggerStayHandler)new AsyncTriggerHandler<Collider>(this, cancellationToken, true)).OnTriggerStayAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region TriggerStay2D | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_PHYSICS2D_SUPPORT | 
|   | 
|     public interface IAsyncOnTriggerStay2DHandler | 
|     { | 
|         UniTask<Collider2D> OnTriggerStay2DAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnTriggerStay2DHandler | 
|     { | 
|         UniTask<Collider2D> IAsyncOnTriggerStay2DHandler.OnTriggerStay2DAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<Collider2D>((IUniTaskSource<Collider2D>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncTriggerStay2DTrigger GetAsyncTriggerStay2DTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncTriggerStay2DTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncTriggerStay2DTrigger GetAsyncTriggerStay2DTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncTriggerStay2DTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncTriggerStay2DTrigger : AsyncTriggerBase<Collider2D> | 
|     { | 
|         void OnTriggerStay2D(Collider2D other) | 
|         { | 
|             RaiseEvent((other)); | 
|         } | 
|   | 
|         public IAsyncOnTriggerStay2DHandler GetOnTriggerStay2DAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<Collider2D>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnTriggerStay2DHandler GetOnTriggerStay2DAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<Collider2D>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<Collider2D> OnTriggerStay2DAsync() | 
|         { | 
|             return ((IAsyncOnTriggerStay2DHandler)new AsyncTriggerHandler<Collider2D>(this, true)).OnTriggerStay2DAsync(); | 
|         } | 
|   | 
|         public UniTask<Collider2D> OnTriggerStay2DAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnTriggerStay2DHandler)new AsyncTriggerHandler<Collider2D>(this, cancellationToken, true)).OnTriggerStay2DAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Validate | 
|   | 
|     public interface IAsyncOnValidateHandler | 
|     { | 
|         UniTask OnValidateAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnValidateHandler | 
|     { | 
|         UniTask IAsyncOnValidateHandler.OnValidateAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncValidateTrigger GetAsyncValidateTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncValidateTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncValidateTrigger GetAsyncValidateTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncValidateTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncValidateTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnValidate() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnValidateHandler GetOnValidateAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnValidateHandler GetOnValidateAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnValidateAsync() | 
|         { | 
|             return ((IAsyncOnValidateHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnValidateAsync(); | 
|         } | 
|   | 
|         public UniTask OnValidateAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnValidateHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnValidateAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region WillRenderObject | 
|   | 
|     public interface IAsyncOnWillRenderObjectHandler | 
|     { | 
|         UniTask OnWillRenderObjectAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnWillRenderObjectHandler | 
|     { | 
|         UniTask IAsyncOnWillRenderObjectHandler.OnWillRenderObjectAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncWillRenderObjectTrigger GetAsyncWillRenderObjectTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncWillRenderObjectTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncWillRenderObjectTrigger GetAsyncWillRenderObjectTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncWillRenderObjectTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncWillRenderObjectTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void OnWillRenderObject() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncOnWillRenderObjectHandler GetOnWillRenderObjectAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnWillRenderObjectHandler GetOnWillRenderObjectAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask OnWillRenderObjectAsync() | 
|         { | 
|             return ((IAsyncOnWillRenderObjectHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).OnWillRenderObjectAsync(); | 
|         } | 
|   | 
|         public UniTask OnWillRenderObjectAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnWillRenderObjectHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).OnWillRenderObjectAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region Reset | 
|   | 
|     public interface IAsyncResetHandler | 
|     { | 
|         UniTask ResetAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncResetHandler | 
|     { | 
|         UniTask IAsyncResetHandler.ResetAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncResetTrigger GetAsyncResetTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncResetTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncResetTrigger GetAsyncResetTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncResetTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncResetTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void Reset() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncResetHandler GetResetAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncResetHandler GetResetAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask ResetAsync() | 
|         { | 
|             return ((IAsyncResetHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).ResetAsync(); | 
|         } | 
|   | 
|         public UniTask ResetAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncResetHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).ResetAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region Update | 
|   | 
|     public interface IAsyncUpdateHandler | 
|     { | 
|         UniTask UpdateAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncUpdateHandler | 
|     { | 
|         UniTask IAsyncUpdateHandler.UpdateAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask((IUniTaskSource)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncUpdateTrigger GetAsyncUpdateTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncUpdateTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncUpdateTrigger GetAsyncUpdateTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncUpdateTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncUpdateTrigger : AsyncTriggerBase<AsyncUnit> | 
|     { | 
|         void Update() | 
|         { | 
|             RaiseEvent(AsyncUnit.Default); | 
|         } | 
|   | 
|         public IAsyncUpdateHandler GetUpdateAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, false); | 
|         } | 
|   | 
|         public IAsyncUpdateHandler GetUpdateAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask UpdateAsync() | 
|         { | 
|             return ((IAsyncUpdateHandler)new AsyncTriggerHandler<AsyncUnit>(this, true)).UpdateAsync(); | 
|         } | 
|   | 
|         public UniTask UpdateAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncUpdateHandler)new AsyncTriggerHandler<AsyncUnit>(this, cancellationToken, true)).UpdateAsync(); | 
|         } | 
|     } | 
| #endregion | 
|   | 
| #region BeginDrag | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnBeginDragHandler | 
|     { | 
|         UniTask<PointerEventData> OnBeginDragAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnBeginDragHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnBeginDragHandler.OnBeginDragAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncBeginDragTrigger GetAsyncBeginDragTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncBeginDragTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncBeginDragTrigger GetAsyncBeginDragTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncBeginDragTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncBeginDragTrigger : AsyncTriggerBase<PointerEventData>, IBeginDragHandler | 
|     { | 
|         void IBeginDragHandler.OnBeginDrag(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnBeginDragHandler GetOnBeginDragAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnBeginDragHandler GetOnBeginDragAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnBeginDragAsync() | 
|         { | 
|             return ((IAsyncOnBeginDragHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnBeginDragAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnBeginDragAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnBeginDragHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnBeginDragAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Cancel | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnCancelHandler | 
|     { | 
|         UniTask<BaseEventData> OnCancelAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnCancelHandler | 
|     { | 
|         UniTask<BaseEventData> IAsyncOnCancelHandler.OnCancelAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<BaseEventData>((IUniTaskSource<BaseEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncCancelTrigger GetAsyncCancelTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncCancelTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncCancelTrigger GetAsyncCancelTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncCancelTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncCancelTrigger : AsyncTriggerBase<BaseEventData>, ICancelHandler | 
|     { | 
|         void ICancelHandler.OnCancel(BaseEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnCancelHandler GetOnCancelAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnCancelHandler GetOnCancelAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnCancelAsync() | 
|         { | 
|             return ((IAsyncOnCancelHandler)new AsyncTriggerHandler<BaseEventData>(this, true)).OnCancelAsync(); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnCancelAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnCancelHandler)new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, true)).OnCancelAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Deselect | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnDeselectHandler | 
|     { | 
|         UniTask<BaseEventData> OnDeselectAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnDeselectHandler | 
|     { | 
|         UniTask<BaseEventData> IAsyncOnDeselectHandler.OnDeselectAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<BaseEventData>((IUniTaskSource<BaseEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncDeselectTrigger GetAsyncDeselectTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncDeselectTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncDeselectTrigger GetAsyncDeselectTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncDeselectTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncDeselectTrigger : AsyncTriggerBase<BaseEventData>, IDeselectHandler | 
|     { | 
|         void IDeselectHandler.OnDeselect(BaseEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnDeselectHandler GetOnDeselectAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnDeselectHandler GetOnDeselectAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnDeselectAsync() | 
|         { | 
|             return ((IAsyncOnDeselectHandler)new AsyncTriggerHandler<BaseEventData>(this, true)).OnDeselectAsync(); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnDeselectAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnDeselectHandler)new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, true)).OnDeselectAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Drag | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnDragHandler | 
|     { | 
|         UniTask<PointerEventData> OnDragAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnDragHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnDragHandler.OnDragAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncDragTrigger GetAsyncDragTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncDragTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncDragTrigger GetAsyncDragTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncDragTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncDragTrigger : AsyncTriggerBase<PointerEventData>, IDragHandler | 
|     { | 
|         void IDragHandler.OnDrag(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnDragHandler GetOnDragAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnDragHandler GetOnDragAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnDragAsync() | 
|         { | 
|             return ((IAsyncOnDragHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnDragAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnDragAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnDragHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnDragAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Drop | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnDropHandler | 
|     { | 
|         UniTask<PointerEventData> OnDropAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnDropHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnDropHandler.OnDropAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncDropTrigger GetAsyncDropTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncDropTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncDropTrigger GetAsyncDropTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncDropTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncDropTrigger : AsyncTriggerBase<PointerEventData>, IDropHandler | 
|     { | 
|         void IDropHandler.OnDrop(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnDropHandler GetOnDropAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnDropHandler GetOnDropAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnDropAsync() | 
|         { | 
|             return ((IAsyncOnDropHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnDropAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnDropAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnDropHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnDropAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region EndDrag | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnEndDragHandler | 
|     { | 
|         UniTask<PointerEventData> OnEndDragAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnEndDragHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnEndDragHandler.OnEndDragAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncEndDragTrigger GetAsyncEndDragTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncEndDragTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncEndDragTrigger GetAsyncEndDragTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncEndDragTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncEndDragTrigger : AsyncTriggerBase<PointerEventData>, IEndDragHandler | 
|     { | 
|         void IEndDragHandler.OnEndDrag(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnEndDragHandler GetOnEndDragAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnEndDragHandler GetOnEndDragAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnEndDragAsync() | 
|         { | 
|             return ((IAsyncOnEndDragHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnEndDragAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnEndDragAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnEndDragHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnEndDragAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region InitializePotentialDrag | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnInitializePotentialDragHandler | 
|     { | 
|         UniTask<PointerEventData> OnInitializePotentialDragAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnInitializePotentialDragHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnInitializePotentialDragHandler.OnInitializePotentialDragAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncInitializePotentialDragTrigger GetAsyncInitializePotentialDragTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncInitializePotentialDragTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncInitializePotentialDragTrigger GetAsyncInitializePotentialDragTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncInitializePotentialDragTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncInitializePotentialDragTrigger : AsyncTriggerBase<PointerEventData>, IInitializePotentialDragHandler | 
|     { | 
|         void IInitializePotentialDragHandler.OnInitializePotentialDrag(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnInitializePotentialDragHandler GetOnInitializePotentialDragAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnInitializePotentialDragHandler GetOnInitializePotentialDragAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnInitializePotentialDragAsync() | 
|         { | 
|             return ((IAsyncOnInitializePotentialDragHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnInitializePotentialDragAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnInitializePotentialDragAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnInitializePotentialDragHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnInitializePotentialDragAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Move | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnMoveHandler | 
|     { | 
|         UniTask<AxisEventData> OnMoveAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnMoveHandler | 
|     { | 
|         UniTask<AxisEventData> IAsyncOnMoveHandler.OnMoveAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<AxisEventData>((IUniTaskSource<AxisEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncMoveTrigger GetAsyncMoveTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncMoveTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncMoveTrigger GetAsyncMoveTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncMoveTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncMoveTrigger : AsyncTriggerBase<AxisEventData>, IMoveHandler | 
|     { | 
|         void IMoveHandler.OnMove(AxisEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnMoveHandler GetOnMoveAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<AxisEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnMoveHandler GetOnMoveAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<AxisEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<AxisEventData> OnMoveAsync() | 
|         { | 
|             return ((IAsyncOnMoveHandler)new AsyncTriggerHandler<AxisEventData>(this, true)).OnMoveAsync(); | 
|         } | 
|   | 
|         public UniTask<AxisEventData> OnMoveAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnMoveHandler)new AsyncTriggerHandler<AxisEventData>(this, cancellationToken, true)).OnMoveAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region PointerClick | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnPointerClickHandler | 
|     { | 
|         UniTask<PointerEventData> OnPointerClickAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnPointerClickHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnPointerClickHandler.OnPointerClickAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncPointerClickTrigger GetAsyncPointerClickTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncPointerClickTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncPointerClickTrigger GetAsyncPointerClickTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncPointerClickTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncPointerClickTrigger : AsyncTriggerBase<PointerEventData>, IPointerClickHandler | 
|     { | 
|         void IPointerClickHandler.OnPointerClick(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnPointerClickHandler GetOnPointerClickAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnPointerClickHandler GetOnPointerClickAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerClickAsync() | 
|         { | 
|             return ((IAsyncOnPointerClickHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnPointerClickAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerClickAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnPointerClickHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnPointerClickAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region PointerDown | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnPointerDownHandler | 
|     { | 
|         UniTask<PointerEventData> OnPointerDownAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnPointerDownHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnPointerDownHandler.OnPointerDownAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncPointerDownTrigger GetAsyncPointerDownTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncPointerDownTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncPointerDownTrigger GetAsyncPointerDownTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncPointerDownTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncPointerDownTrigger : AsyncTriggerBase<PointerEventData>, IPointerDownHandler | 
|     { | 
|         void IPointerDownHandler.OnPointerDown(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnPointerDownHandler GetOnPointerDownAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnPointerDownHandler GetOnPointerDownAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerDownAsync() | 
|         { | 
|             return ((IAsyncOnPointerDownHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnPointerDownAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerDownAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnPointerDownHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnPointerDownAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region PointerEnter | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnPointerEnterHandler | 
|     { | 
|         UniTask<PointerEventData> OnPointerEnterAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnPointerEnterHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnPointerEnterHandler.OnPointerEnterAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncPointerEnterTrigger GetAsyncPointerEnterTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncPointerEnterTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncPointerEnterTrigger GetAsyncPointerEnterTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncPointerEnterTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncPointerEnterTrigger : AsyncTriggerBase<PointerEventData>, IPointerEnterHandler | 
|     { | 
|         void IPointerEnterHandler.OnPointerEnter(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnPointerEnterHandler GetOnPointerEnterAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnPointerEnterHandler GetOnPointerEnterAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerEnterAsync() | 
|         { | 
|             return ((IAsyncOnPointerEnterHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnPointerEnterAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerEnterAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnPointerEnterHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnPointerEnterAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region PointerExit | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnPointerExitHandler | 
|     { | 
|         UniTask<PointerEventData> OnPointerExitAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnPointerExitHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnPointerExitHandler.OnPointerExitAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncPointerExitTrigger GetAsyncPointerExitTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncPointerExitTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncPointerExitTrigger GetAsyncPointerExitTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncPointerExitTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncPointerExitTrigger : AsyncTriggerBase<PointerEventData>, IPointerExitHandler | 
|     { | 
|         void IPointerExitHandler.OnPointerExit(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnPointerExitHandler GetOnPointerExitAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnPointerExitHandler GetOnPointerExitAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerExitAsync() | 
|         { | 
|             return ((IAsyncOnPointerExitHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnPointerExitAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerExitAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnPointerExitHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnPointerExitAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region PointerUp | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnPointerUpHandler | 
|     { | 
|         UniTask<PointerEventData> OnPointerUpAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnPointerUpHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnPointerUpHandler.OnPointerUpAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncPointerUpTrigger GetAsyncPointerUpTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncPointerUpTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncPointerUpTrigger GetAsyncPointerUpTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncPointerUpTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncPointerUpTrigger : AsyncTriggerBase<PointerEventData>, IPointerUpHandler | 
|     { | 
|         void IPointerUpHandler.OnPointerUp(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnPointerUpHandler GetOnPointerUpAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnPointerUpHandler GetOnPointerUpAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerUpAsync() | 
|         { | 
|             return ((IAsyncOnPointerUpHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnPointerUpAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnPointerUpAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnPointerUpHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnPointerUpAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Scroll | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnScrollHandler | 
|     { | 
|         UniTask<PointerEventData> OnScrollAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnScrollHandler | 
|     { | 
|         UniTask<PointerEventData> IAsyncOnScrollHandler.OnScrollAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<PointerEventData>((IUniTaskSource<PointerEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncScrollTrigger GetAsyncScrollTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncScrollTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncScrollTrigger GetAsyncScrollTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncScrollTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncScrollTrigger : AsyncTriggerBase<PointerEventData>, IScrollHandler | 
|     { | 
|         void IScrollHandler.OnScroll(PointerEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnScrollHandler GetOnScrollAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnScrollHandler GetOnScrollAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnScrollAsync() | 
|         { | 
|             return ((IAsyncOnScrollHandler)new AsyncTriggerHandler<PointerEventData>(this, true)).OnScrollAsync(); | 
|         } | 
|   | 
|         public UniTask<PointerEventData> OnScrollAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnScrollHandler)new AsyncTriggerHandler<PointerEventData>(this, cancellationToken, true)).OnScrollAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Select | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnSelectHandler | 
|     { | 
|         UniTask<BaseEventData> OnSelectAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnSelectHandler | 
|     { | 
|         UniTask<BaseEventData> IAsyncOnSelectHandler.OnSelectAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<BaseEventData>((IUniTaskSource<BaseEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncSelectTrigger GetAsyncSelectTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncSelectTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncSelectTrigger GetAsyncSelectTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncSelectTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncSelectTrigger : AsyncTriggerBase<BaseEventData>, ISelectHandler | 
|     { | 
|         void ISelectHandler.OnSelect(BaseEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnSelectHandler GetOnSelectAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnSelectHandler GetOnSelectAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnSelectAsync() | 
|         { | 
|             return ((IAsyncOnSelectHandler)new AsyncTriggerHandler<BaseEventData>(this, true)).OnSelectAsync(); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnSelectAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnSelectHandler)new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, true)).OnSelectAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region Submit | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnSubmitHandler | 
|     { | 
|         UniTask<BaseEventData> OnSubmitAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnSubmitHandler | 
|     { | 
|         UniTask<BaseEventData> IAsyncOnSubmitHandler.OnSubmitAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<BaseEventData>((IUniTaskSource<BaseEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncSubmitTrigger GetAsyncSubmitTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncSubmitTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncSubmitTrigger GetAsyncSubmitTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncSubmitTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncSubmitTrigger : AsyncTriggerBase<BaseEventData>, ISubmitHandler | 
|     { | 
|         void ISubmitHandler.OnSubmit(BaseEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnSubmitHandler GetOnSubmitAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnSubmitHandler GetOnSubmitAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnSubmitAsync() | 
|         { | 
|             return ((IAsyncOnSubmitHandler)new AsyncTriggerHandler<BaseEventData>(this, true)).OnSubmitAsync(); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnSubmitAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnSubmitHandler)new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, true)).OnSubmitAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| #region UpdateSelected | 
| #if !UNITY_2019_1_OR_NEWER || UNITASK_UGUI_SUPPORT | 
|   | 
|     public interface IAsyncOnUpdateSelectedHandler | 
|     { | 
|         UniTask<BaseEventData> OnUpdateSelectedAsync(); | 
|     } | 
|   | 
|     public partial class AsyncTriggerHandler<T> : IAsyncOnUpdateSelectedHandler | 
|     { | 
|         UniTask<BaseEventData> IAsyncOnUpdateSelectedHandler.OnUpdateSelectedAsync() | 
|         { | 
|             core.Reset(); | 
|             return new UniTask<BaseEventData>((IUniTaskSource<BaseEventData>)(object)this, core.Version); | 
|         } | 
|     } | 
|   | 
|     public static partial class AsyncTriggerExtensions | 
|     { | 
|         public static AsyncUpdateSelectedTrigger GetAsyncUpdateSelectedTrigger(this GameObject gameObject) | 
|         { | 
|             return GetOrAddComponent<AsyncUpdateSelectedTrigger>(gameObject); | 
|         } | 
|          | 
|         public static AsyncUpdateSelectedTrigger GetAsyncUpdateSelectedTrigger(this Component component) | 
|         { | 
|             return component.gameObject.GetAsyncUpdateSelectedTrigger(); | 
|         } | 
|     } | 
|   | 
|     [DisallowMultipleComponent] | 
|     public sealed class AsyncUpdateSelectedTrigger : AsyncTriggerBase<BaseEventData>, IUpdateSelectedHandler | 
|     { | 
|         void IUpdateSelectedHandler.OnUpdateSelected(BaseEventData eventData) | 
|         { | 
|             RaiseEvent((eventData)); | 
|         } | 
|   | 
|         public IAsyncOnUpdateSelectedHandler GetOnUpdateSelectedAsyncHandler() | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, false); | 
|         } | 
|   | 
|         public IAsyncOnUpdateSelectedHandler GetOnUpdateSelectedAsyncHandler(CancellationToken cancellationToken) | 
|         { | 
|             return new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, false); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnUpdateSelectedAsync() | 
|         { | 
|             return ((IAsyncOnUpdateSelectedHandler)new AsyncTriggerHandler<BaseEventData>(this, true)).OnUpdateSelectedAsync(); | 
|         } | 
|   | 
|         public UniTask<BaseEventData> OnUpdateSelectedAsync(CancellationToken cancellationToken) | 
|         { | 
|             return ((IAsyncOnUpdateSelectedHandler)new AsyncTriggerHandler<BaseEventData>(this, cancellationToken, true)).OnUpdateSelectedAsync(); | 
|         } | 
|     } | 
| #endif | 
| #endregion | 
|   | 
| } |