88
Приложение A. Синтаксис языка UniPascal
71:
RepetativeStat |
71:
WithStatement .
72: CompoundStatement =
'begin' Statement { ';' Statement } 'end'.
73: IfStatement =
'if' Expression
73:
'then' Statement [
73:
'else' Statement ].
74: CaseStatement =
'case' Selector 'of'
74:
CnstList ':' Statement {';'
74:
CnstList ':' Statement } [';'] [
74:
'else' ':' Statement { ';'
74:
Statement } [';'] ]
74:
'end'.
75: Selector =
Expression.
76: CnstList =
Constant {',' Constant }.
77: RepetativeStat =
ForStatement |
77:
WhileStatement |
77:
RepeatStatement.
78: WhileStatement =
'while' Expression 'do' Statement.
79: RepeatStatement =
'repeat' Statement {';'
79:
Statement }
79:
'until' Expression.
80: ForStatement =
'for' Ident ':=' Expression ('to' |
80:
'downto') Expression 'do'
80:
Statement.
81: WithStatement =
'with' VariableRef {',' VariableRef } 'do'
81:
Statement.
82: ProcDeclaration =
ProcHeading ';' (Block | Directive) ';'.
83: ProcHeading =
['segment']'procedure' Ident[FormalPList].
84: Directive =
'forward' | 'external' |
84:
('code' IntConst {',' IntConst}).
85: FuncDeclaration =
FuncHeading ';' (Block | Directive) ';'.
86: FuncHeading =
['segment']
86:
'function' Ident[FormalPList]':'TypeIdent.
87: FormalPList =
'(' [ Parameter { ',' Parameter } ] ')'.
88: Parameter =
(['var'|'const'] IdentList ':' TypeIdent)|
88:
('var' | 'const') IdentList.
89: ActualParamList =
['(' [Expression {',' Expression} ] ')'].
90: Unit =
'unit'Ident['('IntConst')']';' 'interface'
90:
InterfacePart (
90:
'implementation'
90:
ImplmntPart |
90:
'end') '.'.
91: InterfaceUnit =
'interface' 'unit'Ident['('IntConst')']';'
91:
InterfacePart
91:
'end' '.'.
<< < GO > >>
Вернуться к началу сайта