arenos-nexus/Arenos Nexus/Library/PackageCache/com.unity.inputsystem@be6c4fd0abf5/InputSystem/Utilities/Observables/Observer.cs

32 lines
669 B
C#
Raw Permalink Normal View History

2025-09-25 22:01:28 +02:00
using System;
namespace UnityEngine.InputSystem.Utilities
{
internal class Observer<TValue> : IObserver<TValue>
{
private Action<TValue> m_OnNext;
private Action m_OnCompleted;
public Observer(Action<TValue> onNext, Action onCompleted = null)
{
m_OnNext = onNext;
m_OnCompleted = onCompleted;
}
public void OnCompleted()
{
m_OnCompleted?.Invoke();
}
public void OnError(Exception error)
{
Debug.LogException(error);
}
public void OnNext(TValue evt)
{
m_OnNext?.Invoke(evt);
}
}
}