pub struct Metadata { /* private fields */ }Expand description
Node metadata. This can be constructed by providing some compatible frame_metadata
which is then decoded into this. We aim to preserve all of the existing information in
the incoming metadata while optimizing the format a little for Subxt’s use cases.
Implementations§
Source§impl Metadata
impl Metadata
Sourcepub fn arc(self) -> Arc<Metadata>
pub fn arc(self) -> Arc<Metadata>
Metadata tends to be passed around wrapped in an Arc so that it can be
cheaply cloned. This is a shorthand to return that.
Sourcepub fn decode_from(bytes: &[u8]) -> Result<Metadata, Error>
pub fn decode_from(bytes: &[u8]) -> Result<Metadata, Error>
This is essentially an alias for <Metadata as codec::Decode>::decode(&mut bytes)
Sourcepub fn from_v16(metadata: RuntimeMetadataV16) -> Result<Metadata, TryFromError>
pub fn from_v16(metadata: RuntimeMetadataV16) -> Result<Metadata, TryFromError>
Convert V16 metadata into Metadata.
Sourcepub fn from_v15(metadata: RuntimeMetadataV15) -> Result<Metadata, TryFromError>
pub fn from_v15(metadata: RuntimeMetadataV15) -> Result<Metadata, TryFromError>
Convert V15 metadata into Metadata.
Sourcepub fn from_v14(metadata: RuntimeMetadataV14) -> Result<Metadata, TryFromError>
pub fn from_v14(metadata: RuntimeMetadataV14) -> Result<Metadata, TryFromError>
Convert V14 metadata into Metadata.
Sourcepub fn types(&self) -> &PortableRegistry
pub fn types(&self) -> &PortableRegistry
Access the underlying type registry.
Sourcepub fn types_mut(&mut self) -> &mut PortableRegistry
pub fn types_mut(&mut self) -> &mut PortableRegistry
Mutable access to the underlying type registry.
Sourcepub fn dispatch_error_ty(&self) -> Option<u32>
pub fn dispatch_error_ty(&self) -> Option<u32>
The type ID of the DispatchError type, if it exists.
Sourcepub fn extrinsic(&self) -> &ExtrinsicMetadata
pub fn extrinsic(&self) -> &ExtrinsicMetadata
Return details about the extrinsic format.
Sourcepub fn outer_enums(&self) -> OuterEnumsMetadata
pub fn outer_enums(&self) -> OuterEnumsMetadata
Return details about the outer enums.
Sourcepub fn pallets(&self) -> impl ExactSizeIterator
pub fn pallets(&self) -> impl ExactSizeIterator
An iterator over all of the available pallets.
Sourcepub fn pallet_by_call_index(
&self,
variant_index: u8,
) -> Option<PalletMetadata<'_>>
pub fn pallet_by_call_index( &self, variant_index: u8, ) -> Option<PalletMetadata<'_>>
Access a pallet given some call/extrinsic pallet index byte
Sourcepub fn pallet_by_event_index(
&self,
variant_index: u8,
) -> Option<PalletMetadata<'_>>
pub fn pallet_by_event_index( &self, variant_index: u8, ) -> Option<PalletMetadata<'_>>
Access a pallet given some event pallet index byte
Sourcepub fn pallet_by_error_index(
&self,
variant_index: u8,
) -> Option<PalletMetadata<'_>>
pub fn pallet_by_error_index( &self, variant_index: u8, ) -> Option<PalletMetadata<'_>>
Access a pallet given some error pallet index byte
Sourcepub fn pallet_by_name(&self, pallet_name: &str) -> Option<PalletMetadata<'_>>
pub fn pallet_by_name(&self, pallet_name: &str) -> Option<PalletMetadata<'_>>
Access a pallet given its name.
Sourcepub fn runtime_api_traits(&self) -> impl ExactSizeIterator
pub fn runtime_api_traits(&self) -> impl ExactSizeIterator
An iterator over all of the runtime APIs.
Sourcepub fn runtime_api_trait_by_name(
&self,
name: &str,
) -> Option<RuntimeApiMetadata<'_>>
pub fn runtime_api_trait_by_name( &self, name: &str, ) -> Option<RuntimeApiMetadata<'_>>
Access a runtime API trait given its name.
Sourcepub fn custom(&self) -> CustomMetadata<'_>
pub fn custom(&self) -> CustomMetadata<'_>
Returns custom user defined types
Sourcepub fn hasher(&self) -> MetadataHasher<'_>
pub fn hasher(&self) -> MetadataHasher<'_>
Obtain a unique hash representing this metadata or specific parts of it.
Trait Implementations§
Source§impl ConstantEntryInfo for Metadata
impl ConstantEntryInfo for Metadata
Source§fn constant_entries(
&self,
) -> impl Iterator<Item = Entry<Cow<'_, str>, Cow<'_, str>>>
fn constant_entries( &self, ) -> impl Iterator<Item = Entry<Cow<'_, str>, Cow<'_, str>>>
Entry as we go.Source§impl ConstantTypeInfo for Metadata
impl ConstantTypeInfo for Metadata
Source§fn constant_info(
&self,
pallet_name: &str,
constant_name: &str,
) -> Result<ConstantInfo<'_, <Metadata as ConstantTypeInfo>::TypeId>, ConstantInfoError<'_>>
fn constant_info( &self, pallet_name: &str, constant_name: &str, ) -> Result<ConstantInfo<'_, <Metadata as ConstantTypeInfo>::TypeId>, ConstantInfoError<'_>>
Source§impl CustomValueEntryInfo for Metadata
impl CustomValueEntryInfo for Metadata
Source§fn custom_values(&self) -> impl Iterator<Item = CustomValue<'_>>
fn custom_values(&self) -> impl Iterator<Item = CustomValue<'_>>
CustomValue as we go.Source§impl CustomValueTypeInfo for Metadata
impl CustomValueTypeInfo for Metadata
Source§fn custom_value_info(
&self,
name: &str,
) -> Result<CustomValueInfo<'_, <Metadata as CustomValueTypeInfo>::TypeId>, CustomValueInfoError>
fn custom_value_info( &self, name: &str, ) -> Result<CustomValueInfo<'_, <Metadata as CustomValueTypeInfo>::TypeId>, CustomValueInfoError>
Source§impl Decode for Metadata
impl Decode for Metadata
Source§fn decode<I>(input: &mut I) -> Result<Metadata, Error>where
I: Input,
fn decode<I>(input: &mut I) -> Result<Metadata, Error>where
I: Input,
Source§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
Source§impl ExtrinsicTypeInfo for Metadata
impl ExtrinsicTypeInfo for Metadata
Source§fn extrinsic_call_info(
&self,
pallet_index: u8,
call_index: u8,
) -> Result<ExtrinsicCallInfo<'_, <Metadata as ExtrinsicTypeInfo>::TypeId>, ExtrinsicInfoError<'_>>
fn extrinsic_call_info( &self, pallet_index: u8, call_index: u8, ) -> Result<ExtrinsicCallInfo<'_, <Metadata as ExtrinsicTypeInfo>::TypeId>, ExtrinsicInfoError<'_>>
Source§fn extrinsic_signature_info(
&self,
) -> Result<ExtrinsicSignatureInfo<<Metadata as ExtrinsicTypeInfo>::TypeId>, ExtrinsicInfoError<'_>>
fn extrinsic_signature_info( &self, ) -> Result<ExtrinsicSignatureInfo<<Metadata as ExtrinsicTypeInfo>::TypeId>, ExtrinsicInfoError<'_>>
Source§fn extrinsic_extension_info(
&self,
extension_version: Option<u8>,
) -> Result<ExtrinsicExtensionInfo<'_, <Metadata as ExtrinsicTypeInfo>::TypeId>, ExtrinsicInfoError<'_>>
fn extrinsic_extension_info( &self, extension_version: Option<u8>, ) -> Result<ExtrinsicExtensionInfo<'_, <Metadata as ExtrinsicTypeInfo>::TypeId>, ExtrinsicInfoError<'_>>
Source§impl RuntimeApiEntryInfo for Metadata
impl RuntimeApiEntryInfo for Metadata
Source§fn runtime_api_entries(
&self,
) -> impl Iterator<Item = Entry<Cow<'_, str>, Cow<'_, str>>>
fn runtime_api_entries( &self, ) -> impl Iterator<Item = Entry<Cow<'_, str>, Cow<'_, str>>>
Entry as we go.Source§impl RuntimeApiTypeInfo for Metadata
impl RuntimeApiTypeInfo for Metadata
Source§fn runtime_api_info(
&self,
trait_name: &str,
method_name: &str,
) -> Result<RuntimeApiInfo<'_, <Metadata as RuntimeApiTypeInfo>::TypeId>, RuntimeApiInfoError<'_>>
fn runtime_api_info( &self, trait_name: &str, method_name: &str, ) -> Result<RuntimeApiInfo<'_, <Metadata as RuntimeApiTypeInfo>::TypeId>, RuntimeApiInfoError<'_>>
Source§impl StorageEntryInfo for Metadata
impl StorageEntryInfo for Metadata
Source§fn storage_entries(
&self,
) -> impl Iterator<Item = Entry<Cow<'_, str>, Cow<'_, str>>>
fn storage_entries( &self, ) -> impl Iterator<Item = Entry<Cow<'_, str>, Cow<'_, str>>>
Entry as we go.Source§impl StorageTypeInfo for Metadata
impl StorageTypeInfo for Metadata
Source§fn storage_info(
&self,
pallet_name: &str,
storage_entry: &str,
) -> Result<StorageInfo<'_, <Metadata as StorageTypeInfo>::TypeId>, StorageInfoError<'_>>
fn storage_info( &self, pallet_name: &str, storage_entry: &str, ) -> Result<StorageInfo<'_, <Metadata as StorageTypeInfo>::TypeId>, StorageInfoError<'_>>
Source§impl TryFrom<RuntimeMetadataPrefixed> for Metadata
impl TryFrom<RuntimeMetadataPrefixed> for Metadata
Source§type Error = TryFromError
type Error = TryFromError
Source§fn try_from(
value: RuntimeMetadataPrefixed,
) -> Result<Metadata, <Metadata as TryFrom<RuntimeMetadataPrefixed>>::Error>
fn try_from( value: RuntimeMetadataPrefixed, ) -> Result<Metadata, <Metadata as TryFrom<RuntimeMetadataPrefixed>>::Error>
Source§impl TryFrom<RuntimeMetadataV14> for Metadata
impl TryFrom<RuntimeMetadataV14> for Metadata
Source§type Error = TryFromError
type Error = TryFromError
Source§fn try_from(m: RuntimeMetadataV14) -> Result<Metadata, TryFromError>
fn try_from(m: RuntimeMetadataV14) -> Result<Metadata, TryFromError>
Source§impl TryFrom<RuntimeMetadataV15> for Metadata
impl TryFrom<RuntimeMetadataV15> for Metadata
Source§type Error = TryFromError
type Error = TryFromError
Source§fn try_from(m: RuntimeMetadataV15) -> Result<Metadata, TryFromError>
fn try_from(m: RuntimeMetadataV15) -> Result<Metadata, TryFromError>
Source§impl TryFrom<RuntimeMetadataV16> for Metadata
impl TryFrom<RuntimeMetadataV16> for Metadata
Source§type Error = TryFromError
type Error = TryFromError
Source§fn try_from(m: RuntimeMetadataV16) -> Result<Metadata, TryFromError>
fn try_from(m: RuntimeMetadataV16) -> Result<Metadata, TryFromError>
Source§impl ViewFunctionEntryInfo for Metadata
impl ViewFunctionEntryInfo for Metadata
Source§fn view_function_entries(
&self,
) -> impl Iterator<Item = Entry<Cow<'_, str>, Cow<'_, str>>>
fn view_function_entries( &self, ) -> impl Iterator<Item = Entry<Cow<'_, str>, Cow<'_, str>>>
Entry as we go.Source§impl ViewFunctionTypeInfo for Metadata
impl ViewFunctionTypeInfo for Metadata
Source§fn view_function_info(
&self,
pallet_name: &str,
function_name: &str,
) -> Result<ViewFunctionInfo<'_, <Metadata as ViewFunctionTypeInfo>::TypeId>, ViewFunctionInfoError<'_>>
fn view_function_info( &self, pallet_name: &str, function_name: &str, ) -> Result<ViewFunctionInfo<'_, <Metadata as ViewFunctionTypeInfo>::TypeId>, ViewFunctionInfoError<'_>>
Auto Trait Implementations§
impl Freeze for Metadata
impl RefUnwindSafe for Metadata
impl Send for Metadata
impl Sync for Metadata
impl Unpin for Metadata
impl UnsafeUnpin for Metadata
impl UnwindSafe for Metadata
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.