diff options
author | Matt Mastracci <matthew@mastracci.com> | 2023-12-26 18:30:26 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-27 02:30:26 +0100 |
commit | 0efe438f7c191d8504355e03b27fe7e3055c9387 (patch) | |
tree | b96fe9a897eb6941c87a95a04520662d26c02fbe /ext/web/06_streams.js | |
parent | e33c5eb704c22fad69876e87d9b852a4e5072a7a (diff) |
perf: remove opAsync (#21690)
`opAsync` requires a lookup by name on each async call. This is a
mechanical translation of all opAsync calls to ensureFastOps.
The `opAsync` API on Deno.core will be removed at a later time.
Diffstat (limited to 'ext/web/06_streams.js')
-rw-r--r-- | ext/web/06_streams.js | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/ext/web/06_streams.js b/ext/web/06_streams.js index 988f1d990..31f0f2862 100644 --- a/ext/web/06_streams.js +++ b/ext/web/06_streams.js @@ -19,6 +19,11 @@ const { op_readable_stream_resource_close, op_readable_stream_resource_await_close, } = core.ensureFastOps(); +// TODO(mmastrac): use readAll +const { + op_read_all, +} = core.ensureFastOps(true); + import * as webidl from "ext:deno_webidl/00_webidl.js"; import { structuredClone } from "ext:deno_web/02_structured_clone.js"; import { @@ -1065,7 +1070,7 @@ async function readableStreamCollectIntoUint8Array(stream) { // fast path, read whole body in a single op call try { readableStreamDisturb(stream); - const promise = core.opAsync("op_read_all", resourceBacking.rid); + const promise = op_read_all(resourceBacking.rid); if (readableStreamIsUnrefable(stream)) { stream[promiseSymbol] = promise; if (stream[_isUnref]) core.unrefOpPromise(promise); |