Bug in typing iterable iterator with symbol
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 48/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Estagnada
- Stack de tecnologia
- typescript
- Domínio
- compilers
Direção de pesquisa
Reproduza o exemplo de index.ts no Playground vinculado e confirme o erro de atribuição reportado para IterableIterator. Rastreie como os tipos de iteradores iteráveis lidam com a união number | symbol e, em seguida, verifique se o exemplo passa pela verificação de tipos sem o erro TS2322.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
TypeScript Version: 3.6.0-dev.20190713
Search Terms: symbol iterableiterator
Code
const Foo = Symbol()
type FooType = typeof Foo
type SomeType = number | FooType
function giveMeSomeType(): SomeType {
return (Math.random() > 0.5) ? 42 : Foo
}
const it: IterableIterator<SomeType> = [giveMeSomeType()][Symbol.iterator]()
Expected behavior: local constant it is typechecked correctly
Actual behavior:
Typechecking fails with error:
index.ts:10:7 - error TS2322: Type 'IterableIterator<number | symbol>' is not assignable to type 'IterableIterator<SomeType>'.
Type 'number | symbol' is not assignable to type 'SomeType'.
Type 'symbol' is not assignable to type 'SomeType'.
10 const it: IterableIterator<SomeType> = [giveMeSomeType()][Symbol.iterator]()
Related Issues: couldn't find
- Linguagem predominante
- Go
- Estrelas
- 111k
- Forks
- 14.4k
- Merge médio
- 1d 19h
- PRs com merge (30d)
- 117
Guia de contribuição
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 microsoft/TypeScript
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
microsoft/TypeScript#64322 · 2 comentários · 1 reação · 2 responsáveis ·
-
Possible Improvement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
microsoft/TypeScript#64278 · 1 comentário · 1 reação ·
-
Docs
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
microsoft/TypeScript#64118 · 1 comentário ·
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
microsoft/TypeScript#64094 ·
-
Docs
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
microsoft/TypeScript#63959 · 5 comentários ·
Todas as issues de microsoft/TypeScript
Issues semelhantes
-
optimization optimization:agents-md-curator
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
githubnext/gh-aw-cao#13143 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
blinklabs-io/bursa#904 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
yanet-platform/ipfw-go#129 ·
-
bug confmap/provider/googlesecretmanagerprovider needs triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
open-telemetry/opentelemetry-collector-contrib#51273 · 2 comentários ·
-
bug: AI Gateway client filter lists "Unknown" twice when NULL and literal Unknown clients coexist Abertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 90/100