Skip to content

Commit decd597

Browse files
committed
unix io.FileIO: Add iteration support.
A file cannot be iterated concurrently, so we make io.FileIO its own iterator.
1 parent d54bef7 commit decd597

2 files changed

Lines changed: 5 additions & 2 deletions

File tree

tests/io/file-iter.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
f = open("io/data/file1")
2+
for l in f:
3+
print(l)

unix/file.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,8 @@ static const mp_obj_type_t rawfile_type = {
102102
"io.FileIO",
103103
.print = fdfile_print,
104104
.make_new = fdfile_make_new,
105-
.getiter = NULL,
106-
.iternext = NULL,
105+
.getiter = mp_identity,
106+
.iternext = mp_stream_unbuffered_iter,
107107
.stream_p = {
108108
.read = fdfile_read,
109109
.write = fdfile_write,

0 commit comments

Comments
 (0)