11 个版本

0.1.5-beta2020 年 6 月 4 日
0.1.4-beta2020 年 5 月 26 日
0.1.1 2020 年 4 月 24 日

#30 in #接口

MIT 许可证

45KB
1.5K SLoC

朱诺 Rust

这是一个提供与微服务框架 juno 交互的辅助方法的库。

如何使用

该库提供了很多关于连接选项和编码协议选项的灵活性。但是,为了使用该库,您不需要这些。

如果您计划实现自定义连接选项,您可以在 src/connection/unix_socket_connection.rs 中找到一个示例。

对于所有其他基本需求,您可以无需担心这些。

代码胜过千言万语

use async_std::task;
use juno::{models::Value, JunoModule};
use std::{time::Duration, collections::HashMap};

#[async_std::main]
async fn main() {
    let mut module = JunoModule::default("./path/to/juno.sock");
    // The hashmap below is used to mark dependencies
    module
        .initialize("module-name", "1.0.0", HashMap::new())
        .await
        .unwrap();
    println!("Initialized!");
    module
        .declare_function("print_hello", |args| {
            println!("Hello");
            Value::Null
        })
        .await
        .unwrap();
    // The HashMap::new() below marks the arguments passed to the function
    module
        .call_function("module2.print_hello_world", HashMap::new())
        .await
        .unwrap();
    loop {
        task::sleep(Duration::from_millis(1000)).await;
    }
}

依赖项

~4–5.5MB
~99K SLoC