Trait ref_map::OptionRefMap[][src]

pub trait OptionRefMap<'o, T: 'o> {
    fn ref_map<U, F>(&'o self, f: F) -> Option<U>
        F: FnOnce(&'o T) -> U
; }
Expand description

Adds the ref_map() extension method onto Option.

The ref_map() method borrows the internal object and passes it to a closure to be mapped in some way. This allows convenient use of as_* type methods or calculations which require the borrowed internal value.

use ref_map::*;

let values = Some(vec![4, 7, 9, 5, 6]);

let filtered = values.ref_map(|v| &v[3..]);
let answer = &[5, 6];

assert_eq!(filtered, Some(&answer[..]));

See the crate-level documentation for more information.

Required methods

Borrows the internal value and maps it using the provided closure.

Implementations on Foreign Types