| | T_INNER: '+>' ; |
| | T_OUTER: '->' ; |
| | -T_EOL : ',' ; |
| | +T_COMMA: ',' ; |
| | T_WHERE: ';' ; |
| | |
 |
| | /* Define the root, line map, and JOIN clauses. |
| | */ |
| | -start : (root | module) T_EOL ; |
| | +start : (root | module) T_COMMA ; |
| | root : T_ROOT T_GT element ; |
| | module: T_MODULE T_ID ; |
| | |
| | -statement: (pop | glob | map | include) T_EOL ; |
| | +statement: (pop | glob | map | include) T_COMMA ; |
| | pop : T_POP ; |
| | glob : T_GLOB ; |
 |
| | include : T_IMPORT T_ID ; |
| | |
| | -table : T_ID ; |
| | -column : T_PERIOD T_ID ; |
| | -tableColumn: table column ; |
| | +table : T_ID ; |
| | +column : T_PERIOD T_ID ; |
| | +tableColumn : table column ; |
| | |
| | -attribute : T_AT T_ID ; |
| | -element : T_ID ; |
| | -elementPath: element T_SLASH element ; |
| | -path : element | elementPath; |
| | +attribute : T_AT T_ID ; |
| | +element : T_ID ; |
| | +elementPath : element T_SLASH element ; |
| | +path : element | elementPath; |
| | |
| | /* Define the WHERE clause. */ |
| | where : T_WHERE expression? ; |
| | |
| | -expression : |
| | - tableColumn exprRelational exprValueOrSet |
| | - | tableColumn exprEquality exprValueOrSet |
| | - | T_EXPR_OPEN expression T_EXPR_CLOSE |
| | - | expression (T_LOGIC_AND | T_LOGIC_OR) expression ; |
| | +expression : exprEquality | exprLogicalAnd ; |
| | +exprLogicalAnd: exprLogicalOr (T_LOGIC_AND exprLogicalOr)* ; |
| | +exprLogicalOr : exprRelational (T_LOGIC_OR exprRelational)* ; |
| | +exprRelational: exprEquality | exprCompRel ; |
| | +exprEquality : exprParen | exprCompEqual ; |
| | +exprParen : T_EXPR_OPEN expression T_EXPR_CLOSE ; |
| | |
| | -exprRelational: T_LT | T_GT | T_LTE | T_GTE ; |
| | -exprEquality : T_EQ | T_INEQ ; |
| | +exprCompRel : tableColumn (T_LT | T_GT | T_LTE | T_GTE) exprValue ; |
| | +exprCompEqual : tableColumn (T_EQ | T_INEQ) exprValueOrSet ; |
| | |
| | -exprValueOrSet: exprValue | exprSet ; |
| | exprValue : exprParameter | literal ; |
| | -exprList : exprValue (',' exprValue)* ; |
| | +exprValueOrSet: exprValue | exprSet ; |
| | exprSet : T_EXPR_SET_OPEN exprList T_EXPR_SET_CLOSE ; |
| | +exprList : exprValue (T_COMMA exprValue)* ; |
| | |
| | exprParameter : T_EXPR_PARAMETER T_ID ; |