Questo articolo discuterà gli iteratori in ruggine, come sono implementati e come usarli.
Rust iterator
Un iteratore si riferisce a una funzione che consente di "attraversare" una sequenza di elementi. Come accennato, potrebbe essere iterato su ogni elemento in un array.
Gli iteratori in ruggine sono pigri. Ciò significa che l'iteratore non ha bisogno di sapere in anticipo il numero di elementi che "attraverserà". Determina l'elemento successivo se richiesto.
Tratto di iteratore ruggine
Gli iteratori sono implementati dal tratto iteratore definito nella libreria standard Rust. Ciò significa che possiamo utilizzare il tipo di iteratore su tipi primitivi o una raccolta personalizzata fornendo il tipo a tratto e il metodo successivo.
La sintassi per il tratto iteratore è come mostrato:
pub trait iteratorPer implementare il tratto iteratore su tipi personalizzati, dobbiamo definire il metodo successivo, che restituisce un elemento alla volta avvolto come alcuni () o nessuno quando l'iterazione è completa.
Considera il seguente codice che implementa un iteratore per una struttura personalizzata:
StructCountQui, abbiamo una struttura che ha un valore di i32. Il prossimo è un costruttore di conteggio per la struttura. Implettiamo anche un iteratore per la struttura usando la funzione successiva. Questo restituisce l'elemento successivo nella sequenza.
Nota: il valore di ritorno è l'opzione.
Questo ci consente di restituire nessuno se non c'è alcun articolo.
Quindi, possiamo usare questo iteratore come:
Per i in count :: new ()Conclusione
Questo articolo ha discusso della natura dell'iteratore ruggine e della sua importanza. Inoltre, abbiamo approfondito il tratto dell'iteratore Rust e i metodi per implementare l'iteratore Rust in tipi personalizzati. Speriamo che tu abbia trovato questo articolo utile. Controlla gli altri articoli di suggerimento Linux per ulteriori suggerimenti e informazioni.