construct_runtime!: Support parsing struct Runtime (#11932)

* construct_runtime!: Support parsing `struct Runtime`

* FMT
This commit is contained in:
Bastian Köcher
2022-07-29 10:22:49 +01:00
committed by GitHub
parent c4b607d4c9
commit 4b3aced87e
3 changed files with 12 additions and 4 deletions
@@ -272,10 +272,11 @@ impl pallet_template::Config for Runtime {
// Create the runtime by composing the FRAME pallets that were previously configured.
construct_runtime!(
pub enum Runtime where
pub struct Runtime
where
Block = Block,
NodeBlock = opaque::Block,
UncheckedExtrinsic = UncheckedExtrinsic
UncheckedExtrinsic = UncheckedExtrinsic,
{
System: frame_system,
RandomnessCollectiveFlip: pallet_randomness_collective_flip,
+1 -1
View File
@@ -34,7 +34,7 @@ type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic<Test>;
type Block = frame_system::mocking::MockBlock<Test>;
frame_support::construct_runtime!(
pub enum Test where
pub struct Test where
Block = Block,
NodeBlock = Block,
UncheckedExtrinsic = UncheckedExtrinsic,
@@ -73,7 +73,14 @@ pub struct ExplicitRuntimeDeclaration {
impl Parse for RuntimeDeclaration {
fn parse(input: ParseStream) -> Result<Self> {
input.parse::<Token![pub]>()?;
input.parse::<Token![enum]>()?;
// Support either `enum` or `struct`.
if input.peek(Token![struct]) {
input.parse::<Token![struct]>()?;
} else {
input.parse::<Token![enum]>()?;
}
let name = input.parse::<syn::Ident>()?;
let where_section = input.parse()?;
let pallets =