[][src]Function libimagutil::variants::generate_variants

pub fn generate_variants<A, B, C, F, I>(base: &A, modders: I, f: &F) -> Vec<C> where
    F: Fn(&A, B) -> C,
    I: Iterator<Item = B>, 

Generate variants of a base value by applying parts

Example:

use libimagutil::variants::generate_variants;
    let base = 1;
    let vars = vec![0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
    let res = generate_variants(&base, vars.iter(), &|base, var| base + var);
    assert_eq!(res, vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11])