(consume2)
| 9835 | }; |
| 9836 | function isLocked(self) { |
| 9837 | return self[kBody] && self[kBody].locked === true || self[kConsume]; |
| 9838 | } |
| 9839 | function isUnusable(self) { |
| 9840 | return util.isDisturbed(self) || isLocked(self); |
| 9841 | } |
| 9842 | function consume(stream, type) { |
| 9843 | return __async(this, null, function* () { |
| 9844 | assert(!stream[kConsume]); |
| 9845 | return new Promise((resolve2, reject) => { |
| 9846 | var _a; |
| 9847 | if (isUnusable(stream)) { |
| 9848 | const rState = stream._readableState; |
| 9849 | if (rState.destroyed && rState.closeEmitted === false) { |
| 9850 | stream.on("error", (err) => { |
| 9851 | reject(err); |
| 9852 | }).on("close", () => { |
| 9853 | reject(new TypeError("unusable")); |
| 9854 | }); |
| 9855 | } else { |
| 9856 | reject((_a = rState.errored) != null ? _a : new TypeError("unusable")); |
| 9857 | } |
| 9858 | } else { |
| 9859 | queueMicrotask(() => { |
| 9860 | stream[kConsume] = { |
| 9861 | type, |
| 9862 | stream, |
| 9863 | resolve: resolve2, |
| 9864 | reject, |
| 9865 | length: 0, |
| 9866 | body: [] |
no test coverage detected