Valores "Ou um ou outro" (Either)

Os valores either, assim como os valores opcionais são uma maneira de representar dados incertos, mas desta vez o estado "Não contendo nada" é substituído por um outro estado que pode conter mais informações úteis.

Os valores either limitam o acesso aos dados que ele contém para que o desenvolvedor tenha acesso somente ao dado correto.

Podemos conter um valor either que possa armazenar tanto valores inteiros quanto valores booleans, mas somente um de cada vez.

Um valor either pode estar em um dos dois estados possíveis:

  • Esquerda - Quando contém um valor do tipo à esquerda;

  • Direita - Quand contém um valor do tipo à direita.

Por convenção, utiliza-se o estado à direita para representar dados corretos e o estado à esquerda para representar dados incorretos. Semelhante aos estados de valores opcionais, mas neste caso há um valor em ambos os casos.

Esta implementação foi inspirada no tipo Either da linguagem Haskell.

As implementações deste conceito são realizadas em duas etapas: através do tipo Either e do módulo Either.

Last updated