summaryrefslogtreecommitdiff
path: root/core/ops_json.rs
diff options
context:
space:
mode:
Diffstat (limited to 'core/ops_json.rs')
-rw-r--r--core/ops_json.rs33
1 files changed, 0 insertions, 33 deletions
diff --git a/core/ops_json.rs b/core/ops_json.rs
index b3153763e..ad4aeeb47 100644
--- a/core/ops_json.rs
+++ b/core/ops_json.rs
@@ -67,7 +67,6 @@ where
/// Creates an op that passes data asynchronously using JSON.
///
/// When this op is dispatched, the runtime doesn't exit while processing it.
-/// Use op_async_unref instead if you want to make the runtime exit while processing it.
///
/// The provided function `op_fn` has the following parameters:
/// * `Rc<RefCell<OpState>`: the op state, can be used to read/write resources in the runtime from an op.
@@ -118,38 +117,6 @@ where
})
}
-/// Creates an op that passes data asynchronously using JSON.
-///
-/// When this op is dispatched, the runtime still can exit while processing it.
-///
-/// The other usages are the same as `op_async`.
-pub fn op_async_unref<F, A, B, R, RV>(op_fn: F) -> Box<OpFn>
-where
- F: Fn(Rc<RefCell<OpState>>, A, B) -> R + 'static,
- A: DeserializeOwned,
- B: DeserializeOwned,
- R: Future<Output = Result<RV, Error>> + 'static,
- RV: Serialize + 'static,
-{
- Box::new(move |state, payload| -> Op {
- let op_id = payload.op_id;
- let pid = payload.promise_id;
- // Deserialize args, sync error on failure
- let args = match payload.deserialize() {
- Ok(args) => args,
- Err(err) => {
- return Op::Sync(serialize_op_result(Err::<(), Error>(err), state))
- }
- };
- let (a, b) = args;
-
- use crate::futures::FutureExt;
- let fut = op_fn(state.clone(), a, b)
- .map(move |result| (pid, op_id, serialize_op_result(result, state)));
- Op::AsyncUnref(OpCall::eager(fut))
- })
-}
-
#[cfg(test)]
mod tests {
use super::*;