5 个版本
0.1.4 | 2023 年 11 月 1 日 |
---|---|
0.1.3 | 2022 年 7 月 2 日 |
0.1.2 | 2022 年 5 月 18 日 |
0.1.1 | 2022 年 5 月 18 日 |
0.1.0 | 2022 年 5 月 17 日 |
#2110 in 魔法豆
125KB
3.5K SLoC
Stellar SDK
一个用于与 Stellar Horizon 服务器通信的轻量级 Rust 库。
特性
- 它只使用 3 个依赖项,非常轻量
- 一个用于 Horizon 端点的网络层 API。
- 构建和签名事务、与 Stellar Horizon 实例通信以及提交事务或查询网络历史的工具。
安装
将 stellar_sdk
添加到您的 Cargo.toml 文件并运行 cargo run
"stellar_sdk" = "0.1.3"
使用方法
使用方法旨在与 JavaScript Stellar Sdk 相同,我们试图避免 Rust 语言本身带来的任何复杂性。
use stellar_sdk::{
types::Asset,
utils::{Direction, Endpoint},
CallBuilder, Server,
};
fn main() {
let s = String::from("https://horizon.stellar.org");
let s = Server::new(s);
// Load 1 account
let my_acc = s
.load_account("GAUZUPTHOMSZEV65VNSRMUDAAE4VBMSRYYAX3UOWYU3BQUZ6OK65NOWM")
.unwrap();
// Load transactions of an account
let my_account_id = String::from("GAP2TJNW7NL52MPB36DZ2PB6PSIBEUEJXDG325BJQKUNDQBPKX3E2DLV");
let my_txs = s
.transactions()
.order(Direction::Desc)
.limit(2)
.include_failed(false)
.for_endpoint(Endpoint::Accounts(my_account_id))
.call()
.unwrap();
// Load trades of yXLM and XLM
let y_xlm = Asset::new(
"yXLM",
"GARDNV3Q7YGT4AKSDF25LT32YSCCW4EV22Y2TV3I2PU2MMXJTEDL5T55",
);
let native = Asset::native();
let my_asset_pair = (y_xlm, native);
let xlm_trades = s
.trades()
.for_asset_pair(my_asset_pair)
.limit(2)
.call()
.unwrap();
// Load USDC liquidity pools
let usdc = Asset::new(
"USDC",
"GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN",
);
let usdc_liquidity_pools = s.liquidity_pools().for_assets(vec![usdc]).call().unwrap();
println!("{:#?}", my_txs);
println!("{:#?}", xlm_trades);
println!("{:#?}", my_acc);
println!("{:#?}", usdc_liquidity_pools);
}
待办事项
资产
- get_raw_asset_type
- to_change_trust_XDR_object
- to_trustline_XDR_object
- to_XDR_object
- from_operation
Claimant
FeeBumpTransaction
Keypair
- master
- xdr_account_id
- xdr_public_key
- xdr_muxed_account
- signature_hint
- sign_payload_decorated
- sign_decorated
LiquidityPoolAsset
LiquidityPoolId
Memo
MuxedAccount
Operation
Server
- checkMemoRequired
SignerKey
Transaction
Transaction Builder
全局变量
依赖项
~30MB
~332K SLoC