diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2020-02-25 09:14:27 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-25 09:14:27 -0500 |
commit | 91b606aaae23bcb790b55adc5fe70a182a37d564 (patch) | |
tree | 16b56a21ffcb3991569eda984fbd14073bdbd3ae /cli/ops/net.rs | |
parent | 805992b14a65a6dbfb857dea6d9b657477de043d (diff) |
Clean up how we use opIds (#4118)
Diffstat (limited to 'cli/ops/net.rs')
-rw-r--r-- | cli/ops/net.rs | 41 |
1 files changed, 18 insertions, 23 deletions
diff --git a/cli/ops/net.rs b/cli/ops/net.rs index cdc5d9f1f..2b3638fdb 100644 --- a/cli/ops/net.rs +++ b/cli/ops/net.rs @@ -2,7 +2,6 @@ use super::dispatch_json::{Deserialize, JsonOp, Value}; use super::io::StreamResource; use crate::op_error::OpError; -use crate::ops::json_op; use crate::resolve_addr::resolve_addr; use crate::state::State; use deno_core::*; @@ -21,12 +20,12 @@ use tokio::net::TcpStream; use tokio::net::UdpSocket; pub fn init(i: &mut Isolate, s: &State) { - i.register_op("accept", s.core_op(json_op(s.stateful_op(op_accept)))); - i.register_op("connect", s.core_op(json_op(s.stateful_op(op_connect)))); - i.register_op("shutdown", s.core_op(json_op(s.stateful_op(op_shutdown)))); - i.register_op("listen", s.core_op(json_op(s.stateful_op(op_listen)))); - i.register_op("receive", s.core_op(json_op(s.stateful_op(op_receive)))); - i.register_op("send", s.core_op(json_op(s.stateful_op(op_send)))); + i.register_op("op_accept", s.stateful_json_op(op_accept)); + i.register_op("op_connect", s.stateful_json_op(op_connect)); + i.register_op("op_shutdown", s.stateful_json_op(op_shutdown)); + i.register_op("op_listen", s.stateful_json_op(op_listen)); + i.register_op("op_receive", s.stateful_json_op(op_receive)); + i.register_op("op_send", s.stateful_json_op(op_send)); } #[derive(Debug, PartialEq)] @@ -35,15 +34,6 @@ enum AcceptState { Done, } -/// Simply accepts a connection. -pub fn accept(state: &State, rid: ResourceId) -> Accept { - Accept { - accept_state: AcceptState::Pending, - rid, - state, - } -} - /// A future representing state of accepting a TCP connection. pub struct Accept<'a> { accept_state: AcceptState, @@ -109,7 +99,12 @@ fn op_accept( } let op = async move { - let (tcp_stream, _socket_addr) = accept(&state_, rid).await?; + let accept_fut = Accept { + accept_state: AcceptState::Pending, + rid, + state: &state_, + }; + let (tcp_stream, _socket_addr) = accept_fut.await?; let local_addr = tcp_stream.local_addr()?; let remote_addr = tcp_stream.peer_addr()?; let mut state = state_.borrow_mut(); @@ -164,10 +159,6 @@ struct ReceiveArgs { rid: i32, } -fn receive(state: &State, rid: ResourceId, buf: ZeroCopyBuf) -> Receive { - Receive { state, rid, buf } -} - fn op_receive( state: &State, args: Value, @@ -182,8 +173,12 @@ fn op_receive( let state_ = state.clone(); let op = async move { - let (size, remote_addr) = receive(&state_, rid, buf).await?; - + let receive_fut = Receive { + state: &state_, + rid, + buf, + }; + let (size, remote_addr) = receive_fut.await?; Ok(json!({ "size": size, "remoteAddr": { |