1use bumpalo::Bump; 2 3pub fn compose<'a, A, B, C>( 4 mem: &'a Bump, 5 f: &'a (dyn Fn(&'a Bump, B) -> C + 'a), 6 g: &'a (dyn Fn(&'a Bump, A) -> B + 'a) 7) -> &'a (dyn Fn(&'a Bump, A) -> C + 'a) { 8 mem.alloc(|mem, val| f(mem, g(mem, val))) 9}