Проект находится на начальном этапе разработки, вследствие чего большинство функций не реализованы, а уже реализованные часто и сильно меняются.
Ниже описан прогресс реализации проекта:
- Парсер
- Базовый синтаксис (идентификаторы, строки, keywords и т.д)
- Захват комментариев (
// text
и/* text */
) - Сервисы (
service
)- Базовые RPC (
rpc Ident (Request) returns (Reply)
) - Потоки (
rpc Ident (stream Request) returns (stream Reply)
)
- Базовые RPC (
- Сообщения (
message
)- Поля
- Модификаторы (
optional
,required
,repeated
) - Списки ключ-значение (
map
)
- Модификаторы (
- Вложенные сообщения, перечисления и расширения
- Расширения (
extensions
) - Резервирование индексов и идентификаторов (
reserved
) - Варианты (
oneof
)
- Поля
- Перечисления (
enum
) - Расширения (
extend
) - Опции (
option
)- В виде строки (
option key = value;
) - В виде списка (
[ key = value ]
) - Созданные вручную (
[ (.own) = value ]
) - JSON-Like структуры (
[ key = { key: value } ]
)
- В виде строки (
- Валидатор
- TODO
- Редактор
- TODO