refactor: migrate async ops to generated wrappers (#18937)

Migrates some of existing async ops to generated wrappers introduced in
https://github.com/denoland/deno/pull/18887. As a result "core.opAsync2"
was removed.

I will follow up with more PRs that migrate all the async ops to
generated wrappers.
This commit is contained in:
Bartek Iwańczuk 2023-05-01 17:40:00 +02:00 committed by GitHub
parent 6728ad4203
commit dcf391ffed
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 109 additions and 99 deletions

View file

@ -564,31 +564,6 @@ for (let i = 0; i < 10; i++) {
return (ops[opName] = fn);
}
function opAsync2(name, arg0, arg1) {
const id = nextPromiseId++;
try {
const maybeResult = asyncOps[name](id, arg0, arg1);
if (maybeResult !== undefined) {
movePromise(id);
return unwrapOpResultNewPromise(id, maybeResult, opAsync2);
}
} catch (err) {
movePromise(id);
if (!ReflectHas(asyncOps, name)) {
return PromiseReject(new TypeError(`${name} is not a registered op`));
}
ErrorCaptureStackTrace(err, opAsync2);
return PromiseReject(err);
}
let promise = PromisePrototypeThen(
setPromise(id),
unwrapOpError(eventLoopTick),
);
promise = handleOpCallTracing(name, id, promise);
promise[promiseIdSymbol] = id;
return promise;
}
function opAsync(name, ...args) {
const id = nextPromiseId++;
try {
@ -823,7 +798,6 @@ for (let i = 0; i < 10; i++) {
asyncStub,
generateAsyncOpHandler,
opAsync,
opAsync2,
resources,
metrics,
registerErrorBuilder,