From 24bca456124349571512f68508084cc0c70a4bca Mon Sep 17 00:00:00 2001 From: Jonathan Kelley Date: Sat, 9 Apr 2022 19:41:29 -0400 Subject: [PATCH] fix: inline props should look for attributes --- packages/core-macro/src/inlineprops.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/core-macro/src/inlineprops.rs b/packages/core-macro/src/inlineprops.rs index a0f12706a..782d13a48 100644 --- a/packages/core-macro/src/inlineprops.rs +++ b/packages/core-macro/src/inlineprops.rs @@ -7,6 +7,7 @@ use syn::{ }; pub struct InlinePropsBody { + pub attrs: Vec, pub vis: syn::Visibility, pub fn_token: Token![fn], pub ident: Ident, @@ -22,6 +23,7 @@ pub struct InlinePropsBody { /// The custom rusty variant of parsing rsx! impl Parse for InlinePropsBody { fn parse(input: ParseStream) -> Result { + let attrs: Vec = input.call(Attribute::parse_outer)?; let vis: Visibility = input.parse()?; let fn_token = input.parse()?; @@ -57,6 +59,7 @@ impl Parse for InlinePropsBody { output, block, cx_token, + attrs, }) } } @@ -72,6 +75,7 @@ impl ToTokens for InlinePropsBody { output, block, cx_token, + attrs, .. } = self; @@ -136,6 +140,7 @@ impl ToTokens for InlinePropsBody { #(#fields),* } + #(#attrs)* #vis fn #ident #fn_generics (#cx_token: Scope<#scope_lifetime #struct_name #generics>) #output { let #struct_name { #(#field_names),* } = &cx.props; #block