AutoCatAvalonia/AutoCat/Utils/AbstractFactory.cs
2023-07-19 00:42:11 +03:00

23 lines
346 B
C#

using System;
namespace AutoCat.Utils;
public interface IAbstractFactory<out T>
{
T Create();
}
public class AbstractFactory<T> : IAbstractFactory<T>
{
private readonly Func<T> _factory;
public AbstractFactory(Func<T> factory)
{
_factory = factory;
}
public T Create()
{
return _factory();
}
}