{% assign proto = site.data.protobuf[0] %} {% assign messages = proto.file_messages %} {% assign enums = proto.file_enums %} {% assign atomic_types = "bool,bytes,double,int32,string,uint32,uint64" | split: "," %}

Messages

Enums

Protobuf messages

{% for message in messages %}{% assign fields = message.message_fields %}
{{ message.message_name }}

{{ message.message_full_name }}

{% if message.message_description %}

{{ message.message_description }}

{% endif %}
{% if message.message_has_fields %}
Fields
{% for field in fields %} {% if atomic_types contains field.field_type %} {% else %} {% endif %} {% endfor %}
Name Type Label Default Description
{{ field.field_name }}{{ field.field_type }}{{ field.field_type }}{{ field.field_label }} {{ field.field_default_value }} {{ field.field_description }}
{% else %}

This message has no fields.

{% endif %}
{% endfor %}

Protobuf enums

{% for enum in enums %}{% assign values = enum.enum_values %}
{{ enum.enum_name }}
{% if enum.enum_description %}

{{ enum.enum_description | markdownify }}

{% endif %}
Enum values
{% for value in values %} {% endfor %}
Name Number Description
{{ value.value_name }} {{ value.value_number }} {{ value.value_description | markdownify }}
{% endfor %}