O Que É Exhaustiveness Checking?
Exhaustiveness checking é uma análise estática que garante que um conjunto de padrões cobre todos os valores possíveis do tipo sendo casado, reportando um erro quando um caso é deixado de fora. Para um sum type, confirma que cada variante é tratada. Isso pega casos esquecidos antes que o código rode.
Por que isso importa
Verificações de exaustividade transformam "esqueci de tratar aquele caso" em um erro de compilação em vez de uma surpresa em tempo de execução. São especialmente valiosas quando uma nova variante é adicionada, já que todo match incompleto passa a não compilar.
Guias relacionados
What Is Pattern Matching?Pattern matching inspects a value against a set of shapes, selecting a branch and binding parts of the value…
What Is a Sum Type?A sum type holds a value that is exactly one of several named alternatives, each potentially carrying differe…
What Is an Algebraic Data Type?An algebraic data type composes types as combinations of fields and alternatives, modeling data as products a…