MCPcopy Create free account
hub / github.com/cloudflare/computer / drainStream

Function drainStream

packages/rpc/src/sync-driver.test.ts:39–52  ·  view source on GitHub ↗
(stream: ReadableStream<T>)

Source from the content-addressed store, hash-verified

37}
38
39async function drainStream<T>(stream: ReadableStream<T>): Promise<T[]> {
40 const out: T[] = [];
41 const reader = stream.getReader();
42 try {
43 while (true) {
44 const { value, done } = await reader.read();
45 if (done) break;
46 out.push(value);
47 }
48 } finally {
49 reader.releaseLock();
50 }
51 return out;
52}
53
54// Wrap a SyncRPC so the fetchChanges result carries a tracked
55// [Symbol.dispose]. pullOnce owns that envelope and must dispose it on

Callers 1

Calls 3

getReaderMethod · 0.65
readMethod · 0.65
pushMethod · 0.65

Tested by

no test coverage detected