disambiguate Config trait in #[pallet::constant] (#9942)

* fix: use fully qualified syntax to disambiguate

* add instance generic

* line length < 100
This commit is contained in:
Albrecht
2021-10-06 11:22:49 +02:00
committed by GitHub
parent 6f40318ca2
commit 12e9e7ceb3
@@ -35,6 +35,7 @@ pub fn expand_constants(def: &mut Def) -> proc_macro2::TokenStream {
let type_impl_gen = &def.type_impl_generics(proc_macro2::Span::call_site());
let type_use_gen = &def.type_use_generics(proc_macro2::Span::call_site());
let pallet_ident = &def.pallet_struct.pallet;
let trait_use_gen = &def.trait_use_generics(proc_macro2::Span::call_site());
let mut where_clauses = vec![&def.config.where_clause];
where_clauses.extend(def.extra_constants.iter().map(|d| &d.where_clause));
@@ -49,7 +50,8 @@ pub fn expand_constants(def: &mut Def) -> proc_macro2::TokenStream {
type_: const_.type_.clone(),
doc: const_.doc.clone(),
default_byte_impl: quote::quote!(
let value = <T::#ident as #frame_support::traits::Get<#const_type>>::get();
let value = <<T as Config#trait_use_gen>::#ident as
#frame_support::traits::Get<#const_type>>::get();
#frame_support::codec::Encode::encode(&value)
),
}