8.2. Podrobný zápis gramatiky
Předchozí Kapitola 8. Gramatika pro tvorbu výrazů pro hodnocení odpovědí Následující

8.2. Podrobný zápis gramatiky

expression
    :  or_expression
    ;

or_expression
    : and_expression (OR and_expression)*
    ;

and_expression
    : relational_expression (AND relational_expression)*
    ;

relational_expression
    : LETTER (EQUAL|NOTEQUAL|LT|GT|LE|GE) constant
    | not_expression
    ;

not_expression
    : (NOT)? LPAREN! expression RPAREN!
    ;

constant
    : numeric_plusminus_constant
    | boolean_constant
    | string_constant
    | order_numeric_constant
    ;EQUAL

numeric_plusminus_constant
    : (PLUS|MINUS)? numeric_constant
    ;

order_numeric_constant
    : ORDER_INT_CONST
    ;

numeric_constant
    : INT_CONST
    | FLT_CONST
    | BINARY_INTEGER
    | OCTAL_INTEGER
    | HEXADECIMAL_INTEGER
    ;

boolean_constant
    : TRUE_LIT
    | FALSE_LIT
    ;

string_constant
    : STR_CONST
    ;

* znamená výskyt 0 až n-krát, ! znamená povinný výskyt, ? znamená výskyt 0 nebo 1-krát, operátor | znamená nebo


Předchozí Nahoru Následující
8.1. Příklady výrazů Index 8.3. Symboly