Clarification on how Typevars in a generic function should resolve
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 30/100
- Tipo de issue
- Documentação
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Pouca atividade
- Stack de tecnologia
- python
- Domínio
- compilers, documentation
Direção de pesquisa
Leia primeiro a issue #2255 do ty vinculada e os comentários citados nela; depois, compare as interpretações deles com o exemplo de função genérica aqui. Documente a regra acordada para resolver T em func(B(), C()), incluindo se a chamada deve ser rejeitada; considera-se concluído quando a comunidade de typing tiver uma resposta clara e registrada.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Hi, regarding the issue opened here:
https://github.com/astral-sh/ty/issues/2255
Can you please provide clarification on how TypeVars in a function like func in the below code should be resolved?
class A:
pass
class B(A):
pass
class C(A):
pass
def func[T: A](x: T, y: T) -> T:
...
func(B(), C()) # I think this should raise a type error by type checkers but no type checker (mypy, pyright, etc) raise an error for this
Please look at these comments:
https://github.com/astral-sh/ty/issues/2255#issuecomment-3697606854
https://github.com/astral-sh/ty/issues/2255#issuecomment-3697628015
https://github.com/astral-sh/ty/issues/2255#issuecomment-3698867080
https://github.com/astral-sh/ty/issues/2255#issuecomment-3699067335
- Linguagem predominante
- Python
- Estrelas
- 1.8k
- Forks
- 302
- Merge médio
- 23h
- PRs com merge (30d)
- 8
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de python/typing
-
topic: typing spec
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
-
topic: typing spec
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
topic: documentation
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
-
topic: documentation
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
-
topic: conformance tests topic: typing spec
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 72/100
Todas as issues de python/typing
Issues semelhantes
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
stephrobert/dsoxlab#238 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
sublimehq/package_control#1780 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
nwg-piotr/nwg-displays#145 ·