A multithreaded websocket client library for interacting with the xrp ledger's json rpc. The client maintains a single websocket connection, and is able to make atomic requests to the json rpc with a single function call, or make subscriptions with a function that returns a listener for incoming messages. Multiple Requests can be made in paralell, since each is processed in it's own thread.
To send a simple rpc command:
```rust use xrpl::XrplClient;
async fn main() { let client = XrplClient::new("wss://xrpl.ws").await.unwrap(); let serverinfo = client.getserver_info().await.unwrap();
println!("{server_info}");
} ```
To create a subscription:
```rust use xrpl::XrplClient;
async fn main() { let client = XrplClient::new("wss://xrpl.ws").await.unwrap(); let mut listener = client.subscribetoledger().await.unwrap();
loop {
let msg = listener.recv().await;
println!("{msg}")
}
} ```