Page 16/24 Date 23.04.2018 Size 1.37 Mb. #46651
Statement ::= VariableDeclaration ; | EmbeddedStatement
Variable Declarations
VariableDeclaration ::= ( PrimaryPattern | var ) Identifier Constraint? ( = Expression )?
Empty Statements
EmbeddedStatement ::= ;
Break Statements
EmbeddedStatement ::= break ;
EmbeddedStatement ::= continue ;
Return Statements
EmbeddedStatement ::= return Expression? ;
Throw Statements
EmbeddedStatement ::= throw Expression ;
Assertion Statements
The optional expression after the comma, before the question mark (?) follows C# standards and its intended for documenting the reason of the assertion. The optional expression will be automatically converted to string and attached to the assertion.
EmbeddedStatement ::= assert Expression ( , Expression )? ;
EmbeddedStatement ::= dispatch TransmitExpression ;
TransmitExpression ::= Expression ( issues | accepts ) Expression
Start Statement
EmbeddedStatement ::= start Identifier InvokeArguments ;
Stop Statement
EmbeddedStatement ::= stop ;
EmbeddedStatement ::= reject ;
Delete Statement
EmbeddedStatement ::= delete Expression ;
Expression Statements
EmbeddedStatement ::= StatementExpression ;
StatementExpression ::=
NonInvokeStatementExpression = Expression
| NonInvokeStatementExpression + = Expression
| NonInvokeStatementExpression - = Expression
StatementExpression ::=
NonInvokeStatementExpression InvokeArguments
| NonInvokeStatementExpression ++
| NonInvokeStatementExpression –-
NonInvokeStatementExpression ::= ( NonInvokeStatementExpression[1] )
NonInvokeStatementExpression[1] ::=
ReferenceExpression
| PrimaryStatementExpression . Identifier
| PrimaryStatementExpression # Identifier
| PrimaryStatementExpression [ Expression ( , Expression )* ]
PrimaryStatementExpression ::=
NonInvokeStatementExpression
| PrimaryStatementExpression InvokeArguments
EmbeddedStatement ::= Block
Block ::= { Statement* }
For Statements
EmbeddedStatement ::=
for ( ForInitializer? ; Expression? ; ( StatementList , ? )? ) EmbeddedStatement
ForInitializer ::= VariableDeclaration ( , VariableDeclaration )* | StatementList , ?
StatementList ::= StatementExpression ( , StatementExpression )*
Foreach Statements
EmbeddedStatement ::= foreach Bindings EmbeddedStatement
EmbeddedStatement ::= if ( Expression ) EmbeddedStatement
( else EmbeddedStatement )?
While Statements
EmbeddedStatement ::= while ( Expression ) EmbeddedStatement
Do Statements
EmbeddedStatement ::= do EmbeddedStatement while ( Expression ) ;
Switch Statements
EmbeddedStatement ::= switch ( Expression ){ SwitchCase* DefaultCase? }
SwitchCase ::= case Pattern => Statement*
DefaultCase ::= default => Statement*
EmbeddedStatement ::= try Block ( catch ( Pattern ) Block )+ ( finally Block )?
EmbeddedStatement ::= try Block finally Block
Release Statements
EmbeddedStatement ::= release Expression ;
Share with your friends:
The database is protected by copyright ©ininet.org 2024
send message