Can't get iterator from iterable object
- Dominant language
- Rust
- Stars
- 22.3k
- Forks
- 1.9k
- PR merge metrics
- No merged PRs in 30d
Description
When I try to get `iterator` from `iterable` object using [Symbol.iterator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol/iterator)
``` ts
/* @flow */
'use strict';
const a = [1, 2, 3];
for (const value of a[Symbol.iterator]()) {
console.log(value);
}
```
`flow check` produces error:
```
test.js:6
6: for (const value of a[Symbol.iterator]()) {
^^^^^^^^^^^^^^^^^^ access of computed property/element. Element cannot be accessed with
6: for (const value of a[Symbol.iterator]()) {
^^^^^^^^^^^^^^^ string
```
I have the same problem with `Iterable` interface:
``` ts
/* @flow */
'use strict';
const iterable: Iterable = [1, 2, 3];
const iter = iterable[Symbol.iterator];
```
```
$ flow check
test.js:6
6: const iter = iterable[Symbol.iterator];
^^^^^^^^^^^^^^^^^^^^^^^^^ access of computed property/element. Indexable signature not found in
6: const iter = iterable[Symbol.iterator];
^^^^^^^^ $Iterable
```
```
$ flow version
Flow, a static type checker for JavaScript, version 0.19.1
```
Contributor guide
Assessment
This issue has not been assessed yet.