Corso di Raku / Programmazione funzionale, concorrente, reattiva e web / Programmazione funzionale / Iteratori / Il protocollo degli iteratori

Quiz — Il protocollo degli iteratori

Quando un iteratore non ha più valori da dare, che cosa restituisce pull-one, e come lo metti alla prova?

1IterationEnd, messo alla prova con =:=
0Nil, messo alla prova con .defined
0un elenco vuoto (), messo alla prova con ==
00, messo alla prova con =:=

Un iteratore esaurito restituisce l’oggetto sentinella IterationEnd. Poiché è un unico oggetto condiviso, lo controlli per identità con =:= (la prova dello stesso oggetto), non per valore o definitezza. Un ciclo for usa esattamente questo controllo per sapere quando fermarsi.

Il protocollo degli iteratori   |   Scrivere un iteratore