blob: cbb6b398e015b3140ec2dc1f259f3f15c09585be (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
// run-pass
trait IterExt: Sized + Iterator {
fn default_for_size<const N: usize>(self) -> [Self::Item; N]
where
[Self::Item; N]: Default,
{
Default::default()
}
}
impl<T: Iterator> IterExt for T {}
fn main(){
const N: usize = 10;
let arr = (0u32..10).default_for_size::<N>();
assert_eq!(arr, [0; 10]);
}
|