macro_rules! codegen_self_pointer_type {
{
struct: (),
ownership: $ownership:tt,
type: $type:tt
} => { ... };
{
struct: $struct:tt,
ownership: { $($ownership:tt)* },
type: $type:tt
} => { ... };
}