Estou tentando descobrir a melhor maneira de compartilhar um tipo entre arquivos.
Basicamente é isso que eu quero:
// TranspositionTable.cs
using TranspositionTableEntry = (ulong fullHash, int searchDepth, int refutationTo, int refutationFrom, double eval, NodeType type);
// Ai.cs
using TranspositionTableEntry = TranspositionTable.TranspositionTableEntry
Mas no Ai.cs recebo um erro porque TranspositionTableEntry não existe.
Posso pensar em duas soluções. Primeiro, posso alterar Ai.cs para usar a mesma definição que em TranspositionTable.cs e, então, apenas atualizá-lo se eu alterar a definição dessa tupla.
Caso contrário, posso simplesmente criar minha própria classe em vez de usar ValueTuple. Eu entendo como importar se eu quiser usar uma classe, mas eu só quero usar um ValueTuple, pois quero evitar alocar novo espaço no heap toda vez que eu fizer isso por motivos de desempenho, já que eu vou construir muitas dessas entradas.