Skip to content

Instantly share code, notes, and snippets.

@singpolyma
Last active August 29, 2015 14:26
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 singpolyma/b6e89d5adef80b66333c to your computer and use it in GitHub Desktop.
Save singpolyma/b6e89d5adef80b66333c to your computer and use it in GitHub Desktop.
Mutable variable swap in rust
// This allows you to consume a variable ane replace it with a new value
fn option_map_mut<T, F: FnOnce(T) -> T>(x: &mut Option<T>, f: F) {
match *x {
Some(_) => {
*x = Some(f(x.take().unwrap()));
}
None => {}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment