Add Runtime type to metadata

This commit is contained in:
Andrew Jones
2021-08-31 16:54:48 +01:00
parent 732682ed46
commit 717f6341c1
3 changed files with 14 additions and 2 deletions
+4
View File
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
## [14.0.0-rc.3] - 2021-08-31
### Added
- Add Runtime type to metadata
## [14.0.0-rc.2] - 2021-08-04
### Changed
Combine Map/NMap/DoubleMap StorageEntryTypes [#23](https://github.com/paritytech/frame-metadata/pull/23)
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "frame-metadata"
version = "14.0.0-rc.2"
version = "14.0.0-rc.3"
authors = ["Parity Technologies <admin@parity.io>"]
edition = "2018"
license = "Apache-2.0"
+9 -1
View File
@@ -50,17 +50,25 @@ pub struct RuntimeMetadataV14 {
pub pallets: Vec<PalletMetadata<PortableForm>>,
/// Metadata of the extrinsic.
pub extrinsic: ExtrinsicMetadata<PortableForm>,
/// The type of the `Runtime`.
pub ty: <PortableForm as Form>::Type,
}
impl RuntimeMetadataV14 {
pub fn new(pallets: Vec<PalletMetadata>, extrinsic: ExtrinsicMetadata) -> Self {
pub fn new(
pallets: Vec<PalletMetadata>,
extrinsic: ExtrinsicMetadata,
runtime_type: MetaType,
) -> Self {
let mut registry = Registry::new();
let pallets = registry.map_into_portable(pallets);
let extrinsic = extrinsic.into_portable(&mut registry);
let ty = registry.register_type(&runtime_type);
Self {
types: registry.into(),
pallets,
extrinsic,
ty,
}
}
}