pub fn function<'a>(expr: &'a Expression) -> Option<(&'a str, &'a [Argument])>