rustHow to yield return in Rust?
Rust provides the yield
keyword to allow a function to return multiple values. It is used to create an iterator that can be used to iterate over a collection of values.
Example code
fn main() {
let mut iter = yield_return();
for i in iter {
println!("{}", i);
}
}
fn yield_return() -> impl Iterator<Item = i32> {
let mut i = 0;
loop {
yield i;
i += 1;
}
}
Output example
0
1
2
3
4
...
Code explanation
fn main()
: This is the main function that will be called when the program is executed.let mut iter = yield_return()
: This creates an iterator from theyield_return
function.for i in iter
: This loop iterates over the values returned by theyield_return
function.yield i
: This is theyield
keyword, which returns the value ofi
to the iterator.i += 1
: This increments the value ofi
for the next iteration.
Helpful links
Related
More of Rust
- How to use non-capturing groups in Rust regex?
- How to use Unicode in a regex in Rust?
- How to replace a capture group using Rust regex?
- How to match whitespace with a regex in Rust?
- How to replace all matches using Rust regex?
- How to split a string with Rust regex?
- How to generate struct from json in Rust
- How to replace strings using Rust regex?
- Example of yield_now in Rust?
- How to get pointer to variable in Rust
See more codes...