mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-22 05:37:58 +00:00
a0cb14aa4f
* start migrating, broken * first iteration of updating * fmt and clippy * add Composite<u32> decoding via scale value patch * bump scale type gen versions * fix decoding with new scale decode * compiling with changed deps * core utils, condig, client, metadata * core crate compiling * signer crate no once lock * add core to no-std-tests, change imports * broken commit, start pulling everything together in subxt * port more things to subxt * events in core crate, extrinsics sadly much more difficult * almost all examples pass again * dynamic values fix in examples * fix no std issue and fmt * remove unused dependencies * fix lightclient impl * runtime version refactor * formatting and addressing nits * more comments addressed * update wasm example and no-std-signer tests * other nits and error impl on signer errors * fix feature flag * fix runtime version refactor * fix doc links * fix integration tests * fix feature flag gated client state * fix native feature in CI * fix lightclient utils * make imports more lean in subxt-core * integrate changes from subxt-core imports into subxt * other changes in subxt simplify imports more * fix and docs * doc false for cli * fix clippy * remove events block hash in tests * codegen no-std support in generated code * export alloc crate for no-std codegen * fix doc test * implement James comments * remove std traits, use core traits instead * address nits * remove unusued dep in no-std tests * fix Box import in no_std * sp-crypto-hashing instead of sp-core-hashing * bump scale-typegen, add no std codegen tests * fix some things * replace unmaintained derivative with derive_where to remove non-canonical warnings * fmt * remove unused dep * fix deps * update artifacts to fix type ID mismatches * bump to latest scale-typegen --------- Co-authored-by: James Wilson <james@jsdw.me>
25 lines
958 B
Rust
25 lines
958 B
Rust
#![allow(missing_docs)]
|
|
use subxt::{dynamic::Value, OnlineClient, PolkadotConfig};
|
|
|
|
#[tokio::main]
|
|
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|
// Create a new API client, configured to talk to Polkadot nodes.
|
|
let api = OnlineClient::<PolkadotConfig>::new().await?;
|
|
|
|
// Build a dynamic storage query to iterate account information.
|
|
// With a dynamic query, we can just provide an empty vector as the keys to iterate over all entries.
|
|
let keys: Vec<Value> = vec![];
|
|
let storage_query = subxt::dynamic::storage("System", "Account", keys);
|
|
|
|
// Use that query to return an iterator over the results.
|
|
let mut results = api.storage().at_latest().await?.iter(storage_query).await?;
|
|
|
|
while let Some(Ok(kv)) = results.next().await {
|
|
println!("Keys decoded: {:?}", kv.keys);
|
|
println!("Key: 0x{}", hex::encode(&kv.key_bytes));
|
|
println!("Value: {:?}", kv.value.to_value()?);
|
|
}
|
|
|
|
Ok(())
|
|
}
|