summaryrefslogtreecommitdiff
path: root/ext/net/01_net.js
diff options
context:
space:
mode:
authorKenta Moriuchi <moriken@kimamass.com>2024-01-11 07:37:25 +0900
committerGitHub <noreply@github.com>2024-01-10 15:37:25 -0700
commit515a34b4de222e35c7ade1b92614d746e73d4c2e (patch)
tree8284201fc826a33f12597959a8a8be14e0f524bd /ext/net/01_net.js
parentd4893eb51a01c5a692d8ca74a3b8ff95c5fd1d9f (diff)
refactor: use `core.ensureFastOps()` (#21888)
Diffstat (limited to 'ext/net/01_net.js')
-rw-r--r--ext/net/01_net.js48
1 files changed, 29 insertions, 19 deletions
diff --git a/ext/net/01_net.js b/ext/net/01_net.js
index 699423b22..ffae6c56f 100644
--- a/ext/net/01_net.js
+++ b/ext/net/01_net.js
@@ -1,33 +1,34 @@
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
import { core, primordials } from "ext:core/mod.js";
-const { BadResourcePrototype, InterruptedPrototype, ops } = core;
-import {
- readableStreamForRidUnrefable,
- readableStreamForRidUnrefableRef,
- readableStreamForRidUnrefableUnref,
- writableStreamForRid,
-} from "ext:deno_web/06_streams.js";
-import * as abortSignal from "ext:deno_web/03_abort_signal.js";
-import { SymbolDispose } from "ext:deno_web/00_infra.js";
+const {
+ BadResourcePrototype,
+ InterruptedPrototype,
+} = core;
const {
op_dns_resolve,
op_net_accept_tcp,
op_net_accept_unix,
op_net_connect_tcp,
op_net_connect_unix,
+ op_net_join_multi_v4_udp,
+ op_net_join_multi_v6_udp,
+ op_net_leave_multi_v4_udp,
+ op_net_leave_multi_v6_udp,
+ op_net_listen_tcp,
+ op_net_listen_unix,
op_net_recv_udp,
op_net_recv_unixpacket,
op_net_send_udp,
op_net_send_unixpacket,
op_net_set_multi_loopback_udp,
op_net_set_multi_ttl_udp,
- op_net_join_multi_v4_udp,
- op_net_join_multi_v6_udp,
- op_net_leave_multi_v4_udp,
- op_net_leave_multi_v6_udp,
+ op_set_keepalive,
+ op_set_nodelay,
} = core.ensureFastOps();
-
+const {
+ op_cancel_handle,
+} = core.ensureFastOps(true);
const {
Error,
Number,
@@ -44,6 +45,15 @@ const {
Uint8Array,
} = primordials;
+import {
+ readableStreamForRidUnrefable,
+ readableStreamForRidUnrefableRef,
+ readableStreamForRidUnrefableUnref,
+ writableStreamForRid,
+} from "ext:deno_web/06_streams.js";
+import * as abortSignal from "ext:deno_web/03_abort_signal.js";
+import { SymbolDispose } from "ext:deno_web/00_infra.js";
+
async function write(rid, data) {
return await core.write(rid, data);
}
@@ -57,7 +67,7 @@ async function resolveDns(query, recordType, options) {
let abortHandler;
if (options?.signal) {
options.signal.throwIfAborted();
- cancelRid = ops.op_cancel_handle();
+ cancelRid = op_cancel_handle();
abortHandler = () => core.tryClose(cancelRid);
options.signal[abortSignal.add](abortHandler);
}
@@ -184,11 +194,11 @@ class Conn {
class TcpConn extends Conn {
setNoDelay(noDelay = true) {
- return ops.op_set_nodelay(this.rid, noDelay);
+ return op_set_nodelay(this.rid, noDelay);
}
setKeepAlive(keepAlive = true) {
- return ops.op_set_keepalive(this.rid, keepAlive);
+ return op_set_keepalive(this.rid, keepAlive);
}
}
@@ -453,7 +463,7 @@ const listenOptionApiName = Symbol("listenOptionApiName");
function listen(args) {
switch (args.transport ?? "tcp") {
case "tcp": {
- const { 0: rid, 1: addr } = ops.op_net_listen_tcp({
+ const { 0: rid, 1: addr } = op_net_listen_tcp({
hostname: args.hostname ?? "0.0.0.0",
port: Number(args.port),
}, args.reusePort);
@@ -461,7 +471,7 @@ function listen(args) {
return new Listener(rid, addr);
}
case "unix": {
- const { 0: rid, 1: path } = ops.op_net_listen_unix(
+ const { 0: rid, 1: path } = op_net_listen_unix(
args.path,
args[listenOptionApiName] ?? "Deno.listen",
);