I have a type called ConnectionBundle that can be constructed from different sets of data. The following impls work:
impl From<(usize, Sample, NodeOutput)> for ConnectionBundle {...}
impl From<(&'static str, Sample, NodeOutput)> for ConnectionBundle {...}
impl From<(&'static str, Sample)> for ConnectionBundle {...}
But as soon as I put these inside another type like an array or a Vec I get an error like "note: multiple impls satisfying ConnectionBundle: From<[_; 1]> found"
impl<const N: usize> From<[(&'static str, Sample); N]> for ConnectionBundle {...}
impl<const N: usize> From<[(usize, Sample); N]> for ConnectionBundle {...}
impl<const N: usize> From<[(&'static str, Sample, NodeOutput); N]> for ConnectionBundle {...}
Is there a way around this to allow collections of different types as a function parameter using impl Into<ConnectionBundle>?