Skip to main content

xpring/
lib.rs

1//! The xpring-rs Library
2//!
3//! xpring-rs is a Rust client-side library that:
4//!
5//! - Performs some offline calculations around XRP Ledger wallet generation/derivation
6//! - Provides an easy interface to interact with the XRP Ledger.
7//!
8//! # Features
9//!
10//! xpring-rs provides the following features:
11//!
12//! - Wallet generation and derivation (Seed-based or HD Wallet-based)
13//! - Address validation
14//! - Account balance retrieval
15//! - Sending XRP Payments
16
17// Private modules
18#[macro_use]
19mod javascript;
20mod config;
21mod util;
22mod xpring;
23mod x {
24    tonic::include_proto!("org.xrpl.rpc.v1");
25    pub mod prelude {
26        pub use super::{
27            currency_amount, get_transaction_response, payment::Path as xPath,
28            transaction::TransactionData, xrp_ledger_api_service_client::XrpLedgerApiServiceClient,
29            Account, AccountAddress, AccountRoot, Amount, CurrencyAmount, Destination,
30            GetAccountInfoRequest, GetFeeRequest, GetFeeResponse, GetTransactionRequest,
31            GetTransactionResponse, LastLedgerSequence, LedgerRange, Memo, Payment, Sequence,
32            Signer, SigningPublicKey, SubmitTransactionRequest, Transaction, TransactionResult,
33            XrpDropsAmount,
34        };
35    }
36}
37mod i {
38    tonic::include_proto!("org.interledger.stream.proto");
39    pub mod prelude {
40        pub use super::{
41            ilp_over_http_service_client::IlpOverHttpServiceClient, SendPaymentRequest,
42            SendPaymentResponse, balance_service_client::BalanceServiceClient, GetBalanceRequest, GetBalanceResponse
43        };
44    }
45}
46
47// Public modules
48pub mod address;
49pub mod transaction;
50pub mod wallet;
51pub mod xrplclient;
52pub mod ilpclient;
53
54pub use crate::xpring::{Xrpl, Ilp};