1
/* Описание грамматики языка сценариев (ЯС)
3
Базовый вариант без списковых выражений и возвратов, объявления структур, функций и т.д.
8
main список_операторов_ЯС;
10
тип = ID { ast.addNode(ast.op.Statement_Type, 0); }
14
= объявление_перечисления
15
= объявление_интерфейса
16
= объявление_структуры
20
объявление_перечисления
21
= "enum" ID "{" список_перечислений "}" ";"
25
= элемент_перечисления
26
= список_перечислений "," элемент_перечисления
31
= ID "=" значение_перечисления
42
= "interface" ID тело_интерфейса ";"
43
= "interface" ID наследование тело_интерфейса ";"
47
= ":" список_интерфейсов
52
= список_интерфейсов "," ID
56
= "{" перечень_методов_интерфейса "}"
59
перечень_методов_интерфейса
61
= перечень_методов_интерфейса объявление_функции
65
= "struct" ID "{" перечень_членов_структуры "}" ";"
68
перечень_членов_структуры
69
= объявление_переменной
70
= перечень_членов_структуры объявление_переменной
74
= "class" ID тело_класса ";"
75
= "class" ID наследование тело_класса ";"
79
= "{" перечень_членов_класса "}"
83
= объявление_переменной
84
= перечень_членов_класса объявление_переменной
86
= перечень_членов_класса определение_функции
87
// = определение_конструктора
88
// = перечень_членов_класса определение_конструктора
91
//определение_конструктора
92
// = имя_функции1 список_аргументов тело_функции