From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <yew-devel-bounces@lists.proxmox.com> Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id B9D0F1FF15E for <inbox@lore.proxmox.com>; Tue, 14 Jan 2025 12:45:45 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id B82C21481A; Tue, 14 Jan 2025 12:45:28 +0100 (CET) From: Shannon Sterz <s.sterz@proxmox.com> To: yew-devel@lists.proxmox.com Date: Tue, 14 Jan 2025 12:44:38 +0100 Message-Id: <20250114114440.177877-3-s.sterz@proxmox.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250114114440.177877-1-s.sterz@proxmox.com> References: <20250114114440.177877-1-s.sterz@proxmox.com> MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.081 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment PROLO_LEO1 0.1 Meta Catches all Leo drug variations so far SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [yew-devel] [PATCH yew-widget-toolkit 2/4] macros: update no_clone test to adjust to new additional traits X-BeenThere: yew-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Yew framework devel list at Proxmox <yew-devel.lists.proxmox.com> List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/yew-devel>, <mailto:yew-devel-request@lists.proxmox.com?subject=unsubscribe> List-Archive: <http://lists.proxmox.com/pipermail/yew-devel/> List-Post: <mailto:yew-devel@lists.proxmox.com> List-Help: <mailto:yew-devel-request@lists.proxmox.com?subject=help> List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel>, <mailto:yew-devel-request@lists.proxmox.com?subject=subscribe> Reply-To: Yew framework devel list at Proxmox <yew-devel@lists.proxmox.com> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: yew-devel-bounces@lists.proxmox.com Sender: "yew-devel" <yew-devel-bounces@lists.proxmox.com> Signed-off-by: Shannon Sterz <s.sterz@proxmox.com> --- pwt-macros/tests/widget/no_clone.rs | 13 +++++++++++++ pwt-macros/tests/widget/no_clone.stderr | 8 ++++---- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/pwt-macros/tests/widget/no_clone.rs b/pwt-macros/tests/widget/no_clone.rs index 72217833..d0fbcbe6 100644 --- a/pwt-macros/tests/widget/no_clone.rs +++ b/pwt-macros/tests/widget/no_clone.rs @@ -11,9 +11,21 @@ mod props { } pub trait CssPaddingBuilder {} pub trait CssMarginBuilder {} + pub trait AsCssStylesMut { + fn as_css_styles_mut(&mut self) -> &mut CssStyles; + } + + /// Holds the CSS styles to set on elements + #[derive(Clone, Default, Debug, PartialEq)] + pub struct CssStyles {} + + pub trait WidgetStyleBuilder {} + pub trait WidgetBuilder: Sized { fn as_std_props_mut(&mut self) -> &mut WidgetStdProps; + fn as_std_props(&self) -> &WidgetStdProps; } + pub trait AsClassesMut { fn as_classes_mut(&mut self) -> &mut Classes; } @@ -23,6 +35,7 @@ mod props { pub struct WidgetStdProps { pub key: Option<Key>, pub class: Classes, + pub styles: CssStyles, } #[derive(PartialEq, Default, Clone)] pub struct ListenersWrapper {} diff --git a/pwt-macros/tests/widget/no_clone.stderr b/pwt-macros/tests/widget/no_clone.stderr index 28b52008..9f6f296c 100644 --- a/pwt-macros/tests/widget/no_clone.stderr +++ b/pwt-macros/tests/widget/no_clone.stderr @@ -1,12 +1,12 @@ error[E0277]: the trait bound `Foo: Clone` is not satisfied - --> tests/widget/no_clone.rs:34:1 + --> tests/widget/no_clone.rs:47:1 | -34 | #[widget(pwt=crate, comp=FooComp, @input, @element)] +47 | #[widget(pwt=crate, comp=FooComp, @input, @element)] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `Foo` | = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) help: consider annotating `Foo` with `#[derive(Clone)]` | -34 + #[derive(Clone)] -35 | #[widget(pwt=crate, comp=FooComp, @input, @element)] +47 + #[derive(Clone)] +48 | #[widget(pwt=crate, comp=FooComp, @input, @element)] | -- 2.39.5 _______________________________________________ yew-devel mailing list yew-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel