* new_tests * move_all_clobbered_tests * remove all the tests that no longer exist * re-run flow tests * Move all the flow tests to tests/flow and prettier to tests/ * Move prettier tests to their own folders * Add jsfmt files * run prettier snapshot tests
26 lines
464 B
JavaScript
26 lines
464 B
JavaScript
declare interface File {
|
|
readLine(): Promise<string>;
|
|
close(): void;
|
|
EOF: boolean;
|
|
}
|
|
|
|
declare function fileOpen(path: string): Promise<File>;
|
|
|
|
async function* readLines(path) {
|
|
let file: File = await fileOpen(path);
|
|
|
|
try {
|
|
while (!file.EOF) {
|
|
yield await file.readLine();
|
|
}
|
|
} finally {
|
|
file.close();
|
|
}
|
|
}
|
|
|
|
async function f() {
|
|
for await (const line of readLines("/path/to/file")) {
|
|
(line: void); // error: string ~> void
|
|
}
|
|
}
|