Skip to content

Instantly share code, notes, and snippets.

@bstrie
Created February 7, 2014 13:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bstrie/8862964 to your computer and use it in GitHub Desktop.
Save bstrie/8862964 to your computer and use it in GitHub Desktop.
use std::iter::Unfold;
fn next(arg: &mut (int, int)) -> Option<int> {
let (lo, hi) = *arg;
*arg = (hi, lo + hi);
Some(lo)
}
fn main() {
for fib in Unfold::new((0,1), next).take(20) {
println!("{}", fib);
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment