{%- if f.is_message %}
type Field{{ f.number }}MessageType<'this> where Self: 'this = ();
{%- endif %}

{%- if f.is_repeated %}
type Field{{ f.number }}RepeatedType<'this> where Self: 'this = ::puroro::internal::impls::empty::EmptyRepeatedField<{{ f.trait_scalar_getter_type }}>;
fn {{ f.ident }}<'this>(&'this self) -> Self::Field{{ f.number }}RepeatedType<'this> {
    ::puroro::internal::impls::empty::EmptyRepeatedField::new()
}
{%- endif %}