()
| 528 | const reader = stream.getReader(); |
| 529 | return { |
| 530 | async next() { |
| 531 | try { |
| 532 | const result = await reader.read(); |
| 533 | if (result?.done) reader.releaseLock(); // release lock when stream becomes closed |
| 534 | return result; |
| 535 | } catch (e) { |
| 536 | reader.releaseLock(); // release lock when stream becomes errored |
| 537 | throw e; |
| 538 | } |
| 539 | }, |
| 540 | async return() { |
| 541 | const cancelPromise = reader.cancel(); |
| 542 | reader.releaseLock(); |