kernel_api/syscall/mod.rs
1pub mod handle;
2mod result;
3pub mod server;
4
5pub use result::*;
6use crate::channel;
7use crate::channel::Receiver;
8
9#[derive(Debug)]
10pub struct AsyncMap {
11 pub queue: Receiver<(usize, core::result::Result<u128, Error>)>,
12}
13
14impl AsyncMap {
15 pub fn new() -> Self {
16 Self {
17 queue: channel::unbounded().1,
18 }
19 }
20
21 pub fn push_result(&self, key: usize, result: core::result::Result<u128, Error>) {
22 self.queue.push((key, result));
23 }
24}