Lazy Sequenzerstellung in Rust
Wie kann ich erstellen, was andere Sprachen eine Lazy Sequence oder eine "Generator" -Funktion nennen?
In Python kann ich verwendenyield
wie im folgenden Beispiel (aus Pythons Dokumenten), um eine Sequenz zu generieren, die auf eine Weise iteriert werden kann, die nicht den Speicher einer Zwischenliste verwendet:
# a generator that yields items instead of returning a list
def firstn(n):
num = 0
while num < n:
yield num
num += 1
sum_of_first_n = sum(firstn(1000000))
Wie kann ich etwas Ähnliches in Rust machen?