MCPcopy Index your code
hub / github.com/di-sukharev/opencommit / ReadableStreamPipeTo

Function ReadableStreamPipeTo

out/cli.cjs:13043–13199  ·  view source on GitHub ↗
(source, dest, preventClose, preventAbort, preventCancel, signal)

Source from the content-addressed store, hash-verified

13041 }
13042 const DOMException3 = getFromGlobal() || createPolyfill();
13043 function ReadableStreamPipeTo(source, dest, preventClose, preventAbort, preventCancel, signal) {
13044 const reader = AcquireReadableStreamDefaultReader(source);
13045 const writer = AcquireWritableStreamDefaultWriter(dest);
13046 source._disturbed = true;
13047 let shuttingDown = false;
13048 let currentWrite = promiseResolvedWith(void 0);
13049 return newPromise((resolve, reject) => {
13050 let abortAlgorithm;
13051 if (signal !== void 0) {
13052 abortAlgorithm = () => {
13053 const error = signal.reason !== void 0 ? signal.reason : new DOMException3("Aborted", "AbortError");
13054 const actions = [];
13055 if (!preventAbort) {
13056 actions.push(() => {
13057 if (dest._state === "writable") {
13058 return WritableStreamAbort(dest, error);
13059 }
13060 return promiseResolvedWith(void 0);
13061 });
13062 }
13063 if (!preventCancel) {
13064 actions.push(() => {
13065 if (source._state === "readable") {
13066 return ReadableStreamCancel(source, error);
13067 }
13068 return promiseResolvedWith(void 0);
13069 });
13070 }
13071 shutdownWithAction(() => Promise.all(actions.map((action) => action())), true, error);
13072 };
13073 if (signal.aborted) {
13074 abortAlgorithm();
13075 return;
13076 }
13077 signal.addEventListener("abort", abortAlgorithm);
13078 }
13079 function pipeLoop() {
13080 return newPromise((resolveLoop, rejectLoop) => {
13081 function next(done) {
13082 if (done) {
13083 resolveLoop();
13084 } else {
13085 PerformPromiseThen(pipeStep(), next, rejectLoop);
13086 }
13087 }
13088 next(false);
13089 });
13090 }
13091 function pipeStep() {
13092 if (shuttingDown) {
13093 return promiseResolvedWith(true);
13094 }
13095 return PerformPromiseThen(writer._readyPromise, () => {
13096 return newPromise((resolveRead, rejectRead) => {
13097 ReadableStreamDefaultReaderRead(reader, {
13098 _chunkSteps: (chunk) => {
13099 currentWrite = PerformPromiseThen(WritableStreamDefaultWriterWrite(writer, chunk), void 0, noop2);
13100 resolveRead(false);

Callers 2

pipeThroughMethod · 0.85
pipeToMethod · 0.85

Calls 15

promiseResolvedWithFunction · 0.85
newPromiseFunction · 0.85
WritableStreamAbortFunction · 0.85
ReadableStreamCancelFunction · 0.85
shutdownWithActionFunction · 0.85
abortAlgorithmFunction · 0.85
isOrBecomesErroredFunction · 0.85
shutdownFunction · 0.85
isOrBecomesClosedFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…