Iterator
O trait Iterator
suporta a iteração sobre valores em uma coleção. Ele requer um método next
e fornece muitos métodos. Muitos tipos da biblioteca padrão implementam Iterator
, e você também pode implementá-lo:
Speaker Notes
This slide should take about 5 minutes.
-
O trait
Iterator
implementa muitas operações comuns de programação funcional sobre coleções (por exemplo,map
,filter
,reduce
, etc). Este é o trait onde você pode encontrar toda a documentação sobre eles. Em Rust, essas funções devem produzir o código tão eficiente quanto as implementações imperativas equivalentes. -
IntoIterator
é o trait que faz os laçosfor
funcionarem. Ele é implementado por tipos de coleção comoVec<T>
e referências a eles como&Vec<T>
e&[T]
. Intervalos (ranges) também o implementam. É por isso que você pode iterar sobre um vetor comfor i in some_vec { .. }
, massome_vec.next()
não existe.