mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-25 17:37:56 +00:00
Add hooks to register event types for decoding (#227)
* Global registration of type segmenters for event decoding * Perform type sizes check when building client * Introduce EventTypeRegistry for global runtime type sizes * Fmt * Register runtime type sizes on creation of EventTypeRegistry * Register more default dispatch types * Add missing type sizes * fmt * Fix up register_type_size builder method * Update doc comments * Make register_default_type_sizes public * Don't allow duplicate registered types * Remove call to supertraits type registration, done manually in Runtime * Fix tests and warnings * Fix duplicate type registration * Fmt * review: use is_empty() Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com> * Add panic docs Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
This commit is contained in:
@@ -17,7 +17,6 @@
|
||||
use sp_keyring::AccountKeyring;
|
||||
use substrate_subxt::{
|
||||
balances::{
|
||||
BalancesEventsDecoder,
|
||||
TransferCallExt,
|
||||
TransferEvent,
|
||||
},
|
||||
@@ -25,7 +24,6 @@ use substrate_subxt::{
|
||||
ClientBuilder,
|
||||
DefaultNodeRuntime,
|
||||
EventSubscription,
|
||||
EventsDecoder,
|
||||
PairSigner,
|
||||
};
|
||||
|
||||
@@ -38,8 +36,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
|
||||
let client = ClientBuilder::<DefaultNodeRuntime>::new().build().await?;
|
||||
let sub = client.subscribe_events().await?;
|
||||
let mut decoder = EventsDecoder::<DefaultNodeRuntime>::new(client.metadata().clone());
|
||||
decoder.with_balances();
|
||||
let decoder = client.events_decoder();
|
||||
let mut sub = EventSubscription::<DefaultNodeRuntime>::new(sub, decoder);
|
||||
sub.filter_event::<TransferEvent<_>>();
|
||||
client.transfer(&signer, &dest, 10_000).await?;
|
||||
|
||||
Reference in New Issue
Block a user