using System; namespace RobotAndDonkey.Game.Utils; public class Disposable : IDisposable { public static Disposable Create(Action action) { return new(action); } private Disposable(Action action) { m_Action = action; } public void Dispose() { m_Action?.Invoke(); m_Action = null; } private Action? m_Action; }