diff --git a/crates/bevy_ecs/src/system/combinator.rs b/crates/bevy_ecs/src/system/combinator.rs index f97680d93d..2d037eef16 100644 --- a/crates/bevy_ecs/src/system/combinator.rs +++ b/crates/bevy_ecs/src/system/combinator.rs @@ -252,6 +252,7 @@ where } /// An [`IntoSystem`] creating an instance of [`PipeSystem`]. +#[derive(Clone)] pub struct IntoPipeSystem { a: A, b: B, @@ -285,17 +286,6 @@ where } } -impl Clone for IntoPipeSystem -where - A: Clone, - B: Clone, -{ - /// Clone the piped system. The cloned instance must be `.initialize()`d before it can run. - fn clone(&self) -> Self { - IntoPipeSystem::new(self.a.clone(), self.b.clone()) - } -} - /// A [`System`] created by piping the output of the first system into the input of the second. /// /// This can be repeated indefinitely, but system pipes cannot branch: the output is consumed by the receiving system.