dry-python / dry-python/returns

IOSuccess / IOFailure and match-case

Aberta
#2,355 1 comentário 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Python
Estrelas
4.4k
Forks
155
Merge médio
2h 27min
PRs com merge (30d)
22

Descrição

I don't really see the point of `IOSuccess` and `IOFailure`. From one hand, `IOResult.from_value(1) == IOSuccess.from_value(1)`. Actually ,`IOSuccess.from_value(1) == IOFailure.from_value(1)`.
I would also expect some benefit when using it in a match-case. Something like:

```python
value = IOSuccess.from_value(1)
match value:
case IOSuccess(v): assert(v == 1)
case _: pass
```

However, the "correct" code is

```python
value = IOSuccess.from_value(1)
match value:
case IOResult(Success(v)): assert(v == 1)
case _: pass
```

Therefore, `IOSuccess` and `IOFailure` as aliases are quite confusing. Don't you think?

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.