macro_rules! expand_custom_direct_object {
    ($(impl Custom for $fname:ident ($func:ident, $extract:ident, $default:expr))*) => { ... };
}