mirror of
https://github.com/pezkuwichain/pezframe-metadata.git
synced 2026-04-22 01:57:59 +00:00
CI build & reformat. (#1)
* CI build & reformat. * Fix no default features builds. * Fix v12 build.
This commit is contained in:
@@ -0,0 +1,30 @@
|
|||||||
|
name: Cargo deny
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
schedule:
|
||||||
|
- cron: '0 0 * * *'
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
tags:
|
||||||
|
- v*
|
||||||
|
paths-ignore:
|
||||||
|
- 'README.md'
|
||||||
|
jobs:
|
||||||
|
cargo-deny:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Cancel Previous Runs
|
||||||
|
uses: styfle/cancel-workflow-action@0.4.1
|
||||||
|
with:
|
||||||
|
access_token: ${{ github.token }}
|
||||||
|
- name: Checkout sources & submodules
|
||||||
|
uses: actions/checkout@master
|
||||||
|
with:
|
||||||
|
fetch-depth: 5
|
||||||
|
submodules: recursive
|
||||||
|
- name: Cargo deny
|
||||||
|
uses: EmbarkStudios/cargo-deny-action@v1
|
||||||
|
with:
|
||||||
|
command: "check --hide-inclusion-graph"
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
name: Check style
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
tags:
|
||||||
|
- v*
|
||||||
|
paths-ignore:
|
||||||
|
- 'README.md'
|
||||||
|
jobs:
|
||||||
|
## Check stage
|
||||||
|
check-fmt:
|
||||||
|
name: Check RustFmt
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
RUST_BACKTRACE: full
|
||||||
|
steps:
|
||||||
|
- name: Cancel Previous Runs
|
||||||
|
uses: styfle/cancel-workflow-action@0.4.1
|
||||||
|
with:
|
||||||
|
access_token: ${{ github.token }}
|
||||||
|
- name: Checkout sources & submodules
|
||||||
|
uses: actions/checkout@master
|
||||||
|
with:
|
||||||
|
fetch-depth: 5
|
||||||
|
submodules: recursive
|
||||||
|
- name: Add rustfmt
|
||||||
|
run: rustup component add rustfmt
|
||||||
|
- name: rust-fmt check
|
||||||
|
uses: actions-rs/cargo@master
|
||||||
|
with:
|
||||||
|
command: fmt
|
||||||
|
args: --all -- --check
|
||||||
@@ -0,0 +1,106 @@
|
|||||||
|
name: Compilation and Testing Suite
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
tags:
|
||||||
|
- v*
|
||||||
|
paths-ignore:
|
||||||
|
- 'README.md'
|
||||||
|
jobs:
|
||||||
|
|
||||||
|
check-test-build:
|
||||||
|
name: Check, test and build
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
RUST_BACKTRACE: full
|
||||||
|
steps:
|
||||||
|
- name: Cancel Previous Runs
|
||||||
|
uses: styfle/cancel-workflow-action@0.4.1
|
||||||
|
with:
|
||||||
|
access_token: ${{ github.token }}
|
||||||
|
- name: Checkout sources & submodules
|
||||||
|
uses: actions/checkout@master
|
||||||
|
with:
|
||||||
|
fetch-depth: 5
|
||||||
|
submodules: recursive
|
||||||
|
## Check Stage
|
||||||
|
- name: Checking rust-stable
|
||||||
|
uses: actions-rs/cargo@master
|
||||||
|
with:
|
||||||
|
command: check
|
||||||
|
toolchain: stable
|
||||||
|
args: --all --verbose
|
||||||
|
|
||||||
|
## Test Stage
|
||||||
|
- name: Testing rust-stable
|
||||||
|
uses: actions-rs/cargo@master
|
||||||
|
with:
|
||||||
|
command: test
|
||||||
|
toolchain: stable
|
||||||
|
args: --all --verbose
|
||||||
|
|
||||||
|
## Build Stage
|
||||||
|
- name: Building rust-stable
|
||||||
|
uses: actions-rs/cargo@master
|
||||||
|
if: github.ref == 'refs/heads/master'
|
||||||
|
with:
|
||||||
|
command: build
|
||||||
|
toolchain: stable
|
||||||
|
args: --all --verbose
|
||||||
|
|
||||||
|
check-wasm:
|
||||||
|
name: Check WASM
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
RUST_BACKTRACE: full
|
||||||
|
steps:
|
||||||
|
- name: Cancel Previous Runs
|
||||||
|
uses: styfle/cancel-workflow-action@0.4.1
|
||||||
|
with:
|
||||||
|
access_token: ${{ github.token }}
|
||||||
|
- name: Checkout sources & submodules
|
||||||
|
uses: actions/checkout@master
|
||||||
|
with:
|
||||||
|
fetch-depth: 5
|
||||||
|
submodules: recursive
|
||||||
|
- name: Add WASM Utilities
|
||||||
|
run: rustup target add wasm32-unknown-unknown --toolchain stable
|
||||||
|
## Check Stage
|
||||||
|
- name: Checking wasm32
|
||||||
|
uses: actions-rs/cargo@master
|
||||||
|
with:
|
||||||
|
command: check
|
||||||
|
toolchain: stable
|
||||||
|
args: --manifest-path ./frame-metadata/Cargo.toml --target wasm32-unknown-unknown --no-default-features
|
||||||
|
|
||||||
|
check-features:
|
||||||
|
name: Check Features
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
RUST_BACKTRACE: full
|
||||||
|
steps:
|
||||||
|
- name: Cancel Previous Runs
|
||||||
|
uses: styfle/cancel-workflow-action@0.4.1
|
||||||
|
with:
|
||||||
|
access_token: ${{ github.token }}
|
||||||
|
- name: Checkout sources & submodules
|
||||||
|
uses: actions/checkout@master
|
||||||
|
with:
|
||||||
|
fetch-depth: 5
|
||||||
|
submodules: recursive
|
||||||
|
## Check Stage
|
||||||
|
- name: Checking without any features
|
||||||
|
uses: actions-rs/cargo@master
|
||||||
|
with:
|
||||||
|
command: check
|
||||||
|
toolchain: stable
|
||||||
|
args: --manifest-path ./frame-metadata/Cargo.toml --no-default-features
|
||||||
|
- name: Checking v12
|
||||||
|
uses: actions-rs/cargo@master
|
||||||
|
with:
|
||||||
|
command: check
|
||||||
|
toolchain: stable
|
||||||
|
args: --manifest-path ./frame-metadata/Cargo.toml --no-default-features --features v12
|
||||||
@@ -0,0 +1,128 @@
|
|||||||
|
# This template contains all of the possible sections and their default values
|
||||||
|
|
||||||
|
# Note that all fields that take a lint level have these possible values:
|
||||||
|
# * deny - An error will be produced and the check will fail
|
||||||
|
# * warn - A warning will be produced, but the check will not fail
|
||||||
|
# * allow - No warning or error will be produced, though in some cases a note will be
|
||||||
|
|
||||||
|
# If 1 or more target triples (and optionally, target_features) are specified, only
|
||||||
|
# the specified targets will be checked when running `cargo deny check`. This means,
|
||||||
|
# if a particular package is only ever used as a target specific dependency, such
|
||||||
|
# as, for example, the `nix` crate only being used via the `target_family = "unix"`
|
||||||
|
# configuration, that only having windows targets in this list would mean the nix
|
||||||
|
# crate, as well as any of its exclusive dependencies not shared by any other
|
||||||
|
# crates, would be ignored, as the target list here is effectively saying which
|
||||||
|
# targets you are building for.
|
||||||
|
targets = [
|
||||||
|
# The triple can be any string, but only the target triples built in to
|
||||||
|
# rustc (as of 1.40) can be checked against actual config expressions
|
||||||
|
#{ triple = "x86_64-unknown-linux-musl" },
|
||||||
|
# You can also specify which target_features you promise are enabled for a particular
|
||||||
|
# target. target_features are currently not validated against the actual valid
|
||||||
|
# features supported by the target architecture.
|
||||||
|
#{ triple = "wasm32-unknown-unknown", features = ["atomics"] },
|
||||||
|
]
|
||||||
|
|
||||||
|
# This section is considered when running `cargo deny check advisories`
|
||||||
|
# More documentation for the advisories section can be found here:
|
||||||
|
# https://github.com/EmbarkStudios/cargo-deny#the-advisories-section
|
||||||
|
[advisories]
|
||||||
|
# The path where the advisory database is cloned/fetched into
|
||||||
|
db-path = "~/.cargo/advisory-db"
|
||||||
|
# The url of the advisory database to use
|
||||||
|
db-url = "https://github.com/rustsec/advisory-db"
|
||||||
|
# The lint level for security vulnerabilities
|
||||||
|
vulnerability = "warn"
|
||||||
|
# The lint level for unmaintained crates
|
||||||
|
unmaintained = "warn"
|
||||||
|
# The lint level for crates with security notices. Note that as of
|
||||||
|
# 2019-12-17 there are no security notice advisories in https://github.com/rustsec/advisory-db
|
||||||
|
notice = "warn"
|
||||||
|
# A list of advisory IDs to ignore. Note that ignored advisories will still output
|
||||||
|
# a note when they are encountered.
|
||||||
|
ignore = []
|
||||||
|
# Threshold for security vulnerabilities, any vulnerability with a CVSS score
|
||||||
|
# lower than the range specified will be ignored. Note that ignored advisories
|
||||||
|
# will still output a note when they are encountered.
|
||||||
|
# * None - CVSS Score 0.0
|
||||||
|
# * Low - CVSS Score 0.1 - 3.9
|
||||||
|
# * Medium - CVSS Score 4.0 - 6.9
|
||||||
|
# * High - CVSS Score 7.0 - 8.9
|
||||||
|
# * Critical - CVSS Score 9.0 - 10.0
|
||||||
|
#severity-threshold =
|
||||||
|
|
||||||
|
# This section is considered when running `cargo deny check licenses`
|
||||||
|
# More documentation for the licenses section can be found here:
|
||||||
|
# https://github.com/EmbarkStudios/cargo-deny#the-licenses-section
|
||||||
|
[licenses]
|
||||||
|
# The lint level for crates which do not have a detectable license
|
||||||
|
unlicensed = "warn"
|
||||||
|
# List of explictly allowed licenses
|
||||||
|
# See https://spdx.org/licenses/ for list of possible licenses
|
||||||
|
# [possible values: any SPDX 3.7 short identifier (+ optional exception)].
|
||||||
|
allow = []
|
||||||
|
# List of explictly disallowed licenses
|
||||||
|
# See https://spdx.org/licenses/ for list of possible licenses
|
||||||
|
# [possible values: any SPDX 3.7 short identifier (+ optional exception)].
|
||||||
|
deny = ["GPL-3.0"]
|
||||||
|
# The lint level for licenses considered copyleft
|
||||||
|
copyleft = "allow"
|
||||||
|
# Blanket approval or denial for OSI-approved or FSF Free/Libre licenses
|
||||||
|
# * both - The license will only be approved if it is both OSI-approved *AND* FSF/Free
|
||||||
|
# * either - The license will be approved if it is either OSI-approved *OR* FSF/Free
|
||||||
|
# * osi-only - The license will be approved if is OSI-approved *AND NOT* FSF/Free
|
||||||
|
# * fsf-only - The license will be approved if is FSF/Free *AND NOT* OSI-approved
|
||||||
|
# * neither - The license will be denied if is FSF/Free *OR* OSI-approved
|
||||||
|
allow-osi-fsf-free = "either"
|
||||||
|
# The confidence threshold for detecting a license from license text.
|
||||||
|
# The higher the value, the more closely the license text must be to the
|
||||||
|
# canonical license text of a valid SPDX license file.
|
||||||
|
# [possible values: any between 0.0 and 1.0].
|
||||||
|
confidence-threshold = 0.8
|
||||||
|
|
||||||
|
# This section is considered when running `cargo deny check bans`.
|
||||||
|
# More documentation about the 'bans' section can be found here:
|
||||||
|
# https://github.com/EmbarkStudios/cargo-deny#crate-bans-cargo-deny-check-ban
|
||||||
|
[bans]
|
||||||
|
# Lint level for when multiple versions of the same crate are detected
|
||||||
|
multiple-versions = "warn"
|
||||||
|
# The graph highlighting used when creating dotgraphs for crates
|
||||||
|
# with multiple versions
|
||||||
|
# * lowest-version - The path to the lowest versioned duplicate is highlighted
|
||||||
|
# * simplest-path - The path to the version with the fewest edges is highlighted
|
||||||
|
# * all - Both lowest-version and simplest-path are used
|
||||||
|
highlight = "all"
|
||||||
|
# List of crates that are allowed. Use with care!
|
||||||
|
allow = [
|
||||||
|
#{ name = "ansi_term", version = "=0.11.0" },
|
||||||
|
]
|
||||||
|
# List of crates to deny
|
||||||
|
deny = [
|
||||||
|
# Each entry the name of a crate and a version range. If version is
|
||||||
|
# not specified, all versions will be matched.
|
||||||
|
#{ name = "ansi_term", version = "=0.11.0" },
|
||||||
|
]
|
||||||
|
# Certain crates/versions that will be skipped when doing duplicate detection.
|
||||||
|
skip = [
|
||||||
|
#{ name = "ansi_term", version = "=0.11.0" },
|
||||||
|
]
|
||||||
|
# Similarly to `skip` allows you to skip certain crates during duplicate detection,
|
||||||
|
# unlike skip, it also includes the entire tree of transitive dependencies starting at
|
||||||
|
# the specified crate, up to a certain depth, which is by default infinite
|
||||||
|
skip-tree = [
|
||||||
|
#{ name = "ansi_term", version = "=0.11.0", depth = 20 },
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
# This section is considered when running `cargo deny check sources`.
|
||||||
|
# More documentation about the 'sources' section can be found here:
|
||||||
|
# https://github.com/EmbarkStudios/cargo-deny#crate-sources-cargo-deny-check-sources
|
||||||
|
[sources]
|
||||||
|
# Lint level for what to happen when a crate from a crate registry that is not in the allow list is encountered
|
||||||
|
unknown-registry = "warn"
|
||||||
|
# Lint level for what to happen when a crate from a git repository that is not in the allow list is encountered
|
||||||
|
unknown-git = "warn"
|
||||||
|
# List of URLs for allowed crate registries, by default https://github.com/rust-lang/crates.io-index is included
|
||||||
|
#allow-registry = []
|
||||||
|
# List of URLs for allowed Git repositories
|
||||||
|
allow-git = []
|
||||||
+66
-34
@@ -20,10 +20,10 @@
|
|||||||
#![cfg_attr(not(feature = "std"), no_std)]
|
#![cfg_attr(not(feature = "std"), no_std)]
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
#[cfg(feature = "std")]
|
||||||
use serde::Serialize;
|
use codec::{Decode, Error, Input};
|
||||||
#[cfg(feature = "std")]
|
|
||||||
use codec::{Decode, Input, Error};
|
|
||||||
use codec::{Encode, Output};
|
use codec::{Encode, Output};
|
||||||
|
#[cfg(feature = "std")]
|
||||||
|
use serde::Serialize;
|
||||||
|
|
||||||
#[cfg(not(feature = "std"))]
|
#[cfg(not(feature = "std"))]
|
||||||
extern crate alloc;
|
extern crate alloc;
|
||||||
@@ -46,12 +46,20 @@ type StringBuf = &'static str;
|
|||||||
///
|
///
|
||||||
/// For example a `&'static [ &'static str ]` can be decoded to a `Vec<String>`.
|
/// For example a `&'static [ &'static str ]` can be decoded to a `Vec<String>`.
|
||||||
#[derive(Clone)]
|
#[derive(Clone)]
|
||||||
pub enum DecodeDifferent<B, O> where B: 'static, O: 'static {
|
pub enum DecodeDifferent<B, O>
|
||||||
|
where
|
||||||
|
B: 'static,
|
||||||
|
O: 'static,
|
||||||
|
{
|
||||||
Encode(B),
|
Encode(B),
|
||||||
Decoded(O),
|
Decoded(O),
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<B, O> Encode for DecodeDifferent<B, O> where B: Encode + 'static, O: Encode + 'static {
|
impl<B, O> Encode for DecodeDifferent<B, O>
|
||||||
|
where
|
||||||
|
B: Encode + 'static,
|
||||||
|
O: Encode + 'static,
|
||||||
|
{
|
||||||
fn encode_to<W: Output>(&self, dest: &mut W) {
|
fn encode_to<W: Output>(&self, dest: &mut W) {
|
||||||
match self {
|
match self {
|
||||||
DecodeDifferent::Encode(b) => b.encode_to(dest),
|
DecodeDifferent::Encode(b) => b.encode_to(dest),
|
||||||
@@ -60,14 +68,21 @@ impl<B, O> Encode for DecodeDifferent<B, O> where B: Encode + 'static, O: Encode
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<B, O> codec::EncodeLike for DecodeDifferent<B, O> where B: Encode + 'static, O: Encode + 'static {}
|
impl<B, O> codec::EncodeLike for DecodeDifferent<B, O>
|
||||||
|
where
|
||||||
|
B: Encode + 'static,
|
||||||
|
O: Encode + 'static,
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
#[cfg(feature = "std")]
|
||||||
impl<B, O> Decode for DecodeDifferent<B, O> where B: 'static, O: Decode + 'static {
|
impl<B, O> Decode for DecodeDifferent<B, O>
|
||||||
|
where
|
||||||
|
B: 'static,
|
||||||
|
O: Decode + 'static,
|
||||||
|
{
|
||||||
fn decode<I: Input>(input: &mut I) -> Result<Self, Error> {
|
fn decode<I: Input>(input: &mut I) -> Result<Self, Error> {
|
||||||
<O>::decode(input).map(|val| {
|
<O>::decode(input).map(|val| DecodeDifferent::Decoded(val))
|
||||||
DecodeDifferent::Decoded(val)
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -82,13 +97,16 @@ where
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl<B, O> Eq for DecodeDifferent<B, O>
|
impl<B, O> Eq for DecodeDifferent<B, O>
|
||||||
where B: Encode + Eq + PartialEq + 'static, O: Encode + Eq + PartialEq + 'static
|
where
|
||||||
{}
|
B: Encode + Eq + PartialEq + 'static,
|
||||||
|
O: Encode + Eq + PartialEq + 'static,
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
impl<B, O> core::fmt::Debug for DecodeDifferent<B, O>
|
impl<B, O> core::fmt::Debug for DecodeDifferent<B, O>
|
||||||
where
|
where
|
||||||
B: core::fmt::Debug + Eq + 'static,
|
B: core::fmt::Debug + Eq + 'static,
|
||||||
O: core::fmt::Debug + Eq + 'static,
|
O: core::fmt::Debug + Eq + 'static,
|
||||||
{
|
{
|
||||||
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
|
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
|
||||||
match self {
|
match self {
|
||||||
@@ -100,11 +118,14 @@ impl<B, O> core::fmt::Debug for DecodeDifferent<B, O>
|
|||||||
|
|
||||||
#[cfg(feature = "std")]
|
#[cfg(feature = "std")]
|
||||||
impl<B, O> serde::Serialize for DecodeDifferent<B, O>
|
impl<B, O> serde::Serialize for DecodeDifferent<B, O>
|
||||||
where
|
where
|
||||||
B: serde::Serialize + 'static,
|
B: serde::Serialize + 'static,
|
||||||
O: serde::Serialize + 'static,
|
O: serde::Serialize + 'static,
|
||||||
{
|
{
|
||||||
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where S: serde::Serializer {
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||||||
|
where
|
||||||
|
S: serde::Serializer,
|
||||||
|
{
|
||||||
match self {
|
match self {
|
||||||
DecodeDifferent::Encode(b) => b.serialize(serializer),
|
DecodeDifferent::Encode(b) => b.serialize(serializer),
|
||||||
DecodeDifferent::Decoded(o) => o.serialize(serializer),
|
DecodeDifferent::Decoded(o) => o.serialize(serializer),
|
||||||
@@ -112,7 +133,7 @@ impl<B, O> serde::Serialize for DecodeDifferent<B, O>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub type DecodeDifferentArray<B, O=B> = DecodeDifferent<&'static [B], Vec<O>>;
|
pub type DecodeDifferentArray<B, O = B> = DecodeDifferent<&'static [B], Vec<O>>;
|
||||||
|
|
||||||
type DecodeDifferentStr = DecodeDifferent<&'static str, StringBuf>;
|
type DecodeDifferentStr = DecodeDifferent<&'static str, StringBuf>;
|
||||||
|
|
||||||
@@ -135,7 +156,9 @@ pub struct FunctionArgumentMetadata {
|
|||||||
|
|
||||||
/// Newtype wrapper for support encoding functions (actual the result of the function).
|
/// Newtype wrapper for support encoding functions (actual the result of the function).
|
||||||
#[derive(Clone, Eq)]
|
#[derive(Clone, Eq)]
|
||||||
pub struct FnEncode<E>(pub fn() -> E) where E: Encode + 'static;
|
pub struct FnEncode<E>(pub fn() -> E)
|
||||||
|
where
|
||||||
|
E: Encode + 'static;
|
||||||
|
|
||||||
impl<E: Encode> Encode for FnEncode<E> {
|
impl<E: Encode> Encode for FnEncode<E> {
|
||||||
fn encode_to<W: Output>(&self, dest: &mut W) {
|
fn encode_to<W: Output>(&self, dest: &mut W) {
|
||||||
@@ -159,7 +182,10 @@ impl<E: Encode + core::fmt::Debug> core::fmt::Debug for FnEncode<E> {
|
|||||||
|
|
||||||
#[cfg(feature = "std")]
|
#[cfg(feature = "std")]
|
||||||
impl<E: Encode + serde::Serialize> serde::Serialize for FnEncode<E> {
|
impl<E: Encode + serde::Serialize> serde::Serialize for FnEncode<E> {
|
||||||
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where S: serde::Serializer {
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||||||
|
where
|
||||||
|
S: serde::Serializer,
|
||||||
|
{
|
||||||
self.0().serialize(serializer)
|
self.0().serialize(serializer)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -171,7 +197,7 @@ pub struct OuterEventMetadata {
|
|||||||
pub name: DecodeDifferentStr,
|
pub name: DecodeDifferentStr,
|
||||||
pub events: DecodeDifferentArray<
|
pub events: DecodeDifferentArray<
|
||||||
(&'static str, FnEncode<&'static [EventMetadata]>),
|
(&'static str, FnEncode<&'static [EventMetadata]>),
|
||||||
(StringBuf, Vec<EventMetadata>)
|
(StringBuf, Vec<EventMetadata>),
|
||||||
>,
|
>,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -252,11 +278,14 @@ impl PartialEq<DefaultByteGetter> for DefaultByteGetter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Eq for DefaultByteGetter { }
|
impl Eq for DefaultByteGetter {}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
#[cfg(feature = "std")]
|
||||||
impl serde::Serialize for DefaultByteGetter {
|
impl serde::Serialize for DefaultByteGetter {
|
||||||
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where S: serde::Serializer {
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||||||
|
where
|
||||||
|
S: serde::Serializer,
|
||||||
|
{
|
||||||
self.0.default_byte().serialize(serializer)
|
self.0.default_byte().serialize(serializer)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -364,16 +393,16 @@ pub enum RuntimeMetadata {
|
|||||||
/// Version 11 for runtime metadata. No longer used.
|
/// Version 11 for runtime metadata. No longer used.
|
||||||
V11(RuntimeMetadataDeprecated),
|
V11(RuntimeMetadataDeprecated),
|
||||||
/// Version 12 for runtime metadata.
|
/// Version 12 for runtime metadata.
|
||||||
#[cfg(feature = "v12")]
|
#[cfg(feature = "v12")]
|
||||||
V12(RuntimeMetadataV12),
|
V12(RuntimeMetadataV12),
|
||||||
#[cfg(not(feature = "v12"))]
|
#[cfg(not(feature = "v12"))]
|
||||||
V12(RuntimeMetadataDeprecated),
|
V12(RuntimeMetadataDeprecated),
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Enum that should fail.
|
/// Enum that should fail.
|
||||||
#[derive(Eq, PartialEq)]
|
#[derive(Eq, PartialEq)]
|
||||||
#[cfg_attr(feature = "std", derive(Serialize, Debug))]
|
#[cfg_attr(feature = "std", derive(Serialize, Debug))]
|
||||||
pub enum RuntimeMetadataDeprecated { }
|
pub enum RuntimeMetadataDeprecated {}
|
||||||
|
|
||||||
impl Encode for RuntimeMetadataDeprecated {
|
impl Encode for RuntimeMetadataDeprecated {
|
||||||
fn encode_to<W: Output>(&self, _dest: &mut W) {}
|
fn encode_to<W: Output>(&self, _dest: &mut W) {}
|
||||||
@@ -391,6 +420,7 @@ impl Decode for RuntimeMetadataDeprecated {
|
|||||||
/// The metadata of a runtime.
|
/// The metadata of a runtime.
|
||||||
#[derive(Eq, Encode, PartialEq)]
|
#[derive(Eq, Encode, PartialEq)]
|
||||||
#[cfg_attr(feature = "std", derive(Decode, Serialize, Debug))]
|
#[cfg_attr(feature = "std", derive(Decode, Serialize, Debug))]
|
||||||
|
#[cfg(feature = "v12")]
|
||||||
pub struct RuntimeMetadataV12 {
|
pub struct RuntimeMetadataV12 {
|
||||||
/// Metadata of all the modules.
|
/// Metadata of all the modules.
|
||||||
pub modules: DecodeDifferentArray<ModuleMetadata>,
|
pub modules: DecodeDifferentArray<ModuleMetadata>,
|
||||||
@@ -399,8 +429,16 @@ pub struct RuntimeMetadataV12 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// The latest version of the metadata.
|
/// The latest version of the metadata.
|
||||||
|
#[cfg(feature = "v12")]
|
||||||
pub type RuntimeMetadataLastVersion = RuntimeMetadataV12;
|
pub type RuntimeMetadataLastVersion = RuntimeMetadataV12;
|
||||||
|
|
||||||
|
#[cfg(feature = "v12")]
|
||||||
|
impl Into<RuntimeMetadataPrefixed> for RuntimeMetadataLastVersion {
|
||||||
|
fn into(self) -> RuntimeMetadataPrefixed {
|
||||||
|
RuntimeMetadataPrefixed(META_RESERVED, RuntimeMetadata::V12(self))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// All metadata about an runtime module.
|
/// All metadata about an runtime module.
|
||||||
#[derive(Clone, PartialEq, Eq, Encode)]
|
#[derive(Clone, PartialEq, Eq, Encode)]
|
||||||
#[cfg_attr(feature = "std", derive(Decode, Serialize, Debug))]
|
#[cfg_attr(feature = "std", derive(Decode, Serialize, Debug))]
|
||||||
@@ -424,9 +462,3 @@ impl Into<Vec<u8>> for RuntimeMetadataPrefixed {
|
|||||||
self.encode()
|
self.encode()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Into<RuntimeMetadataPrefixed> for RuntimeMetadataLastVersion {
|
|
||||||
fn into(self) -> RuntimeMetadataPrefixed {
|
|
||||||
RuntimeMetadataPrefixed(META_RESERVED, RuntimeMetadata::V12(self))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
hard_tabs = true
|
||||||
Reference in New Issue
Block a user