today trait impl conflicts informed me that `&mut T` implements Iterator<Item = T>
-
Show this thread
-
looking at std I can see an `impl Iterator for &mut I where I: Iterator` but what I'm getting is a conflict between: impl Input<i64> for &mut i64 impl<T> Input<T> for I where I: Iterator<Item = T>
2 replies 0 retweets 1 likeShow this thread -
it's entirely possible I don't need that &mut i64 impl, that type makes more sense for Output
1 reply 0 retweets 0 likesShow this thread -
ok apparently these conflict too: impl<T> Input<T> for &mut Vec<T> impl<T, I> Input<T> for I where I: Iterator<Item = T> but Vec<T> does not impl Iterator?! it does implement IntoIterator though, is that it?
2 replies 0 retweets 0 likesShow this thread
Yeah, this is an intentional design of coherence in Rust. You're not allowed to rely on the fact that a type *doesn't* impl some trait unless either the type or trait are local to your crate. Otherwise adding any impl would be a major breaking change.
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.