aboutsummaryrefslogtreecommitdiffstats
path: root/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g
diff options
context:
space:
mode:
Diffstat (limited to 'Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g')
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g2475
1 files changed, 2186 insertions, 289 deletions
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g
index f5a473f4..a56b7fe0 100644
--- a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g
@@ -57,29 +57,17 @@ import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
57 tokenNameToValue.put("ColonHyphenMinus", "':-'"); 57 tokenNameToValue.put("ColonHyphenMinus", "':-'");
58 tokenNameToValue.put("LessThanSignEqualsSign", "'<='"); 58 tokenNameToValue.put("LessThanSignEqualsSign", "'<='");
59 tokenNameToValue.put("EqualsSignEqualsSign", "'=='"); 59 tokenNameToValue.put("EqualsSignEqualsSign", "'=='");
60 tokenNameToValue.put("EqualsSignGreaterThanSign", "'=>'");
60 tokenNameToValue.put("GreaterThanSignEqualsSign", "'>='"); 61 tokenNameToValue.put("GreaterThanSignEqualsSign", "'>='");
61 tokenNameToValue.put("EQ", "'EQ'"); 62 tokenNameToValue.put("As", "'as'");
62 tokenNameToValue.put("IN", "'IN'");
63 tokenNameToValue.put("If", "'if'"); 63 tokenNameToValue.put("If", "'if'");
64 tokenNameToValue.put("In", "'in'"); 64 tokenNameToValue.put("In", "'in'");
65 tokenNameToValue.put("ADD", "'ADD'"); 65 tokenNameToValue.put("FullStopFullStopFullStop", "'...'");
66 tokenNameToValue.put("DIV", "'DIV'");
67 tokenNameToValue.put("MUL", "'MUL'");
68 tokenNameToValue.put("POW", "'POW'");
69 tokenNameToValue.put("SUB", "'SUB'");
70 tokenNameToValue.put("Avg", "'avg'");
71 tokenNameToValue.put("Inf", "'inf'"); 66 tokenNameToValue.put("Inf", "'inf'");
72 tokenNameToValue.put("Int", "'int'"); 67 tokenNameToValue.put("Let", "'let'");
73 tokenNameToValue.put("Max", "'max'");
74 tokenNameToValue.put("May", "'may'"); 68 tokenNameToValue.put("May", "'may'");
75 tokenNameToValue.put("Min", "'min'");
76 tokenNameToValue.put("Sum", "'sum'");
77 tokenNameToValue.put("LESS", "'LESS'");
78 tokenNameToValue.put("Else", "'else'"); 69 tokenNameToValue.put("Else", "'else'");
79 tokenNameToValue.put("Must", "'must'"); 70 tokenNameToValue.put("Must", "'must'");
80 tokenNameToValue.put("Only", "'only'");
81 tokenNameToValue.put("Prod", "'prod'");
82 tokenNameToValue.put("Real", "'real'");
83 tokenNameToValue.put("Then", "'then'"); 71 tokenNameToValue.put("Then", "'then'");
84 tokenNameToValue.put("True", "'true'"); 72 tokenNameToValue.put("True", "'true'");
85 tokenNameToValue.put("Class", "'class'"); 73 tokenNameToValue.put("Class", "'class'");
@@ -88,20 +76,19 @@ import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
88 tokenNameToValue.put("Error", "'error'"); 76 tokenNameToValue.put("Error", "'error'");
89 tokenNameToValue.put("False", "'false'"); 77 tokenNameToValue.put("False", "'false'");
90 tokenNameToValue.put("Scope", "'scope'"); 78 tokenNameToValue.put("Scope", "'scope'");
91 tokenNameToValue.put("NOT_EQ", "'NOT_EQ'"); 79 tokenNameToValue.put("Exists", "'exists'");
92 tokenNameToValue.put("Extern", "'extern'"); 80 tokenNameToValue.put("Extern", "'extern'");
93 tokenNameToValue.put("GREATER", "'GREATER'"); 81 tokenNameToValue.put("Forall", "'forall'");
94 tokenNameToValue.put("LESS_EQ", "'LESS_EQ'");
95 tokenNameToValue.put("Current", "'current'"); 82 tokenNameToValue.put("Current", "'current'");
96 tokenNameToValue.put("Default", "'default'"); 83 tokenNameToValue.put("Default", "'default'");
97 tokenNameToValue.put("Extends", "'extends'"); 84 tokenNameToValue.put("Extends", "'extends'");
98 tokenNameToValue.put("Unknown", "'unknown'"); 85 tokenNameToValue.put("Unknown", "'unknown'");
99 tokenNameToValue.put("Abstract", "'abstract'"); 86 tokenNameToValue.put("Abstract", "'abstract'");
100 tokenNameToValue.put("Contains", "'contains'"); 87 tokenNameToValue.put("Contains", "'contains'");
88 tokenNameToValue.put("Datatype", "'datatype'");
101 tokenNameToValue.put("Maximize", "'maximize'"); 89 tokenNameToValue.put("Maximize", "'maximize'");
102 tokenNameToValue.put("Minimize", "'minimize'"); 90 tokenNameToValue.put("Minimize", "'minimize'");
103 tokenNameToValue.put("Opposite", "'opposite'"); 91 tokenNameToValue.put("Opposite", "'opposite'");
104 tokenNameToValue.put("GREATER_EQ", "'GREATER_EQ'");
105 tokenNameToValue.put("Functional", "'functional'"); 92 tokenNameToValue.put("Functional", "'functional'");
106 } 93 }
107 94
@@ -273,50 +260,50 @@ finally {
273 restoreStackSize(stackSize); 260 restoreStackSize(stackSize);
274} 261}
275 262
276// Entry rule entryRuleExternPredicateDefinition 263// Entry rule entryRuleMetricDefinition
277entryRuleExternPredicateDefinition 264entryRuleMetricDefinition
278: 265:
279{ before(grammarAccess.getExternPredicateDefinitionRule()); } 266{ before(grammarAccess.getMetricDefinitionRule()); }
280 ruleExternPredicateDefinition 267 ruleMetricDefinition
281{ after(grammarAccess.getExternPredicateDefinitionRule()); } 268{ after(grammarAccess.getMetricDefinitionRule()); }
282 EOF 269 EOF
283; 270;
284 271
285// Rule ExternPredicateDefinition 272// Rule MetricDefinition
286ruleExternPredicateDefinition 273ruleMetricDefinition
287 @init { 274 @init {
288 int stackSize = keepStackSize(); 275 int stackSize = keepStackSize();
289 } 276 }
290 : 277 :
291 ( 278 (
292 { before(grammarAccess.getExternPredicateDefinitionAccess().getGroup()); } 279 { before(grammarAccess.getMetricDefinitionAccess().getGroup()); }
293 (rule__ExternPredicateDefinition__Group__0) 280 (rule__MetricDefinition__Group__0)
294 { after(grammarAccess.getExternPredicateDefinitionAccess().getGroup()); } 281 { after(grammarAccess.getMetricDefinitionAccess().getGroup()); }
295 ) 282 )
296; 283;
297finally { 284finally {
298 restoreStackSize(stackSize); 285 restoreStackSize(stackSize);
299} 286}
300 287
301// Entry rule entryRuleMetricDefinition 288// Entry rule entryRuleExternPredicateDefinition
302entryRuleMetricDefinition 289entryRuleExternPredicateDefinition
303: 290:
304{ before(grammarAccess.getMetricDefinitionRule()); } 291{ before(grammarAccess.getExternPredicateDefinitionRule()); }
305 ruleMetricDefinition 292 ruleExternPredicateDefinition
306{ after(grammarAccess.getMetricDefinitionRule()); } 293{ after(grammarAccess.getExternPredicateDefinitionRule()); }
307 EOF 294 EOF
308; 295;
309 296
310// Rule MetricDefinition 297// Rule ExternPredicateDefinition
311ruleMetricDefinition 298ruleExternPredicateDefinition
312 @init { 299 @init {
313 int stackSize = keepStackSize(); 300 int stackSize = keepStackSize();
314 } 301 }
315 : 302 :
316 ( 303 (
317 { before(grammarAccess.getMetricDefinitionAccess().getGroup()); } 304 { before(grammarAccess.getExternPredicateDefinitionAccess().getGroup()); }
318 (rule__MetricDefinition__Group__0) 305 (rule__ExternPredicateDefinition__Group__0)
319 { after(grammarAccess.getMetricDefinitionAccess().getGroup()); } 306 { after(grammarAccess.getExternPredicateDefinitionAccess().getGroup()); }
320 ) 307 )
321; 308;
322finally { 309finally {
@@ -348,6 +335,81 @@ finally {
348 restoreStackSize(stackSize); 335 restoreStackSize(stackSize);
349} 336}
350 337
338// Entry rule entryRuleExternAggregatorDefinition
339entryRuleExternAggregatorDefinition
340:
341{ before(grammarAccess.getExternAggregatorDefinitionRule()); }
342 ruleExternAggregatorDefinition
343{ after(grammarAccess.getExternAggregatorDefinitionRule()); }
344 EOF
345;
346
347// Rule ExternAggregatorDefinition
348ruleExternAggregatorDefinition
349 @init {
350 int stackSize = keepStackSize();
351 }
352 :
353 (
354 { before(grammarAccess.getExternAggregatorDefinitionAccess().getGroup()); }
355 (rule__ExternAggregatorDefinition__Group__0)
356 { after(grammarAccess.getExternAggregatorDefinitionAccess().getGroup()); }
357 )
358;
359finally {
360 restoreStackSize(stackSize);
361}
362
363// Entry rule entryRuleExternDatatypeDefinition
364entryRuleExternDatatypeDefinition
365:
366{ before(grammarAccess.getExternDatatypeDefinitionRule()); }
367 ruleExternDatatypeDefinition
368{ after(grammarAccess.getExternDatatypeDefinitionRule()); }
369 EOF
370;
371
372// Rule ExternDatatypeDefinition
373ruleExternDatatypeDefinition
374 @init {
375 int stackSize = keepStackSize();
376 }
377 :
378 (
379 { before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup()); }
380 (rule__ExternDatatypeDefinition__Group__0)
381 { after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup()); }
382 )
383;
384finally {
385 restoreStackSize(stackSize);
386}
387
388// Entry rule entryRuleVariable
389entryRuleVariable
390:
391{ before(grammarAccess.getVariableRule()); }
392 ruleVariable
393{ after(grammarAccess.getVariableRule()); }
394 EOF
395;
396
397// Rule Variable
398ruleVariable
399 @init {
400 int stackSize = keepStackSize();
401 }
402 :
403 (
404 { before(grammarAccess.getVariableAccess().getGroup()); }
405 (rule__Variable__Group__0)
406 { after(grammarAccess.getVariableAccess().getGroup()); }
407 )
408;
409finally {
410 restoreStackSize(stackSize);
411}
412
351// Entry rule entryRuleExpression 413// Entry rule entryRuleExpression
352entryRuleExpression 414entryRuleExpression
353: 415:
@@ -398,6 +460,81 @@ finally {
398 restoreStackSize(stackSize); 460 restoreStackSize(stackSize);
399} 461}
400 462
463// Entry rule entryRuleLet
464entryRuleLet
465:
466{ before(grammarAccess.getLetRule()); }
467 ruleLet
468{ after(grammarAccess.getLetRule()); }
469 EOF
470;
471
472// Rule Let
473ruleLet
474 @init {
475 int stackSize = keepStackSize();
476 }
477 :
478 (
479 { before(grammarAccess.getLetAccess().getGroup()); }
480 (rule__Let__Group__0)
481 { after(grammarAccess.getLetAccess().getGroup()); }
482 )
483;
484finally {
485 restoreStackSize(stackSize);
486}
487
488// Entry rule entryRuleLetBinding
489entryRuleLetBinding
490:
491{ before(grammarAccess.getLetBindingRule()); }
492 ruleLetBinding
493{ after(grammarAccess.getLetBindingRule()); }
494 EOF
495;
496
497// Rule LetBinding
498ruleLetBinding
499 @init {
500 int stackSize = keepStackSize();
501 }
502 :
503 (
504 { before(grammarAccess.getLetBindingAccess().getGroup()); }
505 (rule__LetBinding__Group__0)
506 { after(grammarAccess.getLetBindingAccess().getGroup()); }
507 )
508;
509finally {
510 restoreStackSize(stackSize);
511}
512
513// Entry rule entryRuleImplicationExpression
514entryRuleImplicationExpression
515:
516{ before(grammarAccess.getImplicationExpressionRule()); }
517 ruleImplicationExpression
518{ after(grammarAccess.getImplicationExpressionRule()); }
519 EOF
520;
521
522// Rule ImplicationExpression
523ruleImplicationExpression
524 @init {
525 int stackSize = keepStackSize();
526 }
527 :
528 (
529 { before(grammarAccess.getImplicationExpressionAccess().getGroup()); }
530 (rule__ImplicationExpression__Group__0)
531 { after(grammarAccess.getImplicationExpressionAccess().getGroup()); }
532 )
533;
534finally {
535 restoreStackSize(stackSize);
536}
537
401// Entry rule entryRuleDisjunctiveExpression 538// Entry rule entryRuleDisjunctiveExpression
402entryRuleDisjunctiveExpression 539entryRuleDisjunctiveExpression
403: 540:
@@ -573,6 +710,31 @@ finally {
573 restoreStackSize(stackSize); 710 restoreStackSize(stackSize);
574} 711}
575 712
713// Entry rule entryRuleCastExpression
714entryRuleCastExpression
715:
716{ before(grammarAccess.getCastExpressionRule()); }
717 ruleCastExpression
718{ after(grammarAccess.getCastExpressionRule()); }
719 EOF
720;
721
722// Rule CastExpression
723ruleCastExpression
724 @init {
725 int stackSize = keepStackSize();
726 }
727 :
728 (
729 { before(grammarAccess.getCastExpressionAccess().getGroup()); }
730 (rule__CastExpression__Group__0)
731 { after(grammarAccess.getCastExpressionAccess().getGroup()); }
732 )
733;
734finally {
735 restoreStackSize(stackSize);
736}
737
576// Entry rule entryRuleUnaryExpression 738// Entry rule entryRuleUnaryExpression
577entryRuleUnaryExpression 739entryRuleUnaryExpression
578: 740:
@@ -623,25 +785,50 @@ finally {
623 restoreStackSize(stackSize); 785 restoreStackSize(stackSize);
624} 786}
625 787
626// Entry rule entryRuleCount 788// Entry rule entryRuleLocalVariables
627entryRuleCount 789entryRuleLocalVariables
628: 790:
629{ before(grammarAccess.getCountRule()); } 791{ before(grammarAccess.getLocalVariablesRule()); }
630 ruleCount 792 ruleLocalVariables
631{ after(grammarAccess.getCountRule()); } 793{ after(grammarAccess.getLocalVariablesRule()); }
632 EOF 794 EOF
633; 795;
634 796
635// Rule Count 797// Rule LocalVariables
636ruleCount 798ruleLocalVariables
637 @init { 799 @init {
638 int stackSize = keepStackSize(); 800 int stackSize = keepStackSize();
639 } 801 }
640 : 802 :
641 ( 803 (
642 { before(grammarAccess.getCountAccess().getGroup()); } 804 { before(grammarAccess.getLocalVariablesAccess().getGroup()); }
643 (rule__Count__Group__0) 805 (rule__LocalVariables__Group__0)
644 { after(grammarAccess.getCountAccess().getGroup()); } 806 { after(grammarAccess.getLocalVariablesAccess().getGroup()); }
807 )
808;
809finally {
810 restoreStackSize(stackSize);
811}
812
813// Entry rule entryRuleQuantifiedExpression
814entryRuleQuantifiedExpression
815:
816{ before(grammarAccess.getQuantifiedExpressionRule()); }
817 ruleQuantifiedExpression
818{ after(grammarAccess.getQuantifiedExpressionRule()); }
819 EOF
820;
821
822// Rule QuantifiedExpression
823ruleQuantifiedExpression
824 @init {
825 int stackSize = keepStackSize();
826 }
827 :
828 (
829 { before(grammarAccess.getQuantifiedExpressionAccess().getGroup()); }
830 (rule__QuantifiedExpression__Group__0)
831 { after(grammarAccess.getQuantifiedExpressionAccess().getGroup()); }
645 ) 832 )
646; 833;
647finally { 834finally {
@@ -1439,16 +1626,16 @@ finally {
1439 myHiddenTokenState.restore(); 1626 myHiddenTokenState.restore();
1440} 1627}
1441 1628
1442// Rule MetricType 1629// Rule ImplicationOperator
1443ruleMetricType 1630ruleImplicationOperator
1444 @init { 1631 @init {
1445 int stackSize = keepStackSize(); 1632 int stackSize = keepStackSize();
1446 } 1633 }
1447: 1634:
1448 ( 1635 (
1449 { before(grammarAccess.getMetricTypeAccess().getAlternatives()); } 1636 { before(grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration()); }
1450 (rule__MetricType__Alternatives) 1637 (EqualsSignGreaterThanSign)
1451 { after(grammarAccess.getMetricTypeAccess().getAlternatives()); } 1638 { after(grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration()); }
1452 ) 1639 )
1453; 1640;
1454finally { 1641finally {
@@ -1535,16 +1722,16 @@ finally {
1535 restoreStackSize(stackSize); 1722 restoreStackSize(stackSize);
1536} 1723}
1537 1724
1538// Rule AggregationOp 1725// Rule Quantifier
1539ruleAggregationOp 1726ruleQuantifier
1540 @init { 1727 @init {
1541 int stackSize = keepStackSize(); 1728 int stackSize = keepStackSize();
1542 } 1729 }
1543: 1730:
1544 ( 1731 (
1545 { before(grammarAccess.getAggregationOpAccess().getAlternatives()); } 1732 { before(grammarAccess.getQuantifierAccess().getAlternatives()); }
1546 (rule__AggregationOp__Alternatives) 1733 (rule__Quantifier__Alternatives)
1547 { after(grammarAccess.getAggregationOpAccess().getAlternatives()); } 1734 { after(grammarAccess.getQuantifierAccess().getAlternatives()); }
1548 ) 1735 )
1549; 1736;
1550finally { 1737finally {
@@ -1613,15 +1800,15 @@ rule__Statement__Alternatives_0
1613 ) 1800 )
1614 | 1801 |
1615 ( 1802 (
1616 { before(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_4()); } 1803 { before(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4()); }
1617 ruleExternPredicateDefinition 1804 ruleMetricDefinition
1618 { after(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_4()); } 1805 { after(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4()); }
1619 ) 1806 )
1620 | 1807 |
1621 ( 1808 (
1622 { before(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_5()); } 1809 { before(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5()); }
1623 ruleMetricDefinition 1810 ruleExternPredicateDefinition
1624 { after(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_5()); } 1811 { after(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5()); }
1625 ) 1812 )
1626 | 1813 |
1627 ( 1814 (
@@ -1631,21 +1818,33 @@ rule__Statement__Alternatives_0
1631 ) 1818 )
1632 | 1819 |
1633 ( 1820 (
1634 { before(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_7()); } 1821 { before(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7()); }
1822 ruleExternAggregatorDefinition
1823 { after(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7()); }
1824 )
1825 |
1826 (
1827 { before(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8()); }
1828 ruleExternDatatypeDefinition
1829 { after(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8()); }
1830 )
1831 |
1832 (
1833 { before(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9()); }
1635 ruleClassDefinition 1834 ruleClassDefinition
1636 { after(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_7()); } 1835 { after(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9()); }
1637 ) 1836 )
1638 | 1837 |
1639 ( 1838 (
1640 { before(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_8()); } 1839 { before(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10()); }
1641 ruleScopeDefinition 1840 ruleScopeDefinition
1642 { after(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_8()); } 1841 { after(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10()); }
1643 ) 1842 )
1644 | 1843 |
1645 ( 1844 (
1646 { before(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_9()); } 1845 { before(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11()); }
1647 ruleObjectiveDefinition 1846 ruleObjectiveDefinition
1648 { after(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_9()); } 1847 { after(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11()); }
1649 ) 1848 )
1650; 1849;
1651finally { 1850finally {
@@ -1712,9 +1911,15 @@ rule__Expression__Alternatives
1712 ) 1911 )
1713 | 1912 |
1714 ( 1913 (
1715 { before(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_1()); } 1914 { before(grammarAccess.getExpressionAccess().getLetParserRuleCall_1()); }
1716 ruleDisjunctiveExpression 1915 ruleLet
1717 { after(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_1()); } 1916 { after(grammarAccess.getExpressionAccess().getLetParserRuleCall_1()); }
1917 )
1918 |
1919 (
1920 { before(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2()); }
1921 ruleImplicationExpression
1922 { after(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2()); }
1718 ) 1923 )
1719; 1924;
1720finally { 1925finally {
@@ -1775,9 +1980,9 @@ rule__AggregationExpression__Alternatives
1775 ) 1980 )
1776 | 1981 |
1777 ( 1982 (
1778 { before(grammarAccess.getAggregationExpressionAccess().getCountParserRuleCall_1()); } 1983 { before(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1()); }
1779 ruleCount 1984 ruleQuantifiedExpression
1780 { after(grammarAccess.getAggregationExpressionAccess().getCountParserRuleCall_1()); } 1985 { after(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1()); }
1781 ) 1986 )
1782 | 1987 |
1783 ( 1988 (
@@ -2060,27 +2265,6 @@ finally {
2060 restoreStackSize(stackSize); 2265 restoreStackSize(stackSize);
2061} 2266}
2062 2267
2063rule__MetricType__Alternatives
2064 @init {
2065 int stackSize = keepStackSize();
2066 }
2067:
2068 (
2069 { before(grammarAccess.getMetricTypeAccess().getINTEnumLiteralDeclaration_0()); }
2070 (Int)
2071 { after(grammarAccess.getMetricTypeAccess().getINTEnumLiteralDeclaration_0()); }
2072 )
2073 |
2074 (
2075 { before(grammarAccess.getMetricTypeAccess().getREALEnumLiteralDeclaration_1()); }
2076 (Real)
2077 { after(grammarAccess.getMetricTypeAccess().getREALEnumLiteralDeclaration_1()); }
2078 )
2079;
2080finally {
2081 restoreStackSize(stackSize);
2082}
2083
2084rule__ComparisonOperator__Alternatives 2268rule__ComparisonOperator__Alternatives
2085 @init { 2269 @init {
2086 int stackSize = keepStackSize(); 2270 int stackSize = keepStackSize();
@@ -2219,45 +2403,27 @@ finally {
2219 restoreStackSize(stackSize); 2403 restoreStackSize(stackSize);
2220} 2404}
2221 2405
2222rule__AggregationOp__Alternatives 2406rule__Quantifier__Alternatives
2223 @init { 2407 @init {
2224 int stackSize = keepStackSize(); 2408 int stackSize = keepStackSize();
2225 } 2409 }
2226: 2410:
2227 ( 2411 (
2228 { before(grammarAccess.getAggregationOpAccess().getONLYEnumLiteralDeclaration_0()); } 2412 { before(grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0()); }
2229 (Only) 2413 (Exists)
2230 { after(grammarAccess.getAggregationOpAccess().getONLYEnumLiteralDeclaration_0()); } 2414 { after(grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0()); }
2231 ) 2415 )
2232 | 2416 |
2233 ( 2417 (
2234 { before(grammarAccess.getAggregationOpAccess().getSUMEnumLiteralDeclaration_1()); } 2418 { before(grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1()); }
2235 (Sum) 2419 (Forall)
2236 { after(grammarAccess.getAggregationOpAccess().getSUMEnumLiteralDeclaration_1()); } 2420 { after(grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1()); }
2237 ) 2421 )
2238 | 2422 |
2239 ( 2423 (
2240 { before(grammarAccess.getAggregationOpAccess().getPRODEnumLiteralDeclaration_2()); } 2424 { before(grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2()); }
2241 (Prod) 2425 (Count)
2242 { after(grammarAccess.getAggregationOpAccess().getPRODEnumLiteralDeclaration_2()); } 2426 { after(grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2()); }
2243 )
2244 |
2245 (
2246 { before(grammarAccess.getAggregationOpAccess().getAVGEnumLiteralDeclaration_3()); }
2247 (Avg)
2248 { after(grammarAccess.getAggregationOpAccess().getAVGEnumLiteralDeclaration_3()); }
2249 )
2250 |
2251 (
2252 { before(grammarAccess.getAggregationOpAccess().getMINEnumLiteralDeclaration_4()); }
2253 (Min)
2254 { after(grammarAccess.getAggregationOpAccess().getMINEnumLiteralDeclaration_4()); }
2255 )
2256 |
2257 (
2258 { before(grammarAccess.getAggregationOpAccess().getMAXEnumLiteralDeclaration_5()); }
2259 (Max)
2260 { after(grammarAccess.getAggregationOpAccess().getMAXEnumLiteralDeclaration_5()); }
2261 ) 2427 )
2262; 2428;
2263finally { 2429finally {
@@ -2417,7 +2583,7 @@ rule__AssertionOrDefinition__Group__1__Impl
2417: 2583:
2418( 2584(
2419 { before(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); } 2585 { before(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); }
2420 (rule__AssertionOrDefinition__Alternatives_1) 2586 (rule__AssertionOrDefinition__Alternatives_1)?
2421 { after(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); } 2587 { after(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); }
2422) 2588)
2423; 2589;
@@ -2444,9 +2610,9 @@ rule__AssertionOrDefinition__Group_1_0__0__Impl
2444 } 2610 }
2445: 2611:
2446( 2612(
2447 { before(grammarAccess.getAssertionOrDefinitionAccess().getAssertionBodyAction_1_0_0()); } 2613 { before(grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0()); }
2448 () 2614 ()
2449 { after(grammarAccess.getAssertionOrDefinitionAccess().getAssertionBodyAction_1_0_0()); } 2615 { after(grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0()); }
2450) 2616)
2451; 2617;
2452finally { 2618finally {
@@ -2459,6 +2625,7 @@ rule__AssertionOrDefinition__Group_1_0__1
2459 } 2625 }
2460: 2626:
2461 rule__AssertionOrDefinition__Group_1_0__1__Impl 2627 rule__AssertionOrDefinition__Group_1_0__1__Impl
2628 rule__AssertionOrDefinition__Group_1_0__2
2462; 2629;
2463finally { 2630finally {
2464 restoreStackSize(stackSize); 2631 restoreStackSize(stackSize);
@@ -2470,63 +2637,35 @@ rule__AssertionOrDefinition__Group_1_0__1__Impl
2470 } 2637 }
2471: 2638:
2472( 2639(
2473 { before(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0_1()); } 2640 { before(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1()); }
2474 (rule__AssertionOrDefinition__Group_1_0_1__0)?
2475 { after(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0_1()); }
2476)
2477;
2478finally {
2479 restoreStackSize(stackSize);
2480}
2481
2482
2483rule__AssertionOrDefinition__Group_1_0_1__0
2484 @init {
2485 int stackSize = keepStackSize();
2486 }
2487:
2488 rule__AssertionOrDefinition__Group_1_0_1__0__Impl
2489 rule__AssertionOrDefinition__Group_1_0_1__1
2490;
2491finally {
2492 restoreStackSize(stackSize);
2493}
2494
2495rule__AssertionOrDefinition__Group_1_0_1__0__Impl
2496 @init {
2497 int stackSize = keepStackSize();
2498 }
2499:
2500(
2501 { before(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0()); }
2502 Colon 2641 Colon
2503 { after(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0()); } 2642 { after(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1()); }
2504) 2643)
2505; 2644;
2506finally { 2645finally {
2507 restoreStackSize(stackSize); 2646 restoreStackSize(stackSize);
2508} 2647}
2509 2648
2510rule__AssertionOrDefinition__Group_1_0_1__1 2649rule__AssertionOrDefinition__Group_1_0__2
2511 @init { 2650 @init {
2512 int stackSize = keepStackSize(); 2651 int stackSize = keepStackSize();
2513 } 2652 }
2514: 2653:
2515 rule__AssertionOrDefinition__Group_1_0_1__1__Impl 2654 rule__AssertionOrDefinition__Group_1_0__2__Impl
2516; 2655;
2517finally { 2656finally {
2518 restoreStackSize(stackSize); 2657 restoreStackSize(stackSize);
2519} 2658}
2520 2659
2521rule__AssertionOrDefinition__Group_1_0_1__1__Impl 2660rule__AssertionOrDefinition__Group_1_0__2__Impl
2522 @init { 2661 @init {
2523 int stackSize = keepStackSize(); 2662 int stackSize = keepStackSize();
2524 } 2663 }
2525: 2664:
2526( 2665(
2527 { before(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_1_1()); } 2666 { before(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_2()); }
2528 (rule__AssertionOrDefinition__RangeAssignment_1_0_1_1) 2667 (rule__AssertionOrDefinition__RangeAssignment_1_0_2)
2529 { after(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_1_1()); } 2668 { after(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_2()); }
2530) 2669)
2531; 2670;
2532finally { 2671finally {
@@ -3128,161 +3267,188 @@ finally {
3128} 3267}
3129 3268
3130 3269
3131rule__ExternPredicateDefinition__Group__0 3270rule__MetricDefinition__Group__0
3132 @init { 3271 @init {
3133 int stackSize = keepStackSize(); 3272 int stackSize = keepStackSize();
3134 } 3273 }
3135: 3274:
3136 rule__ExternPredicateDefinition__Group__0__Impl 3275 rule__MetricDefinition__Group__0__Impl
3137 rule__ExternPredicateDefinition__Group__1 3276 rule__MetricDefinition__Group__1
3138; 3277;
3139finally { 3278finally {
3140 restoreStackSize(stackSize); 3279 restoreStackSize(stackSize);
3141} 3280}
3142 3281
3143rule__ExternPredicateDefinition__Group__0__Impl 3282rule__MetricDefinition__Group__0__Impl
3144 @init { 3283 @init {
3145 int stackSize = keepStackSize(); 3284 int stackSize = keepStackSize();
3146 } 3285 }
3147: 3286:
3148( 3287(
3149 { before(grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); } 3288 { before(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0()); }
3150 Extern 3289 (rule__MetricDefinition__TypeAssignment_0)
3151 { after(grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); } 3290 { after(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0()); }
3152) 3291)
3153; 3292;
3154finally { 3293finally {
3155 restoreStackSize(stackSize); 3294 restoreStackSize(stackSize);
3156} 3295}
3157 3296
3158rule__ExternPredicateDefinition__Group__1 3297rule__MetricDefinition__Group__1
3159 @init { 3298 @init {
3160 int stackSize = keepStackSize(); 3299 int stackSize = keepStackSize();
3161 } 3300 }
3162: 3301:
3163 rule__ExternPredicateDefinition__Group__1__Impl 3302 rule__MetricDefinition__Group__1__Impl
3303 rule__MetricDefinition__Group__2
3164; 3304;
3165finally { 3305finally {
3166 restoreStackSize(stackSize); 3306 restoreStackSize(stackSize);
3167} 3307}
3168 3308
3169rule__ExternPredicateDefinition__Group__1__Impl 3309rule__MetricDefinition__Group__1__Impl
3170 @init { 3310 @init {
3171 int stackSize = keepStackSize(); 3311 int stackSize = keepStackSize();
3172 } 3312 }
3173: 3313:
3174( 3314(
3175 { before(grammarAccess.getExternPredicateDefinitionAccess().getHeadAssignment_1()); } 3315 { before(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1()); }
3176 (rule__ExternPredicateDefinition__HeadAssignment_1) 3316 (rule__MetricDefinition__HeadAssignment_1)
3177 { after(grammarAccess.getExternPredicateDefinitionAccess().getHeadAssignment_1()); } 3317 { after(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1()); }
3178) 3318)
3179; 3319;
3180finally { 3320finally {
3181 restoreStackSize(stackSize); 3321 restoreStackSize(stackSize);
3182} 3322}
3183 3323
3324rule__MetricDefinition__Group__2
3325 @init {
3326 int stackSize = keepStackSize();
3327 }
3328:
3329 rule__MetricDefinition__Group__2__Impl
3330 rule__MetricDefinition__Group__3
3331;
3332finally {
3333 restoreStackSize(stackSize);
3334}
3184 3335
3185rule__MetricDefinition__Group__0 3336rule__MetricDefinition__Group__2__Impl
3186 @init { 3337 @init {
3187 int stackSize = keepStackSize(); 3338 int stackSize = keepStackSize();
3188 } 3339 }
3189: 3340:
3190 rule__MetricDefinition__Group__0__Impl 3341(
3191 rule__MetricDefinition__Group__1 3342 { before(grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); }
3343 EqualsSign
3344 { after(grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); }
3345)
3192; 3346;
3193finally { 3347finally {
3194 restoreStackSize(stackSize); 3348 restoreStackSize(stackSize);
3195} 3349}
3196 3350
3197rule__MetricDefinition__Group__0__Impl 3351rule__MetricDefinition__Group__3
3352 @init {
3353 int stackSize = keepStackSize();
3354 }
3355:
3356 rule__MetricDefinition__Group__3__Impl
3357;
3358finally {
3359 restoreStackSize(stackSize);
3360}
3361
3362rule__MetricDefinition__Group__3__Impl
3198 @init { 3363 @init {
3199 int stackSize = keepStackSize(); 3364 int stackSize = keepStackSize();
3200 } 3365 }
3201: 3366:
3202( 3367(
3203 { before(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0()); } 3368 { before(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3()); }
3204 (rule__MetricDefinition__TypeAssignment_0) 3369 (rule__MetricDefinition__BodyAssignment_3)
3205 { after(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0()); } 3370 { after(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3()); }
3206) 3371)
3207; 3372;
3208finally { 3373finally {
3209 restoreStackSize(stackSize); 3374 restoreStackSize(stackSize);
3210} 3375}
3211 3376
3212rule__MetricDefinition__Group__1 3377
3378rule__ExternPredicateDefinition__Group__0
3213 @init { 3379 @init {
3214 int stackSize = keepStackSize(); 3380 int stackSize = keepStackSize();
3215 } 3381 }
3216: 3382:
3217 rule__MetricDefinition__Group__1__Impl 3383 rule__ExternPredicateDefinition__Group__0__Impl
3218 rule__MetricDefinition__Group__2 3384 rule__ExternPredicateDefinition__Group__1
3219; 3385;
3220finally { 3386finally {
3221 restoreStackSize(stackSize); 3387 restoreStackSize(stackSize);
3222} 3388}
3223 3389
3224rule__MetricDefinition__Group__1__Impl 3390rule__ExternPredicateDefinition__Group__0__Impl
3225 @init { 3391 @init {
3226 int stackSize = keepStackSize(); 3392 int stackSize = keepStackSize();
3227 } 3393 }
3228: 3394:
3229( 3395(
3230 { before(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1()); } 3396 { before(grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); }
3231 (rule__MetricDefinition__HeadAssignment_1) 3397 Extern
3232 { after(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1()); } 3398 { after(grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); }
3233) 3399)
3234; 3400;
3235finally { 3401finally {
3236 restoreStackSize(stackSize); 3402 restoreStackSize(stackSize);
3237} 3403}
3238 3404
3239rule__MetricDefinition__Group__2 3405rule__ExternPredicateDefinition__Group__1
3240 @init { 3406 @init {
3241 int stackSize = keepStackSize(); 3407 int stackSize = keepStackSize();
3242 } 3408 }
3243: 3409:
3244 rule__MetricDefinition__Group__2__Impl 3410 rule__ExternPredicateDefinition__Group__1__Impl
3245 rule__MetricDefinition__Group__3 3411 rule__ExternPredicateDefinition__Group__2
3246; 3412;
3247finally { 3413finally {
3248 restoreStackSize(stackSize); 3414 restoreStackSize(stackSize);
3249} 3415}
3250 3416
3251rule__MetricDefinition__Group__2__Impl 3417rule__ExternPredicateDefinition__Group__1__Impl
3252 @init { 3418 @init {
3253 int stackSize = keepStackSize(); 3419 int stackSize = keepStackSize();
3254 } 3420 }
3255: 3421:
3256( 3422(
3257 { before(grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); } 3423 { before(grammarAccess.getExternPredicateDefinitionAccess().getNameAssignment_1()); }
3258 EqualsSign 3424 (rule__ExternPredicateDefinition__NameAssignment_1)
3259 { after(grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); } 3425 { after(grammarAccess.getExternPredicateDefinitionAccess().getNameAssignment_1()); }
3260) 3426)
3261; 3427;
3262finally { 3428finally {
3263 restoreStackSize(stackSize); 3429 restoreStackSize(stackSize);
3264} 3430}
3265 3431
3266rule__MetricDefinition__Group__3 3432rule__ExternPredicateDefinition__Group__2
3267 @init { 3433 @init {
3268 int stackSize = keepStackSize(); 3434 int stackSize = keepStackSize();
3269 } 3435 }
3270: 3436:
3271 rule__MetricDefinition__Group__3__Impl 3437 rule__ExternPredicateDefinition__Group__2__Impl
3272; 3438;
3273finally { 3439finally {
3274 restoreStackSize(stackSize); 3440 restoreStackSize(stackSize);
3275} 3441}
3276 3442
3277rule__MetricDefinition__Group__3__Impl 3443rule__ExternPredicateDefinition__Group__2__Impl
3278 @init { 3444 @init {
3279 int stackSize = keepStackSize(); 3445 int stackSize = keepStackSize();
3280 } 3446 }
3281: 3447:
3282( 3448(
3283 { before(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3()); } 3449 { before(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListAssignment_2()); }
3284 (rule__MetricDefinition__BodyAssignment_3) 3450 (rule__ExternPredicateDefinition__ArgumentListAssignment_2)
3285 { after(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3()); } 3451 { after(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListAssignment_2()); }
3286) 3452)
3287; 3453;
3288finally { 3454finally {
@@ -3350,6 +3516,7 @@ rule__ExternMetricDefinition__Group__2
3350 } 3516 }
3351: 3517:
3352 rule__ExternMetricDefinition__Group__2__Impl 3518 rule__ExternMetricDefinition__Group__2__Impl
3519 rule__ExternMetricDefinition__Group__3
3353; 3520;
3354finally { 3521finally {
3355 restoreStackSize(stackSize); 3522 restoreStackSize(stackSize);
@@ -3361,9 +3528,521 @@ rule__ExternMetricDefinition__Group__2__Impl
3361 } 3528 }
3362: 3529:
3363( 3530(
3364 { before(grammarAccess.getExternMetricDefinitionAccess().getHeadAssignment_2()); } 3531 { before(grammarAccess.getExternMetricDefinitionAccess().getNameAssignment_2()); }
3365 (rule__ExternMetricDefinition__HeadAssignment_2) 3532 (rule__ExternMetricDefinition__NameAssignment_2)
3366 { after(grammarAccess.getExternMetricDefinitionAccess().getHeadAssignment_2()); } 3533 { after(grammarAccess.getExternMetricDefinitionAccess().getNameAssignment_2()); }
3534)
3535;
3536finally {
3537 restoreStackSize(stackSize);
3538}
3539
3540rule__ExternMetricDefinition__Group__3
3541 @init {
3542 int stackSize = keepStackSize();
3543 }
3544:
3545 rule__ExternMetricDefinition__Group__3__Impl
3546;
3547finally {
3548 restoreStackSize(stackSize);
3549}
3550
3551rule__ExternMetricDefinition__Group__3__Impl
3552 @init {
3553 int stackSize = keepStackSize();
3554 }
3555:
3556(
3557 { before(grammarAccess.getExternMetricDefinitionAccess().getArgumentListAssignment_3()); }
3558 (rule__ExternMetricDefinition__ArgumentListAssignment_3)
3559 { after(grammarAccess.getExternMetricDefinitionAccess().getArgumentListAssignment_3()); }
3560)
3561;
3562finally {
3563 restoreStackSize(stackSize);
3564}
3565
3566
3567rule__ExternAggregatorDefinition__Group__0
3568 @init {
3569 int stackSize = keepStackSize();
3570 }
3571:
3572 rule__ExternAggregatorDefinition__Group__0__Impl
3573 rule__ExternAggregatorDefinition__Group__1
3574;
3575finally {
3576 restoreStackSize(stackSize);
3577}
3578
3579rule__ExternAggregatorDefinition__Group__0__Impl
3580 @init {
3581 int stackSize = keepStackSize();
3582 }
3583:
3584(
3585 { before(grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0()); }
3586 Extern
3587 { after(grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0()); }
3588)
3589;
3590finally {
3591 restoreStackSize(stackSize);
3592}
3593
3594rule__ExternAggregatorDefinition__Group__1
3595 @init {
3596 int stackSize = keepStackSize();
3597 }
3598:
3599 rule__ExternAggregatorDefinition__Group__1__Impl
3600 rule__ExternAggregatorDefinition__Group__2
3601;
3602finally {
3603 restoreStackSize(stackSize);
3604}
3605
3606rule__ExternAggregatorDefinition__Group__1__Impl
3607 @init {
3608 int stackSize = keepStackSize();
3609 }
3610:
3611(
3612 { before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeAssignment_1()); }
3613 (rule__ExternAggregatorDefinition__TypeAssignment_1)
3614 { after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeAssignment_1()); }
3615)
3616;
3617finally {
3618 restoreStackSize(stackSize);
3619}
3620
3621rule__ExternAggregatorDefinition__Group__2
3622 @init {
3623 int stackSize = keepStackSize();
3624 }
3625:
3626 rule__ExternAggregatorDefinition__Group__2__Impl
3627 rule__ExternAggregatorDefinition__Group__3
3628;
3629finally {
3630 restoreStackSize(stackSize);
3631}
3632
3633rule__ExternAggregatorDefinition__Group__2__Impl
3634 @init {
3635 int stackSize = keepStackSize();
3636 }
3637:
3638(
3639 { before(grammarAccess.getExternAggregatorDefinitionAccess().getNameAssignment_2()); }
3640 (rule__ExternAggregatorDefinition__NameAssignment_2)
3641 { after(grammarAccess.getExternAggregatorDefinitionAccess().getNameAssignment_2()); }
3642)
3643;
3644finally {
3645 restoreStackSize(stackSize);
3646}
3647
3648rule__ExternAggregatorDefinition__Group__3
3649 @init {
3650 int stackSize = keepStackSize();
3651 }
3652:
3653 rule__ExternAggregatorDefinition__Group__3__Impl
3654 rule__ExternAggregatorDefinition__Group__4
3655;
3656finally {
3657 restoreStackSize(stackSize);
3658}
3659
3660rule__ExternAggregatorDefinition__Group__3__Impl
3661 @init {
3662 int stackSize = keepStackSize();
3663 }
3664:
3665(
3666 { before(grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3()); }
3667 LeftCurlyBracket
3668 { after(grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3()); }
3669)
3670;
3671finally {
3672 restoreStackSize(stackSize);
3673}
3674
3675rule__ExternAggregatorDefinition__Group__4
3676 @init {
3677 int stackSize = keepStackSize();
3678 }
3679:
3680 rule__ExternAggregatorDefinition__Group__4__Impl
3681 rule__ExternAggregatorDefinition__Group__5
3682;
3683finally {
3684 restoreStackSize(stackSize);
3685}
3686
3687rule__ExternAggregatorDefinition__Group__4__Impl
3688 @init {
3689 int stackSize = keepStackSize();
3690 }
3691:
3692(
3693 { before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeAssignment_4()); }
3694 (rule__ExternAggregatorDefinition__InputTypeAssignment_4)
3695 { after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeAssignment_4()); }
3696)
3697;
3698finally {
3699 restoreStackSize(stackSize);
3700}
3701
3702rule__ExternAggregatorDefinition__Group__5
3703 @init {
3704 int stackSize = keepStackSize();
3705 }
3706:
3707 rule__ExternAggregatorDefinition__Group__5__Impl
3708 rule__ExternAggregatorDefinition__Group__6
3709;
3710finally {
3711 restoreStackSize(stackSize);
3712}
3713
3714rule__ExternAggregatorDefinition__Group__5__Impl
3715 @init {
3716 int stackSize = keepStackSize();
3717 }
3718:
3719(
3720 { before(grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5()); }
3721 FullStopFullStopFullStop
3722 { after(grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5()); }
3723)
3724;
3725finally {
3726 restoreStackSize(stackSize);
3727}
3728
3729rule__ExternAggregatorDefinition__Group__6
3730 @init {
3731 int stackSize = keepStackSize();
3732 }
3733:
3734 rule__ExternAggregatorDefinition__Group__6__Impl
3735;
3736finally {
3737 restoreStackSize(stackSize);
3738}
3739
3740rule__ExternAggregatorDefinition__Group__6__Impl
3741 @init {
3742 int stackSize = keepStackSize();
3743 }
3744:
3745(
3746 { before(grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6()); }
3747 RightCurlyBracket
3748 { after(grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6()); }
3749)
3750;
3751finally {
3752 restoreStackSize(stackSize);
3753}
3754
3755
3756rule__ExternDatatypeDefinition__Group__0
3757 @init {
3758 int stackSize = keepStackSize();
3759 }
3760:
3761 rule__ExternDatatypeDefinition__Group__0__Impl
3762 rule__ExternDatatypeDefinition__Group__1
3763;
3764finally {
3765 restoreStackSize(stackSize);
3766}
3767
3768rule__ExternDatatypeDefinition__Group__0__Impl
3769 @init {
3770 int stackSize = keepStackSize();
3771 }
3772:
3773(
3774 { before(grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0()); }
3775 Extern
3776 { after(grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0()); }
3777)
3778;
3779finally {
3780 restoreStackSize(stackSize);
3781}
3782
3783rule__ExternDatatypeDefinition__Group__1
3784 @init {
3785 int stackSize = keepStackSize();
3786 }
3787:
3788 rule__ExternDatatypeDefinition__Group__1__Impl
3789 rule__ExternDatatypeDefinition__Group__2
3790;
3791finally {
3792 restoreStackSize(stackSize);
3793}
3794
3795rule__ExternDatatypeDefinition__Group__1__Impl
3796 @init {
3797 int stackSize = keepStackSize();
3798 }
3799:
3800(
3801 { before(grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1()); }
3802 Datatype
3803 { after(grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1()); }
3804)
3805;
3806finally {
3807 restoreStackSize(stackSize);
3808}
3809
3810rule__ExternDatatypeDefinition__Group__2
3811 @init {
3812 int stackSize = keepStackSize();
3813 }
3814:
3815 rule__ExternDatatypeDefinition__Group__2__Impl
3816 rule__ExternDatatypeDefinition__Group__3
3817;
3818finally {
3819 restoreStackSize(stackSize);
3820}
3821
3822rule__ExternDatatypeDefinition__Group__2__Impl
3823 @init {
3824 int stackSize = keepStackSize();
3825 }
3826:
3827(
3828 { before(grammarAccess.getExternDatatypeDefinitionAccess().getNameAssignment_2()); }
3829 (rule__ExternDatatypeDefinition__NameAssignment_2)
3830 { after(grammarAccess.getExternDatatypeDefinitionAccess().getNameAssignment_2()); }
3831)
3832;
3833finally {
3834 restoreStackSize(stackSize);
3835}
3836
3837rule__ExternDatatypeDefinition__Group__3
3838 @init {
3839 int stackSize = keepStackSize();
3840 }
3841:
3842 rule__ExternDatatypeDefinition__Group__3__Impl
3843;
3844finally {
3845 restoreStackSize(stackSize);
3846}
3847
3848rule__ExternDatatypeDefinition__Group__3__Impl
3849 @init {
3850 int stackSize = keepStackSize();
3851 }
3852:
3853(
3854 { before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3()); }
3855 (rule__ExternDatatypeDefinition__Group_3__0)
3856 { after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3()); }
3857)
3858;
3859finally {
3860 restoreStackSize(stackSize);
3861}
3862
3863
3864rule__ExternDatatypeDefinition__Group_3__0
3865 @init {
3866 int stackSize = keepStackSize();
3867 }
3868:
3869 rule__ExternDatatypeDefinition__Group_3__0__Impl
3870 rule__ExternDatatypeDefinition__Group_3__1
3871;
3872finally {
3873 restoreStackSize(stackSize);
3874}
3875
3876rule__ExternDatatypeDefinition__Group_3__0__Impl
3877 @init {
3878 int stackSize = keepStackSize();
3879 }
3880:
3881(
3882 { before(grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0()); }
3883 Extends
3884 { after(grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0()); }
3885)
3886;
3887finally {
3888 restoreStackSize(stackSize);
3889}
3890
3891rule__ExternDatatypeDefinition__Group_3__1
3892 @init {
3893 int stackSize = keepStackSize();
3894 }
3895:
3896 rule__ExternDatatypeDefinition__Group_3__1__Impl
3897 rule__ExternDatatypeDefinition__Group_3__2
3898;
3899finally {
3900 restoreStackSize(stackSize);
3901}
3902
3903rule__ExternDatatypeDefinition__Group_3__1__Impl
3904 @init {
3905 int stackSize = keepStackSize();
3906 }
3907:
3908(
3909 { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_1()); }
3910 (rule__ExternDatatypeDefinition__SupertypesAssignment_3_1)
3911 { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_1()); }
3912)
3913;
3914finally {
3915 restoreStackSize(stackSize);
3916}
3917
3918rule__ExternDatatypeDefinition__Group_3__2
3919 @init {
3920 int stackSize = keepStackSize();
3921 }
3922:
3923 rule__ExternDatatypeDefinition__Group_3__2__Impl
3924;
3925finally {
3926 restoreStackSize(stackSize);
3927}
3928
3929rule__ExternDatatypeDefinition__Group_3__2__Impl
3930 @init {
3931 int stackSize = keepStackSize();
3932 }
3933:
3934(
3935 { before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3_2()); }
3936 (rule__ExternDatatypeDefinition__Group_3_2__0)*
3937 { after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3_2()); }
3938)
3939;
3940finally {
3941 restoreStackSize(stackSize);
3942}
3943
3944
3945rule__ExternDatatypeDefinition__Group_3_2__0
3946 @init {
3947 int stackSize = keepStackSize();
3948 }
3949:
3950 rule__ExternDatatypeDefinition__Group_3_2__0__Impl
3951 rule__ExternDatatypeDefinition__Group_3_2__1
3952;
3953finally {
3954 restoreStackSize(stackSize);
3955}
3956
3957rule__ExternDatatypeDefinition__Group_3_2__0__Impl
3958 @init {
3959 int stackSize = keepStackSize();
3960 }
3961:
3962(
3963 { before(grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0()); }
3964 Comma
3965 { after(grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0()); }
3966)
3967;
3968finally {
3969 restoreStackSize(stackSize);
3970}
3971
3972rule__ExternDatatypeDefinition__Group_3_2__1
3973 @init {
3974 int stackSize = keepStackSize();
3975 }
3976:
3977 rule__ExternDatatypeDefinition__Group_3_2__1__Impl
3978;
3979finally {
3980 restoreStackSize(stackSize);
3981}
3982
3983rule__ExternDatatypeDefinition__Group_3_2__1__Impl
3984 @init {
3985 int stackSize = keepStackSize();
3986 }
3987:
3988(
3989 { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_2_1()); }
3990 (rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1)
3991 { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_2_1()); }
3992)
3993;
3994finally {
3995 restoreStackSize(stackSize);
3996}
3997
3998
3999rule__Variable__Group__0
4000 @init {
4001 int stackSize = keepStackSize();
4002 }
4003:
4004 rule__Variable__Group__0__Impl
4005 rule__Variable__Group__1
4006;
4007finally {
4008 restoreStackSize(stackSize);
4009}
4010
4011rule__Variable__Group__0__Impl
4012 @init {
4013 int stackSize = keepStackSize();
4014 }
4015:
4016(
4017 { before(grammarAccess.getVariableAccess().getTypeAssignment_0()); }
4018 (rule__Variable__TypeAssignment_0)?
4019 { after(grammarAccess.getVariableAccess().getTypeAssignment_0()); }
4020)
4021;
4022finally {
4023 restoreStackSize(stackSize);
4024}
4025
4026rule__Variable__Group__1
4027 @init {
4028 int stackSize = keepStackSize();
4029 }
4030:
4031 rule__Variable__Group__1__Impl
4032;
4033finally {
4034 restoreStackSize(stackSize);
4035}
4036
4037rule__Variable__Group__1__Impl
4038 @init {
4039 int stackSize = keepStackSize();
4040 }
4041:
4042(
4043 { before(grammarAccess.getVariableAccess().getNameAssignment_1()); }
4044 (rule__Variable__NameAssignment_1)
4045 { after(grammarAccess.getVariableAccess().getNameAssignment_1()); }
3367) 4046)
3368; 4047;
3369finally { 4048finally {
@@ -3533,6 +4212,411 @@ finally {
3533} 4212}
3534 4213
3535 4214
4215rule__Let__Group__0
4216 @init {
4217 int stackSize = keepStackSize();
4218 }
4219:
4220 rule__Let__Group__0__Impl
4221 rule__Let__Group__1
4222;
4223finally {
4224 restoreStackSize(stackSize);
4225}
4226
4227rule__Let__Group__0__Impl
4228 @init {
4229 int stackSize = keepStackSize();
4230 }
4231:
4232(
4233 { before(grammarAccess.getLetAccess().getLetKeyword_0()); }
4234 Let
4235 { after(grammarAccess.getLetAccess().getLetKeyword_0()); }
4236)
4237;
4238finally {
4239 restoreStackSize(stackSize);
4240}
4241
4242rule__Let__Group__1
4243 @init {
4244 int stackSize = keepStackSize();
4245 }
4246:
4247 rule__Let__Group__1__Impl
4248 rule__Let__Group__2
4249;
4250finally {
4251 restoreStackSize(stackSize);
4252}
4253
4254rule__Let__Group__1__Impl
4255 @init {
4256 int stackSize = keepStackSize();
4257 }
4258:
4259(
4260 { before(grammarAccess.getLetAccess().getBindingsAssignment_1()); }
4261 (rule__Let__BindingsAssignment_1)
4262 { after(grammarAccess.getLetAccess().getBindingsAssignment_1()); }
4263)
4264;
4265finally {
4266 restoreStackSize(stackSize);
4267}
4268
4269rule__Let__Group__2
4270 @init {
4271 int stackSize = keepStackSize();
4272 }
4273:
4274 rule__Let__Group__2__Impl
4275 rule__Let__Group__3
4276;
4277finally {
4278 restoreStackSize(stackSize);
4279}
4280
4281rule__Let__Group__2__Impl
4282 @init {
4283 int stackSize = keepStackSize();
4284 }
4285:
4286(
4287 { before(grammarAccess.getLetAccess().getGroup_2()); }
4288 (rule__Let__Group_2__0)*
4289 { after(grammarAccess.getLetAccess().getGroup_2()); }
4290)
4291;
4292finally {
4293 restoreStackSize(stackSize);
4294}
4295
4296rule__Let__Group__3
4297 @init {
4298 int stackSize = keepStackSize();
4299 }
4300:
4301 rule__Let__Group__3__Impl
4302 rule__Let__Group__4
4303;
4304finally {
4305 restoreStackSize(stackSize);
4306}
4307
4308rule__Let__Group__3__Impl
4309 @init {
4310 int stackSize = keepStackSize();
4311 }
4312:
4313(
4314 { before(grammarAccess.getLetAccess().getInKeyword_3()); }
4315 In
4316 { after(grammarAccess.getLetAccess().getInKeyword_3()); }
4317)
4318;
4319finally {
4320 restoreStackSize(stackSize);
4321}
4322
4323rule__Let__Group__4
4324 @init {
4325 int stackSize = keepStackSize();
4326 }
4327:
4328 rule__Let__Group__4__Impl
4329;
4330finally {
4331 restoreStackSize(stackSize);
4332}
4333
4334rule__Let__Group__4__Impl
4335 @init {
4336 int stackSize = keepStackSize();
4337 }
4338:
4339(
4340 { before(grammarAccess.getLetAccess().getBodyAssignment_4()); }
4341 (rule__Let__BodyAssignment_4)
4342 { after(grammarAccess.getLetAccess().getBodyAssignment_4()); }
4343)
4344;
4345finally {
4346 restoreStackSize(stackSize);
4347}
4348
4349
4350rule__Let__Group_2__0
4351 @init {
4352 int stackSize = keepStackSize();
4353 }
4354:
4355 rule__Let__Group_2__0__Impl
4356 rule__Let__Group_2__1
4357;
4358finally {
4359 restoreStackSize(stackSize);
4360}
4361
4362rule__Let__Group_2__0__Impl
4363 @init {
4364 int stackSize = keepStackSize();
4365 }
4366:
4367(
4368 { before(grammarAccess.getLetAccess().getCommaKeyword_2_0()); }
4369 Comma
4370 { after(grammarAccess.getLetAccess().getCommaKeyword_2_0()); }
4371)
4372;
4373finally {
4374 restoreStackSize(stackSize);
4375}
4376
4377rule__Let__Group_2__1
4378 @init {
4379 int stackSize = keepStackSize();
4380 }
4381:
4382 rule__Let__Group_2__1__Impl
4383;
4384finally {
4385 restoreStackSize(stackSize);
4386}
4387
4388rule__Let__Group_2__1__Impl
4389 @init {
4390 int stackSize = keepStackSize();
4391 }
4392:
4393(
4394 { before(grammarAccess.getLetAccess().getBindingsAssignment_2_1()); }
4395 (rule__Let__BindingsAssignment_2_1)
4396 { after(grammarAccess.getLetAccess().getBindingsAssignment_2_1()); }
4397)
4398;
4399finally {
4400 restoreStackSize(stackSize);
4401}
4402
4403
4404rule__LetBinding__Group__0
4405 @init {
4406 int stackSize = keepStackSize();
4407 }
4408:
4409 rule__LetBinding__Group__0__Impl
4410 rule__LetBinding__Group__1
4411;
4412finally {
4413 restoreStackSize(stackSize);
4414}
4415
4416rule__LetBinding__Group__0__Impl
4417 @init {
4418 int stackSize = keepStackSize();
4419 }
4420:
4421(
4422 { before(grammarAccess.getLetBindingAccess().getVariableAssignment_0()); }
4423 (rule__LetBinding__VariableAssignment_0)
4424 { after(grammarAccess.getLetBindingAccess().getVariableAssignment_0()); }
4425)
4426;
4427finally {
4428 restoreStackSize(stackSize);
4429}
4430
4431rule__LetBinding__Group__1
4432 @init {
4433 int stackSize = keepStackSize();
4434 }
4435:
4436 rule__LetBinding__Group__1__Impl
4437 rule__LetBinding__Group__2
4438;
4439finally {
4440 restoreStackSize(stackSize);
4441}
4442
4443rule__LetBinding__Group__1__Impl
4444 @init {
4445 int stackSize = keepStackSize();
4446 }
4447:
4448(
4449 { before(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1()); }
4450 EqualsSign
4451 { after(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1()); }
4452)
4453;
4454finally {
4455 restoreStackSize(stackSize);
4456}
4457
4458rule__LetBinding__Group__2
4459 @init {
4460 int stackSize = keepStackSize();
4461 }
4462:
4463 rule__LetBinding__Group__2__Impl
4464;
4465finally {
4466 restoreStackSize(stackSize);
4467}
4468
4469rule__LetBinding__Group__2__Impl
4470 @init {
4471 int stackSize = keepStackSize();
4472 }
4473:
4474(
4475 { before(grammarAccess.getLetBindingAccess().getValueAssignment_2()); }
4476 (rule__LetBinding__ValueAssignment_2)
4477 { after(grammarAccess.getLetBindingAccess().getValueAssignment_2()); }
4478)
4479;
4480finally {
4481 restoreStackSize(stackSize);
4482}
4483
4484
4485rule__ImplicationExpression__Group__0
4486 @init {
4487 int stackSize = keepStackSize();
4488 }
4489:
4490 rule__ImplicationExpression__Group__0__Impl
4491 rule__ImplicationExpression__Group__1
4492;
4493finally {
4494 restoreStackSize(stackSize);
4495}
4496
4497rule__ImplicationExpression__Group__0__Impl
4498 @init {
4499 int stackSize = keepStackSize();
4500 }
4501:
4502(
4503 { before(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0()); }
4504 ruleDisjunctiveExpression
4505 { after(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0()); }
4506)
4507;
4508finally {
4509 restoreStackSize(stackSize);
4510}
4511
4512rule__ImplicationExpression__Group__1
4513 @init {
4514 int stackSize = keepStackSize();
4515 }
4516:
4517 rule__ImplicationExpression__Group__1__Impl
4518;
4519finally {
4520 restoreStackSize(stackSize);
4521}
4522
4523rule__ImplicationExpression__Group__1__Impl
4524 @init {
4525 int stackSize = keepStackSize();
4526 }
4527:
4528(
4529 { before(grammarAccess.getImplicationExpressionAccess().getGroup_1()); }
4530 (rule__ImplicationExpression__Group_1__0)?
4531 { after(grammarAccess.getImplicationExpressionAccess().getGroup_1()); }
4532)
4533;
4534finally {
4535 restoreStackSize(stackSize);
4536}
4537
4538
4539rule__ImplicationExpression__Group_1__0
4540 @init {
4541 int stackSize = keepStackSize();
4542 }
4543:
4544 rule__ImplicationExpression__Group_1__0__Impl
4545 rule__ImplicationExpression__Group_1__1
4546;
4547finally {
4548 restoreStackSize(stackSize);
4549}
4550
4551rule__ImplicationExpression__Group_1__0__Impl
4552 @init {
4553 int stackSize = keepStackSize();
4554 }
4555:
4556(
4557 { before(grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0()); }
4558 ()
4559 { after(grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0()); }
4560)
4561;
4562finally {
4563 restoreStackSize(stackSize);
4564}
4565
4566rule__ImplicationExpression__Group_1__1
4567 @init {
4568 int stackSize = keepStackSize();
4569 }
4570:
4571 rule__ImplicationExpression__Group_1__1__Impl
4572 rule__ImplicationExpression__Group_1__2
4573;
4574finally {
4575 restoreStackSize(stackSize);
4576}
4577
4578rule__ImplicationExpression__Group_1__1__Impl
4579 @init {
4580 int stackSize = keepStackSize();
4581 }
4582:
4583(
4584 { before(grammarAccess.getImplicationExpressionAccess().getOpAssignment_1_1()); }
4585 (rule__ImplicationExpression__OpAssignment_1_1)
4586 { after(grammarAccess.getImplicationExpressionAccess().getOpAssignment_1_1()); }
4587)
4588;
4589finally {
4590 restoreStackSize(stackSize);
4591}
4592
4593rule__ImplicationExpression__Group_1__2
4594 @init {
4595 int stackSize = keepStackSize();
4596 }
4597:
4598 rule__ImplicationExpression__Group_1__2__Impl
4599;
4600finally {
4601 restoreStackSize(stackSize);
4602}
4603
4604rule__ImplicationExpression__Group_1__2__Impl
4605 @init {
4606 int stackSize = keepStackSize();
4607 }
4608:
4609(
4610 { before(grammarAccess.getImplicationExpressionAccess().getRightAssignment_1_2()); }
4611 (rule__ImplicationExpression__RightAssignment_1_2)
4612 { after(grammarAccess.getImplicationExpressionAccess().getRightAssignment_1_2()); }
4613)
4614;
4615finally {
4616 restoreStackSize(stackSize);
4617}
4618
4619
3536rule__DisjunctiveExpression__Group__0 4620rule__DisjunctiveExpression__Group__0
3537 @init { 4621 @init {
3538 int stackSize = keepStackSize(); 4622 int stackSize = keepStackSize();
@@ -4564,9 +5648,9 @@ rule__ExponentialExpression__Group__0__Impl
4564 } 5648 }
4565: 5649:
4566( 5650(
4567 { before(grammarAccess.getExponentialExpressionAccess().getUnaryExpressionParserRuleCall_0()); } 5651 { before(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); }
4568 ruleUnaryExpression 5652 ruleCastExpression
4569 { after(grammarAccess.getExponentialExpressionAccess().getUnaryExpressionParserRuleCall_0()); } 5653 { after(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); }
4570) 5654)
4571; 5655;
4572finally { 5656finally {
@@ -4681,6 +5765,141 @@ finally {
4681} 5765}
4682 5766
4683 5767
5768rule__CastExpression__Group__0
5769 @init {
5770 int stackSize = keepStackSize();
5771 }
5772:
5773 rule__CastExpression__Group__0__Impl
5774 rule__CastExpression__Group__1
5775;
5776finally {
5777 restoreStackSize(stackSize);
5778}
5779
5780rule__CastExpression__Group__0__Impl
5781 @init {
5782 int stackSize = keepStackSize();
5783 }
5784:
5785(
5786 { before(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); }
5787 ruleUnaryExpression
5788 { after(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); }
5789)
5790;
5791finally {
5792 restoreStackSize(stackSize);
5793}
5794
5795rule__CastExpression__Group__1
5796 @init {
5797 int stackSize = keepStackSize();
5798 }
5799:
5800 rule__CastExpression__Group__1__Impl
5801;
5802finally {
5803 restoreStackSize(stackSize);
5804}
5805
5806rule__CastExpression__Group__1__Impl
5807 @init {
5808 int stackSize = keepStackSize();
5809 }
5810:
5811(
5812 { before(grammarAccess.getCastExpressionAccess().getGroup_1()); }
5813 (rule__CastExpression__Group_1__0)?
5814 { after(grammarAccess.getCastExpressionAccess().getGroup_1()); }
5815)
5816;
5817finally {
5818 restoreStackSize(stackSize);
5819}
5820
5821
5822rule__CastExpression__Group_1__0
5823 @init {
5824 int stackSize = keepStackSize();
5825 }
5826:
5827 rule__CastExpression__Group_1__0__Impl
5828 rule__CastExpression__Group_1__1
5829;
5830finally {
5831 restoreStackSize(stackSize);
5832}
5833
5834rule__CastExpression__Group_1__0__Impl
5835 @init {
5836 int stackSize = keepStackSize();
5837 }
5838:
5839(
5840 { before(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); }
5841 ()
5842 { after(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); }
5843)
5844;
5845finally {
5846 restoreStackSize(stackSize);
5847}
5848
5849rule__CastExpression__Group_1__1
5850 @init {
5851 int stackSize = keepStackSize();
5852 }
5853:
5854 rule__CastExpression__Group_1__1__Impl
5855 rule__CastExpression__Group_1__2
5856;
5857finally {
5858 restoreStackSize(stackSize);
5859}
5860
5861rule__CastExpression__Group_1__1__Impl
5862 @init {
5863 int stackSize = keepStackSize();
5864 }
5865:
5866(
5867 { before(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); }
5868 As
5869 { after(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); }
5870)
5871;
5872finally {
5873 restoreStackSize(stackSize);
5874}
5875
5876rule__CastExpression__Group_1__2
5877 @init {
5878 int stackSize = keepStackSize();
5879 }
5880:
5881 rule__CastExpression__Group_1__2__Impl
5882;
5883finally {
5884 restoreStackSize(stackSize);
5885}
5886
5887rule__CastExpression__Group_1__2__Impl
5888 @init {
5889 int stackSize = keepStackSize();
5890 }
5891:
5892(
5893 { before(grammarAccess.getCastExpressionAccess().getTypeAssignment_1_2()); }
5894 (rule__CastExpression__TypeAssignment_1_2)
5895 { after(grammarAccess.getCastExpressionAccess().getTypeAssignment_1_2()); }
5896)
5897;
5898finally {
5899 restoreStackSize(stackSize);
5900}
5901
5902
4684rule__UnaryExpression__Group_1__0 5903rule__UnaryExpression__Group_1__0
4685 @init { 5904 @init {
4686 int stackSize = keepStackSize(); 5905 int stackSize = keepStackSize();
@@ -4762,107 +5981,350 @@ finally {
4762} 5981}
4763 5982
4764 5983
4765rule__Count__Group__0 5984rule__LocalVariables__Group__0
5985 @init {
5986 int stackSize = keepStackSize();
5987 }
5988:
5989 rule__LocalVariables__Group__0__Impl
5990 rule__LocalVariables__Group__1
5991;
5992finally {
5993 restoreStackSize(stackSize);
5994}
5995
5996rule__LocalVariables__Group__0__Impl
5997 @init {
5998 int stackSize = keepStackSize();
5999 }
6000:
6001(
6002 { before(grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0()); }
6003 ()
6004 { after(grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0()); }
6005)
6006;
6007finally {
6008 restoreStackSize(stackSize);
6009}
6010
6011rule__LocalVariables__Group__1
6012 @init {
6013 int stackSize = keepStackSize();
6014 }
6015:
6016 rule__LocalVariables__Group__1__Impl
6017 rule__LocalVariables__Group__2
6018;
6019finally {
6020 restoreStackSize(stackSize);
6021}
6022
6023rule__LocalVariables__Group__1__Impl
6024 @init {
6025 int stackSize = keepStackSize();
6026 }
6027:
6028(
6029 { before(grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1()); }
6030 LeftSquareBracket
6031 { after(grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1()); }
6032)
6033;
6034finally {
6035 restoreStackSize(stackSize);
6036}
6037
6038rule__LocalVariables__Group__2
6039 @init {
6040 int stackSize = keepStackSize();
6041 }
6042:
6043 rule__LocalVariables__Group__2__Impl
6044 rule__LocalVariables__Group__3
6045;
6046finally {
6047 restoreStackSize(stackSize);
6048}
6049
6050rule__LocalVariables__Group__2__Impl
6051 @init {
6052 int stackSize = keepStackSize();
6053 }
6054:
6055(
6056 { before(grammarAccess.getLocalVariablesAccess().getGroup_2()); }
6057 (rule__LocalVariables__Group_2__0)?
6058 { after(grammarAccess.getLocalVariablesAccess().getGroup_2()); }
6059)
6060;
6061finally {
6062 restoreStackSize(stackSize);
6063}
6064
6065rule__LocalVariables__Group__3
4766 @init { 6066 @init {
4767 int stackSize = keepStackSize(); 6067 int stackSize = keepStackSize();
4768 } 6068 }
4769: 6069:
4770 rule__Count__Group__0__Impl 6070 rule__LocalVariables__Group__3__Impl
4771 rule__Count__Group__1
4772; 6071;
4773finally { 6072finally {
4774 restoreStackSize(stackSize); 6073 restoreStackSize(stackSize);
4775} 6074}
4776 6075
4777rule__Count__Group__0__Impl 6076rule__LocalVariables__Group__3__Impl
4778 @init { 6077 @init {
4779 int stackSize = keepStackSize(); 6078 int stackSize = keepStackSize();
4780 } 6079 }
4781: 6080:
4782( 6081(
4783 { before(grammarAccess.getCountAccess().getCountKeyword_0()); } 6082 { before(grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3()); }
4784 Count 6083 RightSquareBracket
4785 { after(grammarAccess.getCountAccess().getCountKeyword_0()); } 6084 { after(grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3()); }
4786) 6085)
4787; 6086;
4788finally { 6087finally {
4789 restoreStackSize(stackSize); 6088 restoreStackSize(stackSize);
4790} 6089}
4791 6090
4792rule__Count__Group__1 6091
6092rule__LocalVariables__Group_2__0
4793 @init { 6093 @init {
4794 int stackSize = keepStackSize(); 6094 int stackSize = keepStackSize();
4795 } 6095 }
4796: 6096:
4797 rule__Count__Group__1__Impl 6097 rule__LocalVariables__Group_2__0__Impl
4798 rule__Count__Group__2 6098 rule__LocalVariables__Group_2__1
4799; 6099;
4800finally { 6100finally {
4801 restoreStackSize(stackSize); 6101 restoreStackSize(stackSize);
4802} 6102}
4803 6103
4804rule__Count__Group__1__Impl 6104rule__LocalVariables__Group_2__0__Impl
4805 @init { 6105 @init {
4806 int stackSize = keepStackSize(); 6106 int stackSize = keepStackSize();
4807 } 6107 }
4808: 6108:
4809( 6109(
4810 { before(grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); } 6110 { before(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_0()); }
6111 (rule__LocalVariables__VariablesAssignment_2_0)
6112 { after(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_0()); }
6113)
6114;
6115finally {
6116 restoreStackSize(stackSize);
6117}
6118
6119rule__LocalVariables__Group_2__1
6120 @init {
6121 int stackSize = keepStackSize();
6122 }
6123:
6124 rule__LocalVariables__Group_2__1__Impl
6125;
6126finally {
6127 restoreStackSize(stackSize);
6128}
6129
6130rule__LocalVariables__Group_2__1__Impl
6131 @init {
6132 int stackSize = keepStackSize();
6133 }
6134:
6135(
6136 { before(grammarAccess.getLocalVariablesAccess().getGroup_2_1()); }
6137 (rule__LocalVariables__Group_2_1__0)*
6138 { after(grammarAccess.getLocalVariablesAccess().getGroup_2_1()); }
6139)
6140;
6141finally {
6142 restoreStackSize(stackSize);
6143}
6144
6145
6146rule__LocalVariables__Group_2_1__0
6147 @init {
6148 int stackSize = keepStackSize();
6149 }
6150:
6151 rule__LocalVariables__Group_2_1__0__Impl
6152 rule__LocalVariables__Group_2_1__1
6153;
6154finally {
6155 restoreStackSize(stackSize);
6156}
6157
6158rule__LocalVariables__Group_2_1__0__Impl
6159 @init {
6160 int stackSize = keepStackSize();
6161 }
6162:
6163(
6164 { before(grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0()); }
6165 Comma
6166 { after(grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0()); }
6167)
6168;
6169finally {
6170 restoreStackSize(stackSize);
6171}
6172
6173rule__LocalVariables__Group_2_1__1
6174 @init {
6175 int stackSize = keepStackSize();
6176 }
6177:
6178 rule__LocalVariables__Group_2_1__1__Impl
6179;
6180finally {
6181 restoreStackSize(stackSize);
6182}
6183
6184rule__LocalVariables__Group_2_1__1__Impl
6185 @init {
6186 int stackSize = keepStackSize();
6187 }
6188:
6189(
6190 { before(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_1_1()); }
6191 (rule__LocalVariables__VariablesAssignment_2_1_1)
6192 { after(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_1_1()); }
6193)
6194;
6195finally {
6196 restoreStackSize(stackSize);
6197}
6198
6199
6200rule__QuantifiedExpression__Group__0
6201 @init {
6202 int stackSize = keepStackSize();
6203 }
6204:
6205 rule__QuantifiedExpression__Group__0__Impl
6206 rule__QuantifiedExpression__Group__1
6207;
6208finally {
6209 restoreStackSize(stackSize);
6210}
6211
6212rule__QuantifiedExpression__Group__0__Impl
6213 @init {
6214 int stackSize = keepStackSize();
6215 }
6216:
6217(
6218 { before(grammarAccess.getQuantifiedExpressionAccess().getQuantifierAssignment_0()); }
6219 (rule__QuantifiedExpression__QuantifierAssignment_0)
6220 { after(grammarAccess.getQuantifiedExpressionAccess().getQuantifierAssignment_0()); }
6221)
6222;
6223finally {
6224 restoreStackSize(stackSize);
6225}
6226
6227rule__QuantifiedExpression__Group__1
6228 @init {
6229 int stackSize = keepStackSize();
6230 }
6231:
6232 rule__QuantifiedExpression__Group__1__Impl
6233 rule__QuantifiedExpression__Group__2
6234;
6235finally {
6236 restoreStackSize(stackSize);
6237}
6238
6239rule__QuantifiedExpression__Group__1__Impl
6240 @init {
6241 int stackSize = keepStackSize();
6242 }
6243:
6244(
6245 { before(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesAssignment_1()); }
6246 (rule__QuantifiedExpression__LocalVariablesAssignment_1)?
6247 { after(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesAssignment_1()); }
6248)
6249;
6250finally {
6251 restoreStackSize(stackSize);
6252}
6253
6254rule__QuantifiedExpression__Group__2
6255 @init {
6256 int stackSize = keepStackSize();
6257 }
6258:
6259 rule__QuantifiedExpression__Group__2__Impl
6260 rule__QuantifiedExpression__Group__3
6261;
6262finally {
6263 restoreStackSize(stackSize);
6264}
6265
6266rule__QuantifiedExpression__Group__2__Impl
6267 @init {
6268 int stackSize = keepStackSize();
6269 }
6270:
6271(
6272 { before(grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2()); }
4811 LeftCurlyBracket 6273 LeftCurlyBracket
4812 { after(grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); } 6274 { after(grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2()); }
4813) 6275)
4814; 6276;
4815finally { 6277finally {
4816 restoreStackSize(stackSize); 6278 restoreStackSize(stackSize);
4817} 6279}
4818 6280
4819rule__Count__Group__2 6281rule__QuantifiedExpression__Group__3
4820 @init { 6282 @init {
4821 int stackSize = keepStackSize(); 6283 int stackSize = keepStackSize();
4822 } 6284 }
4823: 6285:
4824 rule__Count__Group__2__Impl 6286 rule__QuantifiedExpression__Group__3__Impl
4825 rule__Count__Group__3 6287 rule__QuantifiedExpression__Group__4
4826; 6288;
4827finally { 6289finally {
4828 restoreStackSize(stackSize); 6290 restoreStackSize(stackSize);
4829} 6291}
4830 6292
4831rule__Count__Group__2__Impl 6293rule__QuantifiedExpression__Group__3__Impl
4832 @init { 6294 @init {
4833 int stackSize = keepStackSize(); 6295 int stackSize = keepStackSize();
4834 } 6296 }
4835: 6297:
4836( 6298(
4837 { before(grammarAccess.getCountAccess().getBodyAssignment_2()); } 6299 { before(grammarAccess.getQuantifiedExpressionAccess().getBodyAssignment_3()); }
4838 (rule__Count__BodyAssignment_2) 6300 (rule__QuantifiedExpression__BodyAssignment_3)
4839 { after(grammarAccess.getCountAccess().getBodyAssignment_2()); } 6301 { after(grammarAccess.getQuantifiedExpressionAccess().getBodyAssignment_3()); }
4840) 6302)
4841; 6303;
4842finally { 6304finally {
4843 restoreStackSize(stackSize); 6305 restoreStackSize(stackSize);
4844} 6306}
4845 6307
4846rule__Count__Group__3 6308rule__QuantifiedExpression__Group__4
4847 @init { 6309 @init {
4848 int stackSize = keepStackSize(); 6310 int stackSize = keepStackSize();
4849 } 6311 }
4850: 6312:
4851 rule__Count__Group__3__Impl 6313 rule__QuantifiedExpression__Group__4__Impl
4852; 6314;
4853finally { 6315finally {
4854 restoreStackSize(stackSize); 6316 restoreStackSize(stackSize);
4855} 6317}
4856 6318
4857rule__Count__Group__3__Impl 6319rule__QuantifiedExpression__Group__4__Impl
4858 @init { 6320 @init {
4859 int stackSize = keepStackSize(); 6321 int stackSize = keepStackSize();
4860 } 6322 }
4861: 6323:
4862( 6324(
4863 { before(grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); } 6325 { before(grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4()); }
4864 RightCurlyBracket 6326 RightCurlyBracket
4865 { after(grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); } 6327 { after(grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4()); }
4866) 6328)
4867; 6329;
4868finally { 6330finally {
@@ -4915,9 +6377,9 @@ rule__Aggregation__Group__1__Impl
4915 } 6377 }
4916: 6378:
4917( 6379(
4918 { before(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); } 6380 { before(grammarAccess.getAggregationAccess().getLocalVariablesAssignment_1()); }
4919 LeftCurlyBracket 6381 (rule__Aggregation__LocalVariablesAssignment_1)?
4920 { after(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); } 6382 { after(grammarAccess.getAggregationAccess().getLocalVariablesAssignment_1()); }
4921) 6383)
4922; 6384;
4923finally { 6385finally {
@@ -4942,9 +6404,9 @@ rule__Aggregation__Group__2__Impl
4942 } 6404 }
4943: 6405:
4944( 6406(
4945 { before(grammarAccess.getAggregationAccess().getBodyAssignment_2()); } 6407 { before(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2()); }
4946 (rule__Aggregation__BodyAssignment_2) 6408 LeftCurlyBracket
4947 { after(grammarAccess.getAggregationAccess().getBodyAssignment_2()); } 6409 { after(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2()); }
4948) 6410)
4949; 6411;
4950finally { 6412finally {
@@ -4969,9 +6431,9 @@ rule__Aggregation__Group__3__Impl
4969 } 6431 }
4970: 6432:
4971( 6433(
4972 { before(grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); } 6434 { before(grammarAccess.getAggregationAccess().getBodyAssignment_3()); }
4973 VerticalLine 6435 (rule__Aggregation__BodyAssignment_3)
4974 { after(grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); } 6436 { after(grammarAccess.getAggregationAccess().getBodyAssignment_3()); }
4975) 6437)
4976; 6438;
4977finally { 6439finally {
@@ -4996,9 +6458,9 @@ rule__Aggregation__Group__4__Impl
4996 } 6458 }
4997: 6459:
4998( 6460(
4999 { before(grammarAccess.getAggregationAccess().getConditionAssignment_4()); } 6461 { before(grammarAccess.getAggregationAccess().getGroup_4()); }
5000 (rule__Aggregation__ConditionAssignment_4) 6462 (rule__Aggregation__Group_4__0)?
5001 { after(grammarAccess.getAggregationAccess().getConditionAssignment_4()); } 6463 { after(grammarAccess.getAggregationAccess().getGroup_4()); }
5002) 6464)
5003; 6465;
5004finally { 6466finally {
@@ -5032,6 +6494,60 @@ finally {
5032} 6494}
5033 6495
5034 6496
6497rule__Aggregation__Group_4__0
6498 @init {
6499 int stackSize = keepStackSize();
6500 }
6501:
6502 rule__Aggregation__Group_4__0__Impl
6503 rule__Aggregation__Group_4__1
6504;
6505finally {
6506 restoreStackSize(stackSize);
6507}
6508
6509rule__Aggregation__Group_4__0__Impl
6510 @init {
6511 int stackSize = keepStackSize();
6512 }
6513:
6514(
6515 { before(grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0()); }
6516 VerticalLine
6517 { after(grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0()); }
6518)
6519;
6520finally {
6521 restoreStackSize(stackSize);
6522}
6523
6524rule__Aggregation__Group_4__1
6525 @init {
6526 int stackSize = keepStackSize();
6527 }
6528:
6529 rule__Aggregation__Group_4__1__Impl
6530;
6531finally {
6532 restoreStackSize(stackSize);
6533}
6534
6535rule__Aggregation__Group_4__1__Impl
6536 @init {
6537 int stackSize = keepStackSize();
6538 }
6539:
6540(
6541 { before(grammarAccess.getAggregationAccess().getConditionAssignment_4_1()); }
6542 (rule__Aggregation__ConditionAssignment_4_1)
6543 { after(grammarAccess.getAggregationAccess().getConditionAssignment_4_1()); }
6544)
6545;
6546finally {
6547 restoreStackSize(stackSize);
6548}
6549
6550
5035rule__AtomicExpression__Group_4__0 6551rule__AtomicExpression__Group_4__0
5036 @init { 6552 @init {
5037 int stackSize = keepStackSize(); 6553 int stackSize = keepStackSize();
@@ -7639,15 +9155,15 @@ finally {
7639 restoreStackSize(stackSize); 9155 restoreStackSize(stackSize);
7640} 9156}
7641 9157
7642rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 9158rule__AssertionOrDefinition__RangeAssignment_1_0_2
7643 @init { 9159 @init {
7644 int stackSize = keepStackSize(); 9160 int stackSize = keepStackSize();
7645 } 9161 }
7646: 9162:
7647 ( 9163 (
7648 { before(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0()); } 9164 { before(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0()); }
7649 ruleExpression 9165 ruleExpression
7650 { after(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0()); } 9166 { after(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0()); }
7651 ) 9167 )
7652; 9168;
7653finally { 9169finally {
@@ -7850,60 +9366,79 @@ finally {
7850 restoreStackSize(stackSize); 9366 restoreStackSize(stackSize);
7851} 9367}
7852 9368
7853rule__ExternPredicateDefinition__HeadAssignment_1 9369rule__MetricDefinition__TypeAssignment_0
7854 @init { 9370 @init {
7855 int stackSize = keepStackSize(); 9371 int stackSize = keepStackSize();
7856 } 9372 }
7857: 9373:
7858 ( 9374 (
7859 { before(grammarAccess.getExternPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0()); } 9375 { before(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0()); }
7860 ruleCall 9376 (
7861 { after(grammarAccess.getExternPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0()); } 9377 { before(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); }
9378 ruleQualifiedName
9379 { after(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); }
9380 )
9381 { after(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0()); }
7862 ) 9382 )
7863; 9383;
7864finally { 9384finally {
7865 restoreStackSize(stackSize); 9385 restoreStackSize(stackSize);
7866} 9386}
7867 9387
7868rule__MetricDefinition__TypeAssignment_0 9388rule__MetricDefinition__HeadAssignment_1
7869 @init { 9389 @init {
7870 int stackSize = keepStackSize(); 9390 int stackSize = keepStackSize();
7871 } 9391 }
7872: 9392:
7873 ( 9393 (
7874 { before(grammarAccess.getMetricDefinitionAccess().getTypeMetricTypeEnumRuleCall_0_0()); } 9394 { before(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0()); }
7875 ruleMetricType 9395 ruleCall
7876 { after(grammarAccess.getMetricDefinitionAccess().getTypeMetricTypeEnumRuleCall_0_0()); } 9396 { after(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0()); }
7877 ) 9397 )
7878; 9398;
7879finally { 9399finally {
7880 restoreStackSize(stackSize); 9400 restoreStackSize(stackSize);
7881} 9401}
7882 9402
7883rule__MetricDefinition__HeadAssignment_1 9403rule__MetricDefinition__BodyAssignment_3
7884 @init { 9404 @init {
7885 int stackSize = keepStackSize(); 9405 int stackSize = keepStackSize();
7886 } 9406 }
7887: 9407:
7888 ( 9408 (
7889 { before(grammarAccess.getMetricDefinitionAccess().getHeadExpressionParserRuleCall_1_0()); } 9409 { before(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); }
7890 ruleExpression 9410 ruleExpression
7891 { after(grammarAccess.getMetricDefinitionAccess().getHeadExpressionParserRuleCall_1_0()); } 9411 { after(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); }
7892 ) 9412 )
7893; 9413;
7894finally { 9414finally {
7895 restoreStackSize(stackSize); 9415 restoreStackSize(stackSize);
7896} 9416}
7897 9417
7898rule__MetricDefinition__BodyAssignment_3 9418rule__ExternPredicateDefinition__NameAssignment_1
7899 @init { 9419 @init {
7900 int stackSize = keepStackSize(); 9420 int stackSize = keepStackSize();
7901 } 9421 }
7902: 9422:
7903 ( 9423 (
7904 { before(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } 9424 { before(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0()); }
7905 ruleExpression 9425 ruleQualifiedName
7906 { after(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } 9426 { after(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0()); }
9427 )
9428;
9429finally {
9430 restoreStackSize(stackSize);
9431}
9432
9433rule__ExternPredicateDefinition__ArgumentListAssignment_2
9434 @init {
9435 int stackSize = keepStackSize();
9436 }
9437:
9438 (
9439 { before(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0()); }
9440 ruleArgumentList
9441 { after(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0()); }
7907 ) 9442 )
7908; 9443;
7909finally { 9444finally {
@@ -7916,24 +9451,183 @@ rule__ExternMetricDefinition__TypeAssignment_1
7916 } 9451 }
7917: 9452:
7918 ( 9453 (
7919 { before(grammarAccess.getExternMetricDefinitionAccess().getTypeMetricTypeEnumRuleCall_1_0()); } 9454 { before(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0()); }
7920 ruleMetricType 9455 (
7921 { after(grammarAccess.getExternMetricDefinitionAccess().getTypeMetricTypeEnumRuleCall_1_0()); } 9456 { before(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); }
9457 ruleQualifiedName
9458 { after(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); }
9459 )
9460 { after(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0()); }
9461 )
9462;
9463finally {
9464 restoreStackSize(stackSize);
9465}
9466
9467rule__ExternMetricDefinition__NameAssignment_2
9468 @init {
9469 int stackSize = keepStackSize();
9470 }
9471:
9472 (
9473 { before(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); }
9474 ruleQualifiedName
9475 { after(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); }
7922 ) 9476 )
7923; 9477;
7924finally { 9478finally {
7925 restoreStackSize(stackSize); 9479 restoreStackSize(stackSize);
7926} 9480}
7927 9481
7928rule__ExternMetricDefinition__HeadAssignment_2 9482rule__ExternMetricDefinition__ArgumentListAssignment_3
7929 @init { 9483 @init {
7930 int stackSize = keepStackSize(); 9484 int stackSize = keepStackSize();
7931 } 9485 }
7932: 9486:
7933 ( 9487 (
7934 { before(grammarAccess.getExternMetricDefinitionAccess().getHeadCallParserRuleCall_2_0()); } 9488 { before(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0()); }
7935 ruleCall 9489 ruleArgumentList
7936 { after(grammarAccess.getExternMetricDefinitionAccess().getHeadCallParserRuleCall_2_0()); } 9490 { after(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0()); }
9491 )
9492;
9493finally {
9494 restoreStackSize(stackSize);
9495}
9496
9497rule__ExternAggregatorDefinition__TypeAssignment_1
9498 @init {
9499 int stackSize = keepStackSize();
9500 }
9501:
9502 (
9503 { before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0()); }
9504 (
9505 { before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); }
9506 ruleQualifiedName
9507 { after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); }
9508 )
9509 { after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0()); }
9510 )
9511;
9512finally {
9513 restoreStackSize(stackSize);
9514}
9515
9516rule__ExternAggregatorDefinition__NameAssignment_2
9517 @init {
9518 int stackSize = keepStackSize();
9519 }
9520:
9521 (
9522 { before(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); }
9523 ruleQualifiedName
9524 { after(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); }
9525 )
9526;
9527finally {
9528 restoreStackSize(stackSize);
9529}
9530
9531rule__ExternAggregatorDefinition__InputTypeAssignment_4
9532 @init {
9533 int stackSize = keepStackSize();
9534 }
9535:
9536 (
9537 { before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0()); }
9538 (
9539 { before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1()); }
9540 ruleQualifiedName
9541 { after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1()); }
9542 )
9543 { after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0()); }
9544 )
9545;
9546finally {
9547 restoreStackSize(stackSize);
9548}
9549
9550rule__ExternDatatypeDefinition__NameAssignment_2
9551 @init {
9552 int stackSize = keepStackSize();
9553 }
9554:
9555 (
9556 { before(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); }
9557 ruleQualifiedName
9558 { after(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); }
9559 )
9560;
9561finally {
9562 restoreStackSize(stackSize);
9563}
9564
9565rule__ExternDatatypeDefinition__SupertypesAssignment_3_1
9566 @init {
9567 int stackSize = keepStackSize();
9568 }
9569:
9570 (
9571 { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0()); }
9572 (
9573 { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); }
9574 ruleQualifiedName
9575 { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); }
9576 )
9577 { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0()); }
9578 )
9579;
9580finally {
9581 restoreStackSize(stackSize);
9582}
9583
9584rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1
9585 @init {
9586 int stackSize = keepStackSize();
9587 }
9588:
9589 (
9590 { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0()); }
9591 (
9592 { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); }
9593 ruleQualifiedName
9594 { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); }
9595 )
9596 { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0()); }
9597 )
9598;
9599finally {
9600 restoreStackSize(stackSize);
9601}
9602
9603rule__Variable__TypeAssignment_0
9604 @init {
9605 int stackSize = keepStackSize();
9606 }
9607:
9608 (
9609 { before(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0()); }
9610 (
9611 { before(grammarAccess.getVariableAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); }
9612 ruleQualifiedName
9613 { after(grammarAccess.getVariableAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); }
9614 )
9615 { after(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0()); }
9616 )
9617;
9618finally {
9619 restoreStackSize(stackSize);
9620}
9621
9622rule__Variable__NameAssignment_1
9623 @init {
9624 int stackSize = keepStackSize();
9625 }
9626:
9627 (
9628 { before(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0()); }
9629 RULE_ID
9630 { after(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0()); }
7937 ) 9631 )
7938; 9632;
7939finally { 9633finally {
@@ -7985,6 +9679,111 @@ finally {
7985 restoreStackSize(stackSize); 9679 restoreStackSize(stackSize);
7986} 9680}
7987 9681
9682rule__Let__BindingsAssignment_1
9683 @init {
9684 int stackSize = keepStackSize();
9685 }
9686:
9687 (
9688 { before(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0()); }
9689 ruleLetBinding
9690 { after(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0()); }
9691 )
9692;
9693finally {
9694 restoreStackSize(stackSize);
9695}
9696
9697rule__Let__BindingsAssignment_2_1
9698 @init {
9699 int stackSize = keepStackSize();
9700 }
9701:
9702 (
9703 { before(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0()); }
9704 ruleLetBinding
9705 { after(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0()); }
9706 )
9707;
9708finally {
9709 restoreStackSize(stackSize);
9710}
9711
9712rule__Let__BodyAssignment_4
9713 @init {
9714 int stackSize = keepStackSize();
9715 }
9716:
9717 (
9718 { before(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0()); }
9719 ruleExpression
9720 { after(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0()); }
9721 )
9722;
9723finally {
9724 restoreStackSize(stackSize);
9725}
9726
9727rule__LetBinding__VariableAssignment_0
9728 @init {
9729 int stackSize = keepStackSize();
9730 }
9731:
9732 (
9733 { before(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0()); }
9734 ruleVariable
9735 { after(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0()); }
9736 )
9737;
9738finally {
9739 restoreStackSize(stackSize);
9740}
9741
9742rule__LetBinding__ValueAssignment_2
9743 @init {
9744 int stackSize = keepStackSize();
9745 }
9746:
9747 (
9748 { before(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0()); }
9749 ruleAdditiveExpression
9750 { after(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0()); }
9751 )
9752;
9753finally {
9754 restoreStackSize(stackSize);
9755}
9756
9757rule__ImplicationExpression__OpAssignment_1_1
9758 @init {
9759 int stackSize = keepStackSize();
9760 }
9761:
9762 (
9763 { before(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0()); }
9764 ruleImplicationOperator
9765 { after(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0()); }
9766 )
9767;
9768finally {
9769 restoreStackSize(stackSize);
9770}
9771
9772rule__ImplicationExpression__RightAssignment_1_2
9773 @init {
9774 int stackSize = keepStackSize();
9775 }
9776:
9777 (
9778 { before(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0()); }
9779 ruleImplicationExpression
9780 { after(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0()); }
9781 )
9782;
9783finally {
9784 restoreStackSize(stackSize);
9785}
9786
7988rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 9787rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1
7989 @init { 9788 @init {
7990 int stackSize = keepStackSize(); 9789 int stackSize = keepStackSize();
@@ -8186,9 +9985,28 @@ rule__ExponentialExpression__RightAssignment_1_2
8186 } 9985 }
8187: 9986:
8188 ( 9987 (
8189 { before(grammarAccess.getExponentialExpressionAccess().getRightExponentialExpressionParserRuleCall_1_2_0()); } 9988 { before(grammarAccess.getExponentialExpressionAccess().getRightCastExpressionParserRuleCall_1_2_0()); }
8190 ruleExponentialExpression 9989 ruleCastExpression
8191 { after(grammarAccess.getExponentialExpressionAccess().getRightExponentialExpressionParserRuleCall_1_2_0()); } 9990 { after(grammarAccess.getExponentialExpressionAccess().getRightCastExpressionParserRuleCall_1_2_0()); }
9991 )
9992;
9993finally {
9994 restoreStackSize(stackSize);
9995}
9996
9997rule__CastExpression__TypeAssignment_1_2
9998 @init {
9999 int stackSize = keepStackSize();
10000 }
10001:
10002 (
10003 { before(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0()); }
10004 (
10005 { before(grammarAccess.getCastExpressionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1()); }
10006 ruleQualifiedName
10007 { after(grammarAccess.getCastExpressionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1()); }
10008 )
10009 { after(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0()); }
8192 ) 10010 )
8193; 10011;
8194finally { 10012finally {
@@ -8225,15 +10043,75 @@ finally {
8225 restoreStackSize(stackSize); 10043 restoreStackSize(stackSize);
8226} 10044}
8227 10045
8228rule__Count__BodyAssignment_2 10046rule__LocalVariables__VariablesAssignment_2_0
10047 @init {
10048 int stackSize = keepStackSize();
10049 }
10050:
10051 (
10052 { before(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0()); }
10053 ruleVariable
10054 { after(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0()); }
10055 )
10056;
10057finally {
10058 restoreStackSize(stackSize);
10059}
10060
10061rule__LocalVariables__VariablesAssignment_2_1_1
10062 @init {
10063 int stackSize = keepStackSize();
10064 }
10065:
10066 (
10067 { before(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0()); }
10068 ruleVariable
10069 { after(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0()); }
10070 )
10071;
10072finally {
10073 restoreStackSize(stackSize);
10074}
10075
10076rule__QuantifiedExpression__QuantifierAssignment_0
10077 @init {
10078 int stackSize = keepStackSize();
10079 }
10080:
10081 (
10082 { before(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0()); }
10083 ruleQuantifier
10084 { after(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0()); }
10085 )
10086;
10087finally {
10088 restoreStackSize(stackSize);
10089}
10090
10091rule__QuantifiedExpression__LocalVariablesAssignment_1
8229 @init { 10092 @init {
8230 int stackSize = keepStackSize(); 10093 int stackSize = keepStackSize();
8231 } 10094 }
8232: 10095:
8233 ( 10096 (
8234 { before(grammarAccess.getCountAccess().getBodyExpressionParserRuleCall_2_0()); } 10097 { before(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); }
10098 ruleLocalVariables
10099 { after(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); }
10100 )
10101;
10102finally {
10103 restoreStackSize(stackSize);
10104}
10105
10106rule__QuantifiedExpression__BodyAssignment_3
10107 @init {
10108 int stackSize = keepStackSize();
10109 }
10110:
10111 (
10112 { before(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0()); }
8235 ruleExpression 10113 ruleExpression
8236 { after(grammarAccess.getCountAccess().getBodyExpressionParserRuleCall_2_0()); } 10114 { after(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0()); }
8237 ) 10115 )
8238; 10116;
8239finally { 10117finally {
@@ -8246,39 +10124,58 @@ rule__Aggregation__OpAssignment_0
8246 } 10124 }
8247: 10125:
8248 ( 10126 (
8249 { before(grammarAccess.getAggregationAccess().getOpAggregationOpEnumRuleCall_0_0()); } 10127 { before(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0()); }
8250 ruleAggregationOp 10128 (
8251 { after(grammarAccess.getAggregationAccess().getOpAggregationOpEnumRuleCall_0_0()); } 10129 { before(grammarAccess.getAggregationAccess().getOpNamedElementQualifiedNameParserRuleCall_0_0_1()); }
10130 ruleQualifiedName
10131 { after(grammarAccess.getAggregationAccess().getOpNamedElementQualifiedNameParserRuleCall_0_0_1()); }
10132 )
10133 { after(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0()); }
10134 )
10135;
10136finally {
10137 restoreStackSize(stackSize);
10138}
10139
10140rule__Aggregation__LocalVariablesAssignment_1
10141 @init {
10142 int stackSize = keepStackSize();
10143 }
10144:
10145 (
10146 { before(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); }
10147 ruleLocalVariables
10148 { after(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); }
8252 ) 10149 )
8253; 10150;
8254finally { 10151finally {
8255 restoreStackSize(stackSize); 10152 restoreStackSize(stackSize);
8256} 10153}
8257 10154
8258rule__Aggregation__BodyAssignment_2 10155rule__Aggregation__BodyAssignment_3
8259 @init { 10156 @init {
8260 int stackSize = keepStackSize(); 10157 int stackSize = keepStackSize();
8261 } 10158 }
8262: 10159:
8263 ( 10160 (
8264 { before(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_2_0()); } 10161 { before(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0()); }
8265 ruleExpression 10162 ruleExpression
8266 { after(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_2_0()); } 10163 { after(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0()); }
8267 ) 10164 )
8268; 10165;
8269finally { 10166finally {
8270 restoreStackSize(stackSize); 10167 restoreStackSize(stackSize);
8271} 10168}
8272 10169
8273rule__Aggregation__ConditionAssignment_4 10170rule__Aggregation__ConditionAssignment_4_1
8274 @init { 10171 @init {
8275 int stackSize = keepStackSize(); 10172 int stackSize = keepStackSize();
8276 } 10173 }
8277: 10174:
8278 ( 10175 (
8279 { before(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); } 10176 { before(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0()); }
8280 ruleExpression 10177 ruleExpression
8281 { after(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); } 10178 { after(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0()); }
8282 ) 10179 )
8283; 10180;
8284finally { 10181finally {