macro_rules! generate_functions {
    (no_args: $($func_name:ident),*) => { ... };
    (one_col: $($func_name:ident),*) => { ... };
    (two_cols: $($func_name:ident),*) => { ... };
    (multiple_cols: $($func_name:ident),*) => { ... };
}