/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use script_runtime::{CommonScriptMsg, ScriptChan}; use script_thread::MainThreadScriptMsg; use std::sync::mpsc::Sender; #[derive(JSTraceable)] pub struct NetworkingTaskSource(pub Sender); impl ScriptChan for NetworkingTaskSource { fn send(&self, msg: CommonScriptMsg) -> Result<(), ()> { self.0.send(MainThreadScriptMsg::Common(msg)).map_err(|_| ()) } fn clone(&self) -> Box { box NetworkingTaskSource((&self.0).clone()) } }