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 parse JSON string in Rust?
- How to get a capture group using Rust regex?
- How to match the end of a line in a Rust regex?
- How to get the last element of a Rust slice?
- How to convert struct to bytes in Rust
- How to use regex with bytes in Rust?
- How to replace a capture group using Rust regex?
- How to match all using regex in Rust?
- How to calculate the inverse of a matrix in Rust?
See more codes...