@@ -36,13 +36,13 @@ fn on_struct(inp: &mut syn::DeriveInput) -> syn::Result<proc_macro2::TokenStream
3636 let attrs = Attributes :: try_from_iter ( Level :: Struct , inp. attrs . iter ( ) ) ?;
3737 let encoding = attrs. encoding ( ) . unwrap_or_default ( ) ;
3838 let fields = Fields :: try_from ( name. span ( ) , data. fields . iter ( ) , & [ & attrs] ) ?;
39- let blacklist = Blacklist :: new ( Mode :: Encode , & fields, & inp. generics ) ;
39+ let blacklist = Blacklist :: full ( Mode :: Encode , & fields, & inp. generics ) ;
4040
41- let bound = gen_encode_bound ( ) ? ;
41+ let bound = gen_encode_bound ( ) ;
4242 let params = inp. generics . type_params_mut ( ) ;
4343 add_bound_to_type_params ( Mode :: Encode , bound, params, & blacklist, fields. fields ( ) . attributes ( ) ) ;
4444
45- let generics = add_typeparam ( & inp. generics , gen_ctx_param ( ) ? , attrs. context_bound ( ) ) ;
45+ let generics = add_typeparam ( & inp. generics , gen_ctx_param ( ) , attrs. context_bound ( ) ) ;
4646 let impl_generics = generics. split_for_impl ( ) . 0 ;
4747
4848 let ( _, typ_generics, where_clause) = inp. generics . split_for_impl ( ) ;
@@ -96,7 +96,7 @@ fn on_enum(inp: &mut syn::DeriveInput) -> syn::Result<proc_macro2::TokenStream>
9696
9797 for ( ( var, idx) , attrs) in data. variants . iter ( ) . zip ( variants. indices . iter ( ) ) . zip ( & variants. attrs ) {
9898 let fields = Fields :: try_from ( var. ident . span ( ) , var. fields . iter ( ) , & [ attrs, & enum_attrs] ) ?;
99- blacklist. merge ( & fields, & inp. generics , Blacklist :: new ( Mode :: Encode , & fields, & inp. generics ) ) ;
99+ blacklist. merge ( & fields, & inp. generics , Blacklist :: full ( Mode :: Encode , & fields, & inp. generics ) ) ;
100100 let con = & var. ident ;
101101 let encoding = attrs. encoding ( ) . unwrap_or ( enum_encoding) ;
102102 let tag = encode_tag ( attrs) ;
@@ -205,12 +205,12 @@ fn on_enum(inp: &mut syn::DeriveInput) -> syn::Result<proc_macro2::TokenStream>
205205 }
206206
207207 {
208- let bound = gen_encode_bound ( ) ? ;
208+ let bound = gen_encode_bound ( ) ;
209209 let params = inp. generics . type_params_mut ( ) ;
210210 add_bound_to_type_params ( Mode :: Encode , bound, params, & blacklist, & field_attrs) ;
211211 }
212212
213- let generics = add_typeparam ( & inp. generics , gen_ctx_param ( ) ? , enum_attrs. context_bound ( ) ) ;
213+ let generics = add_typeparam ( & inp. generics , gen_ctx_param ( ) , enum_attrs. context_bound ( ) ) ;
214214 let impl_generics = generics. split_for_impl ( ) . 0 ;
215215
216216 let ( _, typ_generics, where_clause) = inp. generics . split_for_impl ( ) ;
@@ -632,8 +632,8 @@ fn make_transparent_impl
632632 } )
633633}
634634
635- fn gen_encode_bound ( ) -> syn:: Result < syn :: TypeParamBound > {
636- syn:: parse_str ( " minicbor::Encode<Ctx>" )
635+ fn gen_encode_bound ( ) -> syn:: TypeParamBound {
636+ syn:: parse_quote! ( minicbor:: Encode <Ctx >)
637637}
638638
639639pub ( crate ) fn is_nil ( ty : & syn:: Type , codec : Option < & CustomCodec > ) -> proc_macro2:: TokenStream {
0 commit comments