5 unstable releases
0.3.2 |
|
---|---|
0.3.1 |
|
0.2.0 | Aug 8, 2023 |
0.1.2 | May 3, 2022 |
0.1.1 | Apr 9, 2022 |
#1820 in Network programming
Used in erldash
19KB
364 lines
erl_rpc
Erlang RPC Client for Rust.
Examples
smol::block_on(async {
// Connect to an Erlang node.
let erlang_node = "foo@localhost";
let cookie = "cookie-value";
let client = erl_rpc::RpcClient::connect(erlang_node, cookie).await?;
let mut handle = client.handle();
// Run the RPC client as a background task.
smol::spawn(async {
if let Err(e) = client.run().await {
eprintln!("RpcClient Error: {}", e);
}
}).detach();
// Execute an RPC: `erlang:processes/0`
let result = handle
.call("erlang".into(), "processes".into(), erl_dist::term::List::nil())
.await?;
println!("{}", result);
Ok(())
})
Dependencies
~6–15MB
~203K SLoC