Skip to content

Latest commit

 

History

History
43 lines (35 loc) · 2.45 KB

grammar.md

File metadata and controls

43 lines (35 loc) · 2.45 KB
type layout title url
doc
reference
Грамматика

Грамматика

Предисловие

Этот раздел неофициально объясняет грамматические обозначения, используемые ниже.

Символы и наименования

Терминальные символьные имена начинаются с прописной буквы, например SimpleName . Нетерминальные символьные имена начинаются с строчной буквы, например kotlinFile . Каждое производство начинается с двоеточием ( : ). Определения символов могут иметь множество производств и заканчиваются точкой с запятой ( ; ). Определения символов могут быть добавлены с атрибутами , например, startатрибут обозначает символ начала.

РБНФ выражения

Оператор | означает альтернативу. Оператор * означает повторение (ноль или больше). Оператор + означает повторение (один или больше). Оператор ? означает вариант (ноль или один). альфа{бета} означает непустой бета-разделенный список альф. Оператор ++ значит что ни пробел ни комментарий не разрешен между операндами.