I asked why there wasn't an Iterable trait in rust, for just this reason, and 
was informed that the trait would require higher kinded types. I suspect that 
once those arrive (sometime after 1.0) that for loops may change to use 
Iterable instead of Iterator.

Sent from my iPhone

> On Jan 1, 2015, at 4:49 AM, Pim Schellart <[email protected]> wrote:
> 
> Dear Rust developers,
> 
> I have just started using rust so this is obviously a stupid question but I 
> was wondering why .iter() is needed when looping over the elements of an 
> array? In the following example:
> 
>    let a = [1i, 2i, 3i];
> 
>    for e in a.iter() {
>        println!("{}", e);
>    }
> 
> why can’t one simply write:
> 
>    let a = [1i, 2i, 3i];
> 
>    for e in a {
>        println!("{}", e);
>    }
> 
> and have the compiler figure out that ‘a’ has ‘.iter()’ and use it? The form 
> without .iter() just feels more natural to me in this case.
> Please feel free to tell me to RTFM or ask this question elsewhere.
> 
> Regards,
> 
> Pim
> _______________________________________________
> Rust-dev mailing list
> [email protected]
> https://mail.mozilla.org/listinfo/rust-dev
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to