mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-24 06:24:35 +00:00
25 lines
378 B
Rust
25 lines
378 B
Rust
// check-pass
|
|
#![allow(dead_code)]
|
|
struct Foo<T>(T);
|
|
|
|
struct IntoIter<T>(T);
|
|
|
|
impl<'a, T: 'a> Iterator for IntoIter<T> {
|
|
type Item = ();
|
|
|
|
fn next(&mut self) -> Option<()> {
|
|
None
|
|
}
|
|
}
|
|
|
|
impl<T> IntoIterator for Foo<T> {
|
|
type Item = ();
|
|
type IntoIter = IntoIter<T>;
|
|
|
|
fn into_iter(self) -> IntoIter<T> {
|
|
IntoIter(self.0)
|
|
}
|
|
}
|
|
|
|
fn main() {}
|