From 91f0878edcd2c8016ddc3dd27591d57ea10e6b56 Mon Sep 17 00:00:00 2001 From: Leo dev Date: Fri, 30 Jan 2026 21:14:41 +0100 Subject: [PATCH] rsx params --- macros/src/emit.rs | 4 ++-- macros/src/parse.rs | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/macros/src/emit.rs b/macros/src/emit.rs index e47f393..64eec83 100644 --- a/macros/src/emit.rs +++ b/macros/src/emit.rs @@ -125,8 +125,8 @@ fn emit_node(node: &RsxNode) -> TokenStream { })); }, - RsxNode::Component(name) => quote! { - scope.child(#name, None); + RsxNode::Component(expr) => quote! { + scope.child(#expr, None); }, RsxNode::Mount(m) => quote! { diff --git a/macros/src/parse.rs b/macros/src/parse.rs index fc4ee19..d97c6f7 100644 --- a/macros/src/parse.rs +++ b/macros/src/parse.rs @@ -20,7 +20,7 @@ impl Parse for RsxRoot { pub enum RsxNode { Text(LitStr), - Component(Ident), + Component(Expr), Mount(Ident), If { deps: Vec, @@ -116,6 +116,7 @@ impl Parse for RsxNode { return Ok(RsxNode::Text(input.parse()?)); } + // Component: path (e.g. HelloWorld) or struct init (e.g. HelloWorld { t: 10 }) Ok(RsxNode::Component(input.parse()?)) } }