Синтаксис языков программирования. Нисходящий синтаксический анализ, процедурная и автоматные реализации, страница 4

 Левая часть 

 Правая часть 

 Примечание 

 SG 

 OneClass 

 NextClass 

 Main 

 OneClass 

 class 

 id 

 { 

 Idents 

 Funcs 

 } 

 NextClass 

 OneClass 

 NextClass 

 NextClass 

 Main 

 main 

 ( 

 ) 

 { 

 MainOp`s 

 } 

 метод main

 Idents 

 Ident 

 Idents 

 Idents 

 Funcs 

 OneFunc 

 NextFunc 

 MainOp`s 

 MainOp 

 NMainOp 

 Ident 

 Type 

 id 

 ; 

 объявление переменноой или поля класса

 OneFunc 

 id 

 ( 

 Par`s 

 ) 

 { 

 Op`s 

 } 

 функция. параметров может не быть. а оператор хотя бы один

 NextFunc 

 OneFunc 

 NextFunc 

 NextFunc 

 MainOp 

 Ident 

 MainOp 

 delete 

 id 

 ; 

 уничтожение экземпляра

 MainOp 

 id 

 DOp 

 ; 

 NMainOp 

 MainOp 

 NMainOp 

 NMainOp 

 Type 

 integer 

 Type 

 float 

 Type 

 char 

 Type 

 bool 

 Par`s 

 Par 

 NextP 

 Par`s 

 Op`s 

 OneOp 

 NextOp 

 DOp 

 zn1 

 CM 

 оператор присваивания

 DOp 

 . 

 id 

 ( 

 PPP 

 ) 

 вызов метода для опред. экземпляра

 Par 

 Type 

 id 

 NextP 

 , 

 Par 

 NextP 

 NextP 

 OneOp 

 id 

 zn1 

 Exp 

 ; 

 оператор присваивания

 OneOp 

 when 

 Exp 

 then 

 OB 

 ELSE 

 условный оператор

 OneOp 

 Type 

 id 

 Zn 

 ; 

 объявление переменной с возможностью идентификации значения

 OneOp 

 select 

 Exp 

 case 

 Exp 

 OB 

 NS 

 end 

 переключатель

 OneOp 

 repeat 

 OB 

 when 

 Exp 

 оператор цикла

 OneOp 

 return 

 Exp 

 ; 

 возврат значения

 NextOp 

 OneOp 

 NextOp 

 NextOp 

 CM 

 new 

 id 

 ( 

 PPP 

 ) 

 создание экземпляра

 CM 

 id 

 . 

 id 

 ( 

 PPP 

 ) 

 вызов метода

 PPP 

 Exp 

 NPPP 

 PPP 

 Exp 

 A 

 B 

 OB 

 OneOp 

 OB 

 { 

 Op`s 

 } 

 ELSE 

 else 

 OB 

 ELSE 

 else 

 Zn 

 zn1 

 Exp 

 Zn 

 NS 

 case 

 Exp 

 OB 

 NS 

 NS 

 NPPP 

 , 

 Exp 

 NPPP 

 NPPP 

 A 

 C 

 D 

 B 

 zn5 

 Exp 

 и, или

 B 

 C 

 E 

 F 

 D 

 zn6 

 A 

 сравнения

 D 

 zn1 

 A 

 D 

 E 

 G 

 H 

 F 

 zn3 

 C 

 F 

 G 

 id 

 RF 

 G 

 const1 

 G 

 const2 

 G 

 ( 

 Exp 

 ) 

 G 

 const3 

 G 

 const4 

 H 

 zn4 

 E 

 H 

 RF 

 ( 

 PPP 

 ) 

 RF