Как явно не указывать тип?

Есть такой интерфейс с двумя параметрами:

public interface IGamePiece<TGame, TMove>
    where TGame : Game
    where TMove : GameMove
{
    TMove[] GetAvailableMoves(TGame game);
}

Есть класс, кторый принимает как параметр тип, реализующий IGamePiece:

public abstract class GameBoardSquare<TGame, TMove, TPiece>
    where TGame : Game
    where TMove : GameMove
    where TPiece : class, IGamePiece<TGame, TMove>
{
    // ...
}

Очень неудобно при использовании класса GameBoardSquare каждый раз писать указывать все типы: TGame, TMove и TPiece в треугольныъ скобках.

Хотелось бы просто указать тип TPiece и чтобы с него подтянулись типы TGame и TMove.


Ответы (0 шт):