33 lines
1.6 KiB
BNF
33 lines
1.6 KiB
BNF
<expression> ::= <my_identifier>
|
|
| <literal>
|
|
| <object_method_call>
|
|
| <constant_declaration>
|
|
| <type_conversion_expression>
|
|
| "(" <expression> ")"
|
|
| <lambda_declaration>
|
|
|
|
<type_conversion_expression> ::= <my_identifier> ".as(" <type> ")"
|
|
|
|
<boolean_expression> ::=
|
|
<boolean_literal>
|
|
| "(" <boolean_expression> ")"
|
|
| <my_identifier> ".eq(" <expression> ")"
|
|
| <my_identifier> ".is(" <expression> ")"
|
|
| <my_identifier> ".not(" <expression> ")"
|
|
| <my_identifier> ".gt(" <expression> ")"
|
|
| <my_identifier> ".lt(" <expression> ")"
|
|
| <my_identifier> ".gte(" <expression> ")"
|
|
| <my_identifier> ".lte(" <expression> ")"
|
|
| <my_identifier> ".and(" <boolean_expression> ")"
|
|
| <my_identifier> ".or(" <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".and(" <boolean_expression> "," <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".or(" <boolean_expression> "," <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".not(" <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".eq(" <boolean_expression> "," <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".is(" <boolean_expression> "," <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".gt(" <boolean_expression> "," <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".lt(" <boolean_expression> "," <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".gte(" <boolean_expression> "," <boolean_expression> ")"
|
|
| <boolean_type_keyword> ".lte(" <boolean_expression> "," <boolean_expression> ")"
|
|
|