public static void Main()
var handler = new Handler();
handler.HandleStuff(test);
public bool HandleStuff(IItem<IItemType> item)
throw new NotImplementedException();
public class Test : IItem<Stuff>
public bool Process(Stuff item)
throw new NotImplementedException();
public class Stuff : IItemType
public interface IItem<in T> where T : IItemType
public interface IItemType