- Timestamp:
- 10/12/16 14:34:24 (8 years ago)
- Location:
- v2/trunk/de.ugoe.cs.swe.bnftools.ebnf
- Files:
-
- 2 added
- 1 deleted
- 18 edited
Legend:
- Unmodified
- Added
- Removed
-
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/model/generated/Ebnf.ecore
r88 r95 117 117 eType="#//DefinitionList" containment="true"/> 118 118 <eStructuralFeatures xsi:type="ecore:EAttribute" name="morethanonce" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> 119 <eStructuralFeatures xsi:type="ecore:EReference" name="range" eType="#//RepeatRange" 120 containment="true"/> 121 </eClassifiers> 122 <eClassifiers xsi:type="ecore:EClass" name="RepeatRange"> 123 <eStructuralFeatures xsi:type="ecore:EAttribute" name="from" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> 124 <eStructuralFeatures xsi:type="ecore:EAttribute" name="to" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> 119 125 </eClassifiers> 120 126 </ecore:EPackage> -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/model/generated/Ebnf.genmodel
r88 r95 98 98 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Ebnf.ecore#//RepeatedSequence/definitions"/> 99 99 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Ebnf.ecore#//RepeatedSequence/morethanonce"/> 100 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Ebnf.ecore#//RepeatedSequence/range"/> 101 </genClasses> 102 <genClasses ecoreClass="Ebnf.ecore#//RepeatRange"> 103 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Ebnf.ecore#//RepeatRange/from"/> 104 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Ebnf.ecore#//RepeatRange/to"/> 100 105 </genClasses> 101 106 </genPackages> -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/EbnfFactory.java
r88 r95 222 222 223 223 /** 224 * Returns a new object of class '<em>Repeat Range</em>'. 225 * <!-- begin-user-doc --> 226 * <!-- end-user-doc --> 227 * @return a new object of class '<em>Repeat Range</em>'. 228 * @generated 229 */ 230 RepeatRange createRepeatRange(); 231 232 /** 224 233 * Returns the package supported by this factory. 225 234 * <!-- begin-user-doc --> -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/EbnfPackage.java
r88 r95 926 926 927 927 /** 928 * The feature id for the '<em><b>Range</b></em>' containment reference. 929 * <!-- begin-user-doc --> 930 * <!-- end-user-doc --> 931 * @generated 932 * @ordered 933 */ 934 int REPEATED_SEQUENCE__RANGE = 2; 935 936 /** 928 937 * The number of structural features of the '<em>Repeated Sequence</em>' class. 929 938 * <!-- begin-user-doc --> … … 932 941 * @ordered 933 942 */ 934 int REPEATED_SEQUENCE_FEATURE_COUNT = 2; 943 int REPEATED_SEQUENCE_FEATURE_COUNT = 3; 944 945 /** 946 * The meta object id for the '{@link de.ugoe.cs.swe.bnftools.ebnf.impl.RepeatRangeImpl <em>Repeat Range</em>}' class. 947 * <!-- begin-user-doc --> 948 * <!-- end-user-doc --> 949 * @see de.ugoe.cs.swe.bnftools.ebnf.impl.RepeatRangeImpl 950 * @see de.ugoe.cs.swe.bnftools.ebnf.impl.EbnfPackageImpl#getRepeatRange() 951 * @generated 952 */ 953 int REPEAT_RANGE = 22; 954 955 /** 956 * The feature id for the '<em><b>From</b></em>' attribute. 957 * <!-- begin-user-doc --> 958 * <!-- end-user-doc --> 959 * @generated 960 * @ordered 961 */ 962 int REPEAT_RANGE__FROM = 0; 963 964 /** 965 * The feature id for the '<em><b>To</b></em>' attribute. 966 * <!-- begin-user-doc --> 967 * <!-- end-user-doc --> 968 * @generated 969 * @ordered 970 */ 971 int REPEAT_RANGE__TO = 1; 972 973 /** 974 * The number of structural features of the '<em>Repeat Range</em>' class. 975 * <!-- begin-user-doc --> 976 * <!-- end-user-doc --> 977 * @generated 978 * @ordered 979 */ 980 int REPEAT_RANGE_FEATURE_COUNT = 2; 935 981 936 982 … … 1682 1728 */ 1683 1729 EAttribute getRepeatedSequence_Morethanonce(); 1730 1731 /** 1732 * Returns the meta object for the containment reference '{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence#getRange <em>Range</em>}'. 1733 * <!-- begin-user-doc --> 1734 * <!-- end-user-doc --> 1735 * @return the meta object for the containment reference '<em>Range</em>'. 1736 * @see de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence#getRange() 1737 * @see #getRepeatedSequence() 1738 * @generated 1739 */ 1740 EReference getRepeatedSequence_Range(); 1741 1742 /** 1743 * Returns the meta object for class '{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatRange <em>Repeat Range</em>}'. 1744 * <!-- begin-user-doc --> 1745 * <!-- end-user-doc --> 1746 * @return the meta object for class '<em>Repeat Range</em>'. 1747 * @see de.ugoe.cs.swe.bnftools.ebnf.RepeatRange 1748 * @generated 1749 */ 1750 EClass getRepeatRange(); 1751 1752 /** 1753 * Returns the meta object for the attribute '{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatRange#getFrom <em>From</em>}'. 1754 * <!-- begin-user-doc --> 1755 * <!-- end-user-doc --> 1756 * @return the meta object for the attribute '<em>From</em>'. 1757 * @see de.ugoe.cs.swe.bnftools.ebnf.RepeatRange#getFrom() 1758 * @see #getRepeatRange() 1759 * @generated 1760 */ 1761 EAttribute getRepeatRange_From(); 1762 1763 /** 1764 * Returns the meta object for the attribute '{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatRange#getTo <em>To</em>}'. 1765 * <!-- begin-user-doc --> 1766 * <!-- end-user-doc --> 1767 * @return the meta object for the attribute '<em>To</em>'. 1768 * @see de.ugoe.cs.swe.bnftools.ebnf.RepeatRange#getTo() 1769 * @see #getRepeatRange() 1770 * @generated 1771 */ 1772 EAttribute getRepeatRange_To(); 1684 1773 1685 1774 /** … … 2310 2399 EAttribute REPEATED_SEQUENCE__MORETHANONCE = eINSTANCE.getRepeatedSequence_Morethanonce(); 2311 2400 2401 /** 2402 * The meta object literal for the '<em><b>Range</b></em>' containment reference feature. 2403 * <!-- begin-user-doc --> 2404 * <!-- end-user-doc --> 2405 * @generated 2406 */ 2407 EReference REPEATED_SEQUENCE__RANGE = eINSTANCE.getRepeatedSequence_Range(); 2408 2409 /** 2410 * The meta object literal for the '{@link de.ugoe.cs.swe.bnftools.ebnf.impl.RepeatRangeImpl <em>Repeat Range</em>}' class. 2411 * <!-- begin-user-doc --> 2412 * <!-- end-user-doc --> 2413 * @see de.ugoe.cs.swe.bnftools.ebnf.impl.RepeatRangeImpl 2414 * @see de.ugoe.cs.swe.bnftools.ebnf.impl.EbnfPackageImpl#getRepeatRange() 2415 * @generated 2416 */ 2417 EClass REPEAT_RANGE = eINSTANCE.getRepeatRange(); 2418 2419 /** 2420 * The meta object literal for the '<em><b>From</b></em>' attribute feature. 2421 * <!-- begin-user-doc --> 2422 * <!-- end-user-doc --> 2423 * @generated 2424 */ 2425 EAttribute REPEAT_RANGE__FROM = eINSTANCE.getRepeatRange_From(); 2426 2427 /** 2428 * The meta object literal for the '<em><b>To</b></em>' attribute feature. 2429 * <!-- begin-user-doc --> 2430 * <!-- end-user-doc --> 2431 * @generated 2432 */ 2433 EAttribute REPEAT_RANGE__TO = eINSTANCE.getRepeatRange_To(); 2434 2312 2435 } 2313 2436 -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/RepeatedSequence.java
r88 r95 17 17 * <li>{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence#getDefinitions <em>Definitions</em>}</li> 18 18 * <li>{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence#isMorethanonce <em>Morethanonce</em>}</li> 19 * <li>{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence#getRange <em>Range</em>}</li> 19 20 * </ul> 20 21 * </p> … … 68 69 void setMorethanonce(boolean value); 69 70 71 /** 72 * Returns the value of the '<em><b>Range</b></em>' containment reference. 73 * <!-- begin-user-doc --> 74 * <p> 75 * If the meaning of the '<em>Range</em>' containment reference isn't clear, 76 * there really should be more of a description here... 77 * </p> 78 * <!-- end-user-doc --> 79 * @return the value of the '<em>Range</em>' containment reference. 80 * @see #setRange(RepeatRange) 81 * @see de.ugoe.cs.swe.bnftools.ebnf.EbnfPackage#getRepeatedSequence_Range() 82 * @model containment="true" 83 * @generated 84 */ 85 RepeatRange getRange(); 86 87 /** 88 * Sets the value of the '{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence#getRange <em>Range</em>}' containment reference. 89 * <!-- begin-user-doc --> 90 * <!-- end-user-doc --> 91 * @param value the new value of the '<em>Range</em>' containment reference. 92 * @see #getRange() 93 * @generated 94 */ 95 void setRange(RepeatRange value); 96 70 97 } // RepeatedSequence -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/impl/EbnfFactoryImpl.java
r88 r95 87 87 case EbnfPackage.OPTIONAL_SEQUENCE: return createOptionalSequence(); 88 88 case EbnfPackage.REPEATED_SEQUENCE: return createRepeatedSequence(); 89 case EbnfPackage.REPEAT_RANGE: return createRepeatRange(); 89 90 default: 90 91 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); … … 339 340 * @generated 340 341 */ 342 public RepeatRange createRepeatRange() 343 { 344 RepeatRangeImpl repeatRange = new RepeatRangeImpl(); 345 return repeatRange; 346 } 347 348 /** 349 * <!-- begin-user-doc --> 350 * <!-- end-user-doc --> 351 * @generated 352 */ 341 353 public EbnfPackage getEbnfPackage() 342 354 { -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/impl/EbnfPackageImpl.java
r88 r95 19 19 import de.ugoe.cs.swe.bnftools.ebnf.MergeRule; 20 20 import de.ugoe.cs.swe.bnftools.ebnf.OptionalSequence; 21 import de.ugoe.cs.swe.bnftools.ebnf.RepeatRange; 21 22 import de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence; 22 23 import de.ugoe.cs.swe.bnftools.ebnf.Rule; … … 198 199 199 200 /** 201 * <!-- begin-user-doc --> 202 * <!-- end-user-doc --> 203 * @generated 204 */ 205 private EClass repeatRangeEClass = null; 206 207 /** 200 208 * Creates an instance of the model <b>Package</b>, registered with 201 209 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package … … 958 966 { 959 967 return (EAttribute)repeatedSequenceEClass.getEStructuralFeatures().get(1); 968 } 969 970 /** 971 * <!-- begin-user-doc --> 972 * <!-- end-user-doc --> 973 * @generated 974 */ 975 public EReference getRepeatedSequence_Range() 976 { 977 return (EReference)repeatedSequenceEClass.getEStructuralFeatures().get(2); 978 } 979 980 /** 981 * <!-- begin-user-doc --> 982 * <!-- end-user-doc --> 983 * @generated 984 */ 985 public EClass getRepeatRange() 986 { 987 return repeatRangeEClass; 988 } 989 990 /** 991 * <!-- begin-user-doc --> 992 * <!-- end-user-doc --> 993 * @generated 994 */ 995 public EAttribute getRepeatRange_From() 996 { 997 return (EAttribute)repeatRangeEClass.getEStructuralFeatures().get(0); 998 } 999 1000 /** 1001 * <!-- begin-user-doc --> 1002 * <!-- end-user-doc --> 1003 * @generated 1004 */ 1005 public EAttribute getRepeatRange_To() 1006 { 1007 return (EAttribute)repeatRangeEClass.getEStructuralFeatures().get(1); 960 1008 } 961 1009 … … 1081 1129 createEReference(repeatedSequenceEClass, REPEATED_SEQUENCE__DEFINITIONS); 1082 1130 createEAttribute(repeatedSequenceEClass, REPEATED_SEQUENCE__MORETHANONCE); 1131 createEReference(repeatedSequenceEClass, REPEATED_SEQUENCE__RANGE); 1132 1133 repeatRangeEClass = createEClass(REPEAT_RANGE); 1134 createEAttribute(repeatRangeEClass, REPEAT_RANGE__FROM); 1135 createEAttribute(repeatRangeEClass, REPEAT_RANGE__TO); 1083 1136 } 1084 1137 … … 1208 1261 initEReference(getRepeatedSequence_Definitions(), this.getDefinitionList(), null, "definitions", null, 0, -1, RepeatedSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1209 1262 initEAttribute(getRepeatedSequence_Morethanonce(), ecorePackage.getEBoolean(), "morethanonce", null, 0, 1, RepeatedSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1263 initEReference(getRepeatedSequence_Range(), this.getRepeatRange(), null, "range", null, 0, 1, RepeatedSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1264 1265 initEClass(repeatRangeEClass, RepeatRange.class, "RepeatRange", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); 1266 initEAttribute(getRepeatRange_From(), ecorePackage.getEInt(), "from", null, 0, 1, RepeatRange.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1267 initEAttribute(getRepeatRange_To(), ecorePackage.getEInt(), "to", null, 0, 1, RepeatRange.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 1210 1268 1211 1269 // Create resource -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/impl/RepeatedSequenceImpl.java
r88 r95 5 5 import de.ugoe.cs.swe.bnftools.ebnf.DefinitionList; 6 6 import de.ugoe.cs.swe.bnftools.ebnf.EbnfPackage; 7 import de.ugoe.cs.swe.bnftools.ebnf.RepeatRange; 7 8 import de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence; 8 9 … … 32 33 * <li>{@link de.ugoe.cs.swe.bnftools.ebnf.impl.RepeatedSequenceImpl#getDefinitions <em>Definitions</em>}</li> 33 34 * <li>{@link de.ugoe.cs.swe.bnftools.ebnf.impl.RepeatedSequenceImpl#isMorethanonce <em>Morethanonce</em>}</li> 35 * <li>{@link de.ugoe.cs.swe.bnftools.ebnf.impl.RepeatedSequenceImpl#getRange <em>Range</em>}</li> 34 36 * </ul> 35 37 * </p> … … 70 72 71 73 /** 74 * The cached value of the '{@link #getRange() <em>Range</em>}' containment reference. 75 * <!-- begin-user-doc --> 76 * <!-- end-user-doc --> 77 * @see #getRange() 78 * @generated 79 * @ordered 80 */ 81 protected RepeatRange range; 82 83 /** 72 84 * <!-- begin-user-doc --> 73 85 * <!-- end-user-doc --> … … 132 144 * @generated 133 145 */ 146 public RepeatRange getRange() 147 { 148 return range; 149 } 150 151 /** 152 * <!-- begin-user-doc --> 153 * <!-- end-user-doc --> 154 * @generated 155 */ 156 public NotificationChain basicSetRange(RepeatRange newRange, NotificationChain msgs) 157 { 158 RepeatRange oldRange = range; 159 range = newRange; 160 if (eNotificationRequired()) 161 { 162 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EbnfPackage.REPEATED_SEQUENCE__RANGE, oldRange, newRange); 163 if (msgs == null) msgs = notification; else msgs.add(notification); 164 } 165 return msgs; 166 } 167 168 /** 169 * <!-- begin-user-doc --> 170 * <!-- end-user-doc --> 171 * @generated 172 */ 173 public void setRange(RepeatRange newRange) 174 { 175 if (newRange != range) 176 { 177 NotificationChain msgs = null; 178 if (range != null) 179 msgs = ((InternalEObject)range).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EbnfPackage.REPEATED_SEQUENCE__RANGE, null, msgs); 180 if (newRange != null) 181 msgs = ((InternalEObject)newRange).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EbnfPackage.REPEATED_SEQUENCE__RANGE, null, msgs); 182 msgs = basicSetRange(newRange, msgs); 183 if (msgs != null) msgs.dispatch(); 184 } 185 else if (eNotificationRequired()) 186 eNotify(new ENotificationImpl(this, Notification.SET, EbnfPackage.REPEATED_SEQUENCE__RANGE, newRange, newRange)); 187 } 188 189 /** 190 * <!-- begin-user-doc --> 191 * <!-- end-user-doc --> 192 * @generated 193 */ 134 194 @Override 135 195 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) … … 139 199 case EbnfPackage.REPEATED_SEQUENCE__DEFINITIONS: 140 200 return ((InternalEList<?>)getDefinitions()).basicRemove(otherEnd, msgs); 201 case EbnfPackage.REPEATED_SEQUENCE__RANGE: 202 return basicSetRange(null, msgs); 141 203 } 142 204 return super.eInverseRemove(otherEnd, featureID, msgs); … … 157 219 case EbnfPackage.REPEATED_SEQUENCE__MORETHANONCE: 158 220 return isMorethanonce(); 221 case EbnfPackage.REPEATED_SEQUENCE__RANGE: 222 return getRange(); 159 223 } 160 224 return super.eGet(featureID, resolve, coreType); … … 179 243 setMorethanonce((Boolean)newValue); 180 244 return; 245 case EbnfPackage.REPEATED_SEQUENCE__RANGE: 246 setRange((RepeatRange)newValue); 247 return; 181 248 } 182 249 super.eSet(featureID, newValue); … … 198 265 case EbnfPackage.REPEATED_SEQUENCE__MORETHANONCE: 199 266 setMorethanonce(MORETHANONCE_EDEFAULT); 267 return; 268 case EbnfPackage.REPEATED_SEQUENCE__RANGE: 269 setRange((RepeatRange)null); 200 270 return; 201 271 } … … 217 287 case EbnfPackage.REPEATED_SEQUENCE__MORETHANONCE: 218 288 return morethanonce != MORETHANONCE_EDEFAULT; 289 case EbnfPackage.REPEATED_SEQUENCE__RANGE: 290 return range != null; 219 291 } 220 292 return super.eIsSet(featureID); -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/util/EbnfAdapterFactory.java
r88 r95 186 186 } 187 187 @Override 188 public Adapter caseRepeatRange(RepeatRange object) 189 { 190 return createRepeatRangeAdapter(); 191 } 192 @Override 188 193 public Adapter defaultCase(EObject object) 189 194 { … … 538 543 539 544 /** 545 * Creates a new adapter for an object of class '{@link de.ugoe.cs.swe.bnftools.ebnf.RepeatRange <em>Repeat Range</em>}'. 546 * <!-- begin-user-doc --> 547 * This default implementation returns null so that we can easily ignore cases; 548 * it's useful to ignore a case when inheritance will catch all the cases anyway. 549 * <!-- end-user-doc --> 550 * @return the new adapter. 551 * @see de.ugoe.cs.swe.bnftools.ebnf.RepeatRange 552 * @generated 553 */ 554 public Adapter createRepeatRangeAdapter() 555 { 556 return null; 557 } 558 559 /** 540 560 * Creates a new adapter for the default case. 541 561 * <!-- begin-user-doc --> -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/ebnf/util/EbnfSwitch.java
r88 r95 230 230 return result; 231 231 } 232 case EbnfPackage.REPEAT_RANGE: 233 { 234 RepeatRange repeatRange = (RepeatRange)theEObject; 235 T result = caseRepeatRange(repeatRange); 236 if (result == null) result = defaultCase(theEObject); 237 return result; 238 } 232 239 default: return defaultCase(theEObject); 233 240 } … … 587 594 588 595 /** 596 * Returns the result of interpreting the object as an instance of '<em>Repeat Range</em>'. 597 * <!-- begin-user-doc --> 598 * This implementation returns null; 599 * returning a non-null result will terminate the switch. 600 * <!-- end-user-doc --> 601 * @param object the target of the switch. 602 * @return the result of interpreting the object as an instance of '<em>Repeat Range</em>'. 603 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) 604 * @generated 605 */ 606 public T caseRepeatRange(RepeatRange object) 607 { 608 return null; 609 } 610 611 /** 589 612 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. 590 613 * <!-- begin-user-doc --> -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g
r61 r95 6 6 options { 7 7 superClass=AbstractInternalAntlrParser; 8 backtrack=true; 9 memoize=true; 8 10 9 11 } … … 35 37 @parser::members { 36 38 39 /* 40 This grammar contains a lot of empty actions to work around a bug in ANTLR. 41 Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases. 42 */ 43 37 44 private EbnfGrammarAccess grammarAccess; 38 45 … … 521 528 @after { leaveRule(); }: 522 529 (( 530 { 531 /* */ 532 } 523 533 { 524 534 $current = forceCreateModelElement( … … 967 977 @after { leaveRule(); }: 968 978 ( 979 { 980 /* */ 981 } 969 982 { 970 983 newCompositeNode(grammarAccess.getMergeRuleAccess().getGlobalCombinatorParserRuleCall_0()); … … 977 990 978 991 | 992 { 993 /* */ 994 } 979 995 { 980 996 newCompositeNode(grammarAccess.getMergeRuleAccess().getRuleCombinatorParserRuleCall_1()); … … 987 1003 988 1004 | 1005 { 1006 /* */ 1007 } 989 1008 { 990 1009 newCompositeNode(grammarAccess.getMergeRuleAccess().getHookCombinatorParserRuleCall_2()); … … 1539 1558 ( 1540 1559 ( 1560 { 1561 /* */ 1562 } 1541 1563 { 1542 1564 if ($current==null) { … … 1749 1771 newLeafNode(otherlv_2, grammarAccess.getRepeatedSequenceAccess().getRightCurlyBracketKeyword_2()); 1750 1772 } 1751 ( 1773 (( 1752 1774 ( 1753 1775 lv_morethanonce_3_0= '+' 1754 1776 { 1755 newLeafNode(lv_morethanonce_3_0, grammarAccess.getRepeatedSequenceAccess().getMorethanoncePlusSignKeyword_3_0 ());1777 newLeafNode(lv_morethanonce_3_0, grammarAccess.getRepeatedSequenceAccess().getMorethanoncePlusSignKeyword_3_0_0()); 1756 1778 } 1757 1779 … … 1764 1786 1765 1787 ) 1766 )?) 1788 )? 1789 |( 1790 ( 1791 { 1792 newCompositeNode(grammarAccess.getRepeatedSequenceAccess().getRangeRepeatRangeParserRuleCall_3_1_0()); 1793 } 1794 lv_range_4_0=ruleRepeatRange { 1795 if ($current==null) { 1796 $current = createModelElementForParent(grammarAccess.getRepeatedSequenceRule()); 1797 } 1798 set( 1799 $current, 1800 "range", 1801 lv_range_4_0, 1802 "RepeatRange"); 1803 afterParserOrEnumRuleCall(); 1804 } 1805 1806 ) 1807 )?)) 1808 ; 1809 1810 1811 1812 1813 1814 // Entry rule entryRuleRepeatRange 1815 entryRuleRepeatRange returns [EObject current=null] 1816 : 1817 { newCompositeNode(grammarAccess.getRepeatRangeRule()); } 1818 iv_ruleRepeatRange=ruleRepeatRange 1819 { $current=$iv_ruleRepeatRange.current; } 1820 EOF 1821 ; 1822 1823 // Rule RepeatRange 1824 ruleRepeatRange returns [EObject current=null] 1825 @init { enterRule(); 1826 } 1827 @after { leaveRule(); }: 1828 ( otherlv_0='#' 1829 { 1830 newLeafNode(otherlv_0, grammarAccess.getRepeatRangeAccess().getNumberSignKeyword_0()); 1831 } 1832 otherlv_1='(' 1833 { 1834 newLeafNode(otherlv_1, grammarAccess.getRepeatRangeAccess().getLeftParenthesisKeyword_1()); 1835 } 1836 ( 1837 ( 1838 lv_from_2_0=RULE_INT 1839 { 1840 newLeafNode(lv_from_2_0, grammarAccess.getRepeatRangeAccess().getFromINTTerminalRuleCall_2_0()); 1841 } 1842 { 1843 if ($current==null) { 1844 $current = createModelElement(grammarAccess.getRepeatRangeRule()); 1845 } 1846 setWithLastConsumed( 1847 $current, 1848 "from", 1849 lv_from_2_0, 1850 "INT"); 1851 } 1852 1853 ) 1854 ) otherlv_3=',' 1855 { 1856 newLeafNode(otherlv_3, grammarAccess.getRepeatRangeAccess().getCommaKeyword_3()); 1857 } 1858 ( 1859 ( 1860 lv_to_4_0=RULE_INT 1861 { 1862 newLeafNode(lv_to_4_0, grammarAccess.getRepeatRangeAccess().getToINTTerminalRuleCall_4_0()); 1863 } 1864 { 1865 if ($current==null) { 1866 $current = createModelElement(grammarAccess.getRepeatRangeRule()); 1867 } 1868 setWithLastConsumed( 1869 $current, 1870 "to", 1871 lv_to_4_0, 1872 "INT"); 1873 } 1874 1875 ) 1876 ) otherlv_5=')' 1877 { 1878 newLeafNode(otherlv_5, grammarAccess.getRepeatRangeAccess().getRightParenthesisKeyword_5()); 1879 } 1880 ) 1767 1881 ; 1768 1882 -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.tokens
r88 r95 1 RULE_ID=4 2 T__40=40 3 RULE_SECTIONHEADER=5 4 T__41=41 5 T__29=29 6 T__28=28 7 T__27=27 8 T__26=26 9 T__25=25 10 T__24=24 11 T__23=23 12 T__22=22 13 T__21=21 14 T__20=20 15 RULE_SL_COMMENT=11 16 RULE_ML_COMMENT=12 17 T__30=30 18 T__19=19 19 RULE_COLON=9 20 T__31=31 1 21 RULE_STRING=6 2 RULE_SL_COMMENT=11 3 T__19=19 4 RULE_SECTIONHEADER=5 22 T__32=32 23 T__33=33 24 T__16=16 25 T__34=34 5 26 T__15=15 27 T__35=35 28 T__18=18 29 T__36=36 30 T__17=17 31 RULE_LOGIC=8 6 32 T__37=37 7 T__16=168 33 T__38=38 9 T__17=1710 34 T__39=39 11 T__18=18 12 T__33=33 13 T__34=34 35 T__14=14 14 36 T__13=13 15 T__35=35 16 T__14=14 17 T__36=36 18 T__30=30 19 T__31=31 20 T__32=32 21 RULE_ID=4 37 RULE_INT=7 22 38 RULE_WS=10 23 RULE_COLON=9 24 RULE_LOGIC=8 25 T__26=26 26 T__27=27 27 T__28=28 28 RULE_INT=7 29 T__29=29 30 T__22=22 31 RULE_ML_COMMENT=12 32 T__23=23 33 T__24=24 34 T__25=25 35 T__20=20 36 T__21=21 39 'update'=22 40 '|'=31 41 '#'=40 42 '::='=25 43 '/'=19 44 ';'=15 45 'grammar'=13 46 'global'=36 47 'core'=20 48 '+'=35 49 '.'=24 50 ')'=27 51 'import'=18 52 'hook'=39 53 '<-'=28 54 '}'=30 55 'rule'=38 56 '/delta'=16 37 57 '/merge'=17 38 'import'=18 39 'grammar'=13 40 '+'=35 41 ')'=27 58 '/bnf'=14 59 '{'=33 60 'package'=21 61 'label:'=23 62 'combinator:'=37 63 '('=26 64 '['=32 65 '*'=34 66 ','=41 42 67 ']'=29 43 '|'=3144 'label:'=2345 '['=3246 'core'=2047 'global'=3648 '<-'=2849 '.'=2450 'update'=2251 '/bnf'=1452 '*'=3453 'package'=2154 '('=2655 'hook'=3956 '/delta'=1657 'rule'=3858 '::='=2559 '}'=3060 ';'=1561 '{'=3362 '/'=1963 'combinator:'=37 -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnfLexer.java
r88 r95 13 13 @SuppressWarnings("all") 14 14 public class InternalEbnfLexer extends Lexer { 15 public static final int RULE_STRING=6; 15 public static final int T__40=40; 16 public static final int RULE_ID=4; 17 public static final int RULE_SECTIONHEADER=5; 18 public static final int T__41=41; 19 public static final int T__29=29; 20 public static final int T__28=28; 21 public static final int T__27=27; 22 public static final int T__26=26; 23 public static final int T__25=25; 24 public static final int T__24=24; 25 public static final int T__23=23; 26 public static final int T__22=22; 27 public static final int T__21=21; 28 public static final int T__20=20; 29 public static final int EOF=-1; 16 30 public static final int RULE_SL_COMMENT=11; 31 public static final int RULE_ML_COMMENT=12; 17 32 public static final int T__19=19; 18 public static final int RULE_SECTIONHEADER=5;19 public static final int T__15=15;20 public static final int T__37=37;21 public static final int T__16=16;22 public static final int T__38=38;23 public static final int T__17=17;24 public static final int T__39=39;25 public static final int T__18=18;26 public static final int T__33=33;27 public static final int T__34=34;28 public static final int T__13=13;29 public static final int T__35=35;30 public static final int T__14=14;31 public static final int T__36=36;32 public static final int EOF=-1;33 33 public static final int T__30=30; 34 34 public static final int T__31=31; 35 public static final int RULE_COLON=9; 35 36 public static final int T__32=32; 36 public static final int RULE_ID=4; 37 public static final int RULE_STRING=6; 38 public static final int T__16=16; 39 public static final int T__33=33; 40 public static final int T__15=15; 41 public static final int T__34=34; 42 public static final int T__18=18; 43 public static final int T__35=35; 44 public static final int T__17=17; 45 public static final int T__36=36; 46 public static final int T__37=37; 47 public static final int RULE_LOGIC=8; 48 public static final int T__38=38; 49 public static final int T__14=14; 50 public static final int T__39=39; 51 public static final int T__13=13; 52 public static final int RULE_INT=7; 37 53 public static final int RULE_WS=10; 38 public static final int RULE_COLON=9;39 public static final int RULE_LOGIC=8;40 public static final int T__26=26;41 public static final int T__27=27;42 public static final int T__28=28;43 public static final int RULE_INT=7;44 public static final int T__29=29;45 public static final int T__22=22;46 public static final int RULE_ML_COMMENT=12;47 public static final int T__23=23;48 public static final int T__24=24;49 public static final int T__25=25;50 public static final int T__20=20;51 public static final int T__21=21;52 54 53 55 // delegates … … 619 621 // $ANTLR end "T__39" 620 622 623 // $ANTLR start "T__40" 624 public final void mT__40() throws RecognitionException { 625 try { 626 int _type = T__40; 627 int _channel = DEFAULT_TOKEN_CHANNEL; 628 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:38:7: ( '#' ) 629 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:38:9: '#' 630 { 631 match('#'); 632 633 } 634 635 state.type = _type; 636 state.channel = _channel; 637 } 638 finally { 639 } 640 } 641 // $ANTLR end "T__40" 642 643 // $ANTLR start "T__41" 644 public final void mT__41() throws RecognitionException { 645 try { 646 int _type = T__41; 647 int _channel = DEFAULT_TOKEN_CHANNEL; 648 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:39:7: ( ',' ) 649 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:39:9: ',' 650 { 651 match(','); 652 653 } 654 655 state.type = _type; 656 state.channel = _channel; 657 } 658 finally { 659 } 660 } 661 // $ANTLR end "T__41" 662 621 663 // $ANTLR start "RULE_ID" 622 664 public final void mRULE_ID() throws RecognitionException { … … 624 666 int _type = RULE_ID; 625 667 int _channel = DEFAULT_TOKEN_CHANNEL; 626 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 773:9: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )* )627 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 773:11: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )*668 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1887:9: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )* ) 669 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1887:11: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )* 628 670 { 629 671 if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { … … 636 678 throw mse;} 637 679 638 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 773:35: ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )*680 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1887:35: ( 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' | '_' )* 639 681 loop1: 640 682 do { … … 685 727 int _type = RULE_INT; 686 728 int _channel = DEFAULT_TOKEN_CHANNEL; 687 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 775:10: ( ( '0' .. '9' )+ )688 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 775:12: ( '0' .. '9' )+689 { 690 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 775:12: ( '0' .. '9' )+729 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1889:10: ( ( '0' .. '9' )+ ) 730 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1889:12: ( '0' .. '9' )+ 731 { 732 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1889:12: ( '0' .. '9' )+ 691 733 int cnt2=0; 692 734 loop2: … … 702 744 switch (alt2) { 703 745 case 1 : 704 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 775:13: '0' .. '9'746 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1889:13: '0' .. '9' 705 747 { 706 748 matchRange('0','9'); … … 734 776 int _type = RULE_WS; 735 777 int _channel = DEFAULT_TOKEN_CHANNEL; 736 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 777:9: ( ( ' ' | '\\t' | ( '\\r' )? '\\n' )+ )737 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 777:11: ( ' ' | '\\t' | ( '\\r' )? '\\n' )+738 { 739 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 777:11: ( ' ' | '\\t' | ( '\\r' )? '\\n' )+778 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1891:9: ( ( ' ' | '\\t' | ( '\\r' )? '\\n' )+ ) 779 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1891:11: ( ' ' | '\\t' | ( '\\r' )? '\\n' )+ 780 { 781 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1891:11: ( ' ' | '\\t' | ( '\\r' )? '\\n' )+ 740 782 int cnt4=0; 741 783 loop4: … … 764 806 switch (alt4) { 765 807 case 1 : 766 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 777:12: ' '808 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1891:12: ' ' 767 809 { 768 810 match(' '); … … 771 813 break; 772 814 case 2 : 773 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 777:16: '\\t'815 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1891:16: '\\t' 774 816 { 775 817 match('\t'); … … 778 820 break; 779 821 case 3 : 780 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 777:21: ( '\\r' )? '\\n'822 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1891:21: ( '\\r' )? '\\n' 781 823 { 782 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 777:21: ( '\\r' )?824 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1891:21: ( '\\r' )? 783 825 int alt3=2; 784 826 int LA3_0 = input.LA(1); … … 789 831 switch (alt3) { 790 832 case 1 : 791 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 777:21: '\\r'833 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1891:21: '\\r' 792 834 { 793 835 match('\r'); … … 828 870 int _type = RULE_COLON; 829 871 int _channel = DEFAULT_TOKEN_CHANNEL; 830 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 779:12: ( '\"' '\"' '\"' )831 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 779:14: '\"' '\"' '\"'872 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1893:12: ( '\"' '\"' '\"' ) 873 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1893:14: '\"' '\"' '\"' 832 874 { 833 875 match('\"'); … … 850 892 int _type = RULE_STRING; 851 893 int _channel = DEFAULT_TOKEN_CHANNEL; 852 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:13: ( ( '\"' (~ ( '\"' ) )* '\"' | '\\'' (~ ( '\\'' ) )* '\\'' ) )853 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:15: ( '\"' (~ ( '\"' ) )* '\"' | '\\'' (~ ( '\\'' ) )* '\\'' )854 { 855 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:15: ( '\"' (~ ( '\"' ) )* '\"' | '\\'' (~ ( '\\'' ) )* '\\'' )894 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:13: ( ( '\"' (~ ( '\"' ) )* '\"' | '\\'' (~ ( '\\'' ) )* '\\'' ) ) 895 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:15: ( '\"' (~ ( '\"' ) )* '\"' | '\\'' (~ ( '\\'' ) )* '\\'' ) 896 { 897 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:15: ( '\"' (~ ( '\"' ) )* '\"' | '\\'' (~ ( '\\'' ) )* '\\'' ) 856 898 int alt7=2; 857 899 int LA7_0 = input.LA(1); … … 871 913 switch (alt7) { 872 914 case 1 : 873 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:16: '\"' (~ ( '\"' ) )* '\"'915 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:16: '\"' (~ ( '\"' ) )* '\"' 874 916 { 875 917 match('\"'); 876 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:20: (~ ( '\"' ) )*918 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:20: (~ ( '\"' ) )* 877 919 loop5: 878 920 do { … … 887 929 switch (alt5) { 888 930 case 1 : 889 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:20: ~ ( '\"' )931 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:20: ~ ( '\"' ) 890 932 { 891 933 if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='\uFFFF') ) { … … 912 954 break; 913 955 case 2 : 914 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:32: '\\'' (~ ( '\\'' ) )* '\\''956 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:32: '\\'' (~ ( '\\'' ) )* '\\'' 915 957 { 916 958 match('\''); 917 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:37: (~ ( '\\'' ) )*959 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:37: (~ ( '\\'' ) )* 918 960 loop6: 919 961 do { … … 928 970 switch (alt6) { 929 971 case 1 : 930 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 781:37: ~ ( '\\'' )972 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1895:37: ~ ( '\\'' ) 931 973 { 932 974 if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='\uFFFF') ) { … … 971 1013 int _type = RULE_SECTIONHEADER; 972 1014 int _channel = DEFAULT_TOKEN_CHANNEL; 973 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 783:20: ( ( 'a' .. 'z' | 'A' .. 'Z' ) ( '.' | '0' .. '9' )+ ( ' ' | '\\t' ) (~ ( ( '\\n' | '\\r' ) ) )* ( '\\r' )? '\\n' )974 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 783:22: ( 'a' .. 'z' | 'A' .. 'Z' ) ( '.' | '0' .. '9' )+ ( ' ' | '\\t' ) (~ ( ( '\\n' | '\\r' ) ) )* ( '\\r' )? '\\n'1015 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1897:20: ( ( 'a' .. 'z' | 'A' .. 'Z' ) ( '.' | '0' .. '9' )+ ( ' ' | '\\t' ) (~ ( ( '\\n' | '\\r' ) ) )* ( '\\r' )? '\\n' ) 1016 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1897:22: ( 'a' .. 'z' | 'A' .. 'Z' ) ( '.' | '0' .. '9' )+ ( ' ' | '\\t' ) (~ ( ( '\\n' | '\\r' ) ) )* ( '\\r' )? '\\n' 975 1017 { 976 1018 if ( (input.LA(1)>='A' && input.LA(1)<='Z')||(input.LA(1)>='a' && input.LA(1)<='z') ) { … … 983 1025 throw mse;} 984 1026 985 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 783:42: ( '.' | '0' .. '9' )+1027 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1897:42: ( '.' | '0' .. '9' )+ 986 1028 int cnt8=0; 987 1029 loop8: … … 1030 1072 throw mse;} 1031 1073 1032 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 783:69: (~ ( ( '\\n' | '\\r' ) ) )*1074 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1897:69: (~ ( ( '\\n' | '\\r' ) ) )* 1033 1075 loop9: 1034 1076 do { … … 1043 1085 switch (alt9) { 1044 1086 case 1 : 1045 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 783:69: ~ ( ( '\\n' | '\\r' ) )1087 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1897:69: ~ ( ( '\\n' | '\\r' ) ) 1046 1088 { 1047 1089 if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { … … 1063 1105 } while (true); 1064 1106 1065 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 783:85: ( '\\r' )?1107 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1897:85: ( '\\r' )? 1066 1108 int alt10=2; 1067 1109 int LA10_0 = input.LA(1); … … 1072 1114 switch (alt10) { 1073 1115 case 1 : 1074 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 783:85: '\\r'1116 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1897:85: '\\r' 1075 1117 { 1076 1118 match('\r'); … … 1098 1140 int _type = RULE_SL_COMMENT; 1099 1141 int _channel = DEFAULT_TOKEN_CHANNEL; 1100 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 785:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )1101 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 785:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?1142 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1899:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) 1143 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1899:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? 1102 1144 { 1103 1145 match("//"); 1104 1146 1105 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 785:24: (~ ( ( '\\n' | '\\r' ) ) )*1147 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1899:24: (~ ( ( '\\n' | '\\r' ) ) )* 1106 1148 loop11: 1107 1149 do { … … 1116 1158 switch (alt11) { 1117 1159 case 1 : 1118 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 785:24: ~ ( ( '\\n' | '\\r' ) )1160 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1899:24: ~ ( ( '\\n' | '\\r' ) ) 1119 1161 { 1120 1162 if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { … … 1136 1178 } while (true); 1137 1179 1138 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 785:40: ( ( '\\r' )? '\\n' )?1180 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1899:40: ( ( '\\r' )? '\\n' )? 1139 1181 int alt13=2; 1140 1182 int LA13_0 = input.LA(1); … … 1145 1187 switch (alt13) { 1146 1188 case 1 : 1147 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 785:41: ( '\\r' )? '\\n'1189 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1899:41: ( '\\r' )? '\\n' 1148 1190 { 1149 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 785:41: ( '\\r' )?1191 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1899:41: ( '\\r' )? 1150 1192 int alt12=2; 1151 1193 int LA12_0 = input.LA(1); … … 1156 1198 switch (alt12) { 1157 1199 case 1 : 1158 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 785:41: '\\r'1200 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1899:41: '\\r' 1159 1201 { 1160 1202 match('\r'); … … 1188 1230 int _type = RULE_ML_COMMENT; 1189 1231 int _channel = DEFAULT_TOKEN_CHANNEL; 1190 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 787:17: ( '/*' ( options {greedy=false; } : . )* '*/' )1191 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 787:19: '/*' ( options {greedy=false; } : . )* '*/'1232 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1901:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) 1233 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1901:19: '/*' ( options {greedy=false; } : . )* '*/' 1192 1234 { 1193 1235 match("/*"); 1194 1236 1195 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 787:24: ( options {greedy=false; } : . )*1237 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1901:24: ( options {greedy=false; } : . )* 1196 1238 loop14: 1197 1239 do { … … 1218 1260 switch (alt14) { 1219 1261 case 1 : 1220 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 787:52: .1262 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1901:52: . 1221 1263 { 1222 1264 matchAny(); … … 1248 1290 int _type = RULE_LOGIC; 1249 1291 int _channel = DEFAULT_TOKEN_CHANNEL; 1250 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:12: ( ( '/and' | '/or' | '/andr' | '/orr' | '/any' | '/together' ) )1251 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:14: ( '/and' | '/or' | '/andr' | '/orr' | '/any' | '/together' )1252 { 1253 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:14: ( '/and' | '/or' | '/andr' | '/orr' | '/any' | '/together' )1292 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:12: ( ( '/and' | '/or' | '/andr' | '/orr' | '/any' | '/together' ) ) 1293 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:14: ( '/and' | '/or' | '/andr' | '/orr' | '/any' | '/together' ) 1294 { 1295 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:14: ( '/and' | '/or' | '/andr' | '/orr' | '/any' | '/together' ) 1254 1296 int alt15=6; 1255 1297 alt15 = dfa15.predict(input); 1256 1298 switch (alt15) { 1257 1299 case 1 : 1258 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:15: '/and'1300 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:15: '/and' 1259 1301 { 1260 1302 match("/and"); … … 1264 1306 break; 1265 1307 case 2 : 1266 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:22: '/or'1308 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:22: '/or' 1267 1309 { 1268 1310 match("/or"); … … 1272 1314 break; 1273 1315 case 3 : 1274 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:28: '/andr'1316 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:28: '/andr' 1275 1317 { 1276 1318 match("/andr"); … … 1280 1322 break; 1281 1323 case 4 : 1282 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:36: '/orr'1324 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:36: '/orr' 1283 1325 { 1284 1326 match("/orr"); … … 1288 1330 break; 1289 1331 case 5 : 1290 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:43: '/any'1332 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:43: '/any' 1291 1333 { 1292 1334 match("/any"); … … 1296 1338 break; 1297 1339 case 6 : 1298 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 789:50: '/together'1340 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1903:50: '/together' 1299 1341 { 1300 1342 match("/together"); … … 1318 1360 1319 1361 public void mTokens() throws RecognitionException { 1320 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:8: ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | RULE_ID | RULE_INT | RULE_WS | RULE_COLON | RULE_STRING | RULE_SECTIONHEADER | RULE_SL_COMMENT | RULE_ML_COMMENT | RULE_LOGIC )1321 int alt16=3 6;1362 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:8: ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | RULE_ID | RULE_INT | RULE_WS | RULE_COLON | RULE_STRING | RULE_SECTIONHEADER | RULE_SL_COMMENT | RULE_ML_COMMENT | RULE_LOGIC ) 1363 int alt16=38; 1322 1364 alt16 = dfa16.predict(input); 1323 1365 switch (alt16) { … … 1512 1554 break; 1513 1555 case 28 : 1514 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:172: RULE_ID 1556 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:172: T__40 1557 { 1558 mT__40(); 1559 1560 } 1561 break; 1562 case 29 : 1563 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:178: T__41 1564 { 1565 mT__41(); 1566 1567 } 1568 break; 1569 case 30 : 1570 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:184: RULE_ID 1515 1571 { 1516 1572 mRULE_ID(); … … 1518 1574 } 1519 1575 break; 1520 case 29:1521 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:1 80: RULE_INT1576 case 31 : 1577 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:192: RULE_INT 1522 1578 { 1523 1579 mRULE_INT(); … … 1525 1581 } 1526 1582 break; 1527 case 3 0:1528 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1: 189: RULE_WS1583 case 32 : 1584 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:201: RULE_WS 1529 1585 { 1530 1586 mRULE_WS(); … … 1532 1588 } 1533 1589 break; 1534 case 3 1:1535 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1: 197: RULE_COLON1590 case 33 : 1591 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:209: RULE_COLON 1536 1592 { 1537 1593 mRULE_COLON(); … … 1539 1595 } 1540 1596 break; 1541 case 3 2:1542 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:2 08: RULE_STRING1597 case 34 : 1598 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:220: RULE_STRING 1543 1599 { 1544 1600 mRULE_STRING(); … … 1546 1602 } 1547 1603 break; 1548 case 3 3:1549 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:2 20: RULE_SECTIONHEADER1604 case 35 : 1605 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:232: RULE_SECTIONHEADER 1550 1606 { 1551 1607 mRULE_SECTIONHEADER(); … … 1553 1609 } 1554 1610 break; 1555 case 3 4:1556 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:2 39: RULE_SL_COMMENT1611 case 36 : 1612 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:251: RULE_SL_COMMENT 1557 1613 { 1558 1614 mRULE_SL_COMMENT(); … … 1560 1616 } 1561 1617 break; 1562 case 3 5:1563 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:2 55: RULE_ML_COMMENT1618 case 37 : 1619 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:267: RULE_ML_COMMENT 1564 1620 { 1565 1621 mRULE_ML_COMMENT(); … … 1567 1623 } 1568 1624 break; 1569 case 3 6:1570 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:2 71: RULE_LOGIC1625 case 38 : 1626 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1:283: RULE_LOGIC 1571 1627 { 1572 1628 mRULE_LOGIC(); … … 1640 1696 } 1641 1697 public String getDescription() { 1642 return "1 789:14: ( '/and' | '/or' | '/andr' | '/orr' | '/any' | '/together' )";1698 return "1903:14: ( '/and' | '/or' | '/andr' | '/orr' | '/any' | '/together' )"; 1643 1699 } 1644 1700 } 1645 1701 static final String DFA16_eotS = 1646 "\1\uffff\1\3 4\1\47\1\uffff\5\34\14\uffff\3\34\5\uffff\3\34\10\uffff"+1647 "\ 7\34\1\33\12\34\1\uffff\3\34\1\110\4\34\1\115\1\116\3\34\1\uffff"+1648 "\ 4\34\2\uffff\1\34\1\127\1\130\2\34\1\133\1\uffff\1\134\2\uffff"+1649 "\1 \34\1\136\2\uffff\1\34\1\uffff\2\34\1\uffff";1702 "\1\uffff\1\36\1\51\1\uffff\5\36\14\uffff\2\36\2\uffff\1\36\5\uffff"+ 1703 "\3\36\10\uffff\7\36\1\35\12\36\1\uffff\3\36\1\112\4\36\1\117\1\120"+ 1704 "\3\36\1\uffff\4\36\2\uffff\1\36\1\131\1\132\2\36\1\135\1\uffff\1"+ 1705 "\136\2\uffff\1\36\1\140\2\uffff\1\36\1\uffff\2\36\1\uffff"; 1650 1706 static final String DFA16_eofS = 1651 "\14 2\uffff";1707 "\144\uffff"; 1652 1708 static final String DFA16_minS = 1653 "\1\11\1\56\1\52\1\uffff\5\56\14\uffff\ 3\56\2\uffff\1\0\2\uffff\1"+1654 "\1 41\1\157\1\11\10\uffff\1\160\1\155\1\143\1\144\1\142\1\154\1\157"+1655 "\1 \42\1\155\1\142\1\157\1\145\1\142\1\153\1\141\2\145\1\153\1\uffff"+1656 "\ 1\155\1\141\1\162\1\60\1\151\1\141\1\164\1\154\2\60\1\141\1\154"+1657 "\1 \164\1\uffff\1\156\1\147\1\145\1\72\2\uffff\1\162\2\60\1\141\1"+1658 "\1 45\1\60\1\uffff\1\60\2\uffff\1\164\1\60\2\uffff\1\157\1\uffff"+1659 "\1\1 62\1\72\1\uffff";1709 "\1\11\1\56\1\52\1\uffff\5\56\14\uffff\2\56\2\uffff\1\56\2\uffff"+ 1710 "\1\0\2\uffff\1\141\1\157\1\11\10\uffff\1\160\1\155\1\143\1\144\1"+ 1711 "\142\1\154\1\157\1\42\1\155\1\142\1\157\1\145\1\142\1\153\1\141"+ 1712 "\2\145\1\153\1\uffff\1\155\1\141\1\162\1\60\1\151\1\141\1\164\1"+ 1713 "\154\2\60\1\141\1\154\1\164\1\uffff\1\156\1\147\1\145\1\72\2\uffff"+ 1714 "\1\162\2\60\1\141\1\145\1\60\1\uffff\1\60\2\uffff\1\164\1\60\2\uffff"+ 1715 "\1\157\1\uffff\1\162\1\72\1\uffff"; 1660 1716 static final String DFA16_maxS = 1661 1717 "\1\175\1\162\1\164\1\uffff\1\155\1\157\1\141\1\160\1\141\14\uffff"+ 1662 "\1\165\1\157\1\71\2\uffff\1\uffff\2\uffff\1\141\1\157\1\71\10\uffff"+ 1663 "\1\160\1\162\1\143\1\144\1\142\1\154\1\157\1\42\1\155\1\142\1\157"+ 1664 "\1\145\1\142\1\153\1\141\2\145\1\153\1\uffff\1\155\1\141\1\162\1"+ 1665 "\172\1\151\1\141\1\164\1\154\2\172\1\141\1\154\1\164\1\uffff\1\156"+ 1666 "\1\147\1\145\1\72\2\uffff\1\162\2\172\1\141\1\145\1\172\1\uffff"+ 1667 "\1\172\2\uffff\1\164\1\172\2\uffff\1\157\1\uffff\1\162\1\72\1\uffff"; 1718 "\1\165\1\157\2\uffff\1\71\2\uffff\1\uffff\2\uffff\1\141\1\157\1"+ 1719 "\71\10\uffff\1\160\1\162\1\143\1\144\1\142\1\154\1\157\1\42\1\155"+ 1720 "\1\142\1\157\1\145\1\142\1\153\1\141\2\145\1\153\1\uffff\1\155\1"+ 1721 "\141\1\162\1\172\1\151\1\141\1\164\1\154\2\172\1\141\1\154\1\164"+ 1722 "\1\uffff\1\156\1\147\1\145\1\72\2\uffff\1\162\2\172\1\141\1\145"+ 1723 "\1\172\1\uffff\1\172\2\uffff\1\164\1\172\2\uffff\1\157\1\uffff\1"+ 1724 "\162\1\72\1\uffff"; 1668 1725 static final String DFA16_acceptS = 1669 1726 "\3\uffff\1\3\5\uffff\1\14\1\15\1\16\1\17\1\20\1\21\1\22\1\23\1\24"+ 1670 "\1\25\1\26\1\27\ 3\uffff\1\35\1\36\1\uffff\1\40\1\34\3\uffff\1\41"+1671 "\1\ 2\1\4\1\5\1\42\1\43\1\44\1\7\22\uffff\1\37\15\uffff\1\10\4\uffff"+1672 "\1 \32\1\33\6\uffff\1\13\1\uffff\1\30\1\6\2\uffff\1\12\1\1\1\uffff"+1673 "\ 1\11\2\uffff\1\31";1727 "\1\25\1\26\1\27\2\uffff\1\34\1\35\1\uffff\1\37\1\40\1\uffff\1\42"+ 1728 "\1\36\3\uffff\1\43\1\2\1\4\1\5\1\44\1\45\1\46\1\7\22\uffff\1\41"+ 1729 "\15\uffff\1\10\4\uffff\1\32\1\33\6\uffff\1\13\1\uffff\1\30\1\6\2"+ 1730 "\uffff\1\12\1\1\1\uffff\1\11\2\uffff\1\31"; 1674 1731 static final String DFA16_specialS = 1675 "\3 2\uffff\1\0\107\uffff}>";1732 "\34\uffff\1\0\107\uffff}>"; 1676 1733 static final String[] DFA16_transitionS = { 1677 "\2\31\2\uffff\1\31\22\uffff\1\31\1\uffff\1\32\4\uffff\1\33\1"+ 1678 "\13\1\14\1\23\1\24\2\uffff\1\11\1\2\12\30\1\12\1\3\1\15\4\uffff"+ 1679 "\32\27\1\21\1\uffff\1\16\1\uffff\1\34\1\uffff\2\27\1\5\3\27"+ 1680 "\1\1\1\26\1\4\2\27\1\10\3\27\1\6\1\27\1\25\2\27\1\7\5\27\1\22"+ 1681 "\1\20\1\17", 1682 "\1\40\1\uffff\12\37\62\uffff\1\36\5\uffff\1\35", 1683 "\1\45\4\uffff\1\44\61\uffff\1\46\1\41\1\uffff\1\42\10\uffff"+ 1684 "\1\43\1\uffff\1\46\4\uffff\1\46", 1685 "", 1686 "\1\40\1\uffff\12\37\63\uffff\1\50", 1687 "\1\40\1\uffff\12\37\65\uffff\1\51", 1688 "\1\40\1\uffff\12\37\47\uffff\1\52", 1689 "\1\40\1\uffff\12\37\66\uffff\1\53", 1690 "\1\40\1\uffff\12\37\47\uffff\1\54", 1691 "", 1692 "", 1693 "", 1694 "", 1695 "", 1696 "", 1697 "", 1698 "", 1699 "", 1700 "", 1701 "", 1702 "", 1703 "\1\40\1\uffff\12\37\73\uffff\1\55", 1704 "\1\40\1\uffff\12\37\65\uffff\1\56", 1705 "\1\40\1\uffff\12\37", 1706 "", 1707 "", 1708 "\42\33\1\57\uffdd\33", 1709 "", 1710 "", 1711 "\1\60", 1712 "\1\61", 1713 "\1\40\26\uffff\1\40\15\uffff\1\40\1\uffff\12\37", 1714 "", 1715 "", 1716 "", 1717 "", 1718 "", 1719 "", 1734 "\2\33\2\uffff\1\33\22\uffff\1\33\1\uffff\1\34\1\27\3\uffff\1"+ 1735 "\35\1\13\1\14\1\23\1\24\1\30\1\uffff\1\11\1\2\12\32\1\12\1\3"+ 1736 "\1\15\4\uffff\32\31\1\21\1\uffff\1\16\1\uffff\1\36\1\uffff\2"+ 1737 "\31\1\5\3\31\1\1\1\26\1\4\2\31\1\10\3\31\1\6\1\31\1\25\2\31"+ 1738 "\1\7\5\31\1\22\1\20\1\17", 1739 "\1\42\1\uffff\12\41\62\uffff\1\40\5\uffff\1\37", 1740 "\1\47\4\uffff\1\46\61\uffff\1\50\1\43\1\uffff\1\44\10\uffff"+ 1741 "\1\45\1\uffff\1\50\4\uffff\1\50", 1742 "", 1743 "\1\42\1\uffff\12\41\63\uffff\1\52", 1744 "\1\42\1\uffff\12\41\65\uffff\1\53", 1745 "\1\42\1\uffff\12\41\47\uffff\1\54", 1746 "\1\42\1\uffff\12\41\66\uffff\1\55", 1747 "\1\42\1\uffff\12\41\47\uffff\1\56", 1748 "", 1749 "", 1750 "", 1751 "", 1752 "", 1753 "", 1754 "", 1755 "", 1756 "", 1757 "", 1758 "", 1759 "", 1760 "\1\42\1\uffff\12\41\73\uffff\1\57", 1761 "\1\42\1\uffff\12\41\65\uffff\1\60", 1762 "", 1763 "", 1764 "\1\42\1\uffff\12\41", 1765 "", 1766 "", 1767 "\42\35\1\61\uffdd\35", 1720 1768 "", 1721 1769 "", 1722 1770 "\1\62", 1723 "\1\64\4\uffff\1\63", 1724 "\1\65", 1725 "\1\66", 1771 "\1\63", 1772 "\1\42\26\uffff\1\42\15\uffff\1\42\1\uffff\12\41", 1773 "", 1774 "", 1775 "", 1776 "", 1777 "", 1778 "", 1779 "", 1780 "", 1781 "\1\64", 1782 "\1\66\4\uffff\1\65", 1726 1783 "\1\67", 1727 1784 "\1\70", … … 1738 1795 "\1\103", 1739 1796 "\1\104", 1740 "",1741 1797 "\1\105", 1742 1798 "\1\106", 1799 "", 1743 1800 "\1\107", 1744 "\1 2\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",1801 "\1\110", 1745 1802 "\1\111", 1746 "\1 \112",1803 "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36", 1747 1804 "\1\113", 1748 1805 "\1\114", 1749 "\1 2\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",1750 "\1 2\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",1751 "\1 \117",1752 "\1 \120",1806 "\1\115", 1807 "\1\116", 1808 "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36", 1809 "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36", 1753 1810 "\1\121", 1754 "",1755 1811 "\1\122", 1756 1812 "\1\123", 1813 "", 1757 1814 "\1\124", 1758 1815 "\1\125", 1759 "",1760 "",1761 1816 "\1\126", 1762 "\1 2\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",1763 " \12\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",1764 " \1\131",1765 "\1\13 2",1766 "\12\3 4\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",1767 " ",1768 "\1 2\34\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",1769 " ",1770 " ",1771 " \1\135",1772 "\12\3 4\7\uffff\32\34\4\uffff\1\34\1\uffff\32\34",1817 "\1\127", 1818 "", 1819 "", 1820 "\1\130", 1821 "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36", 1822 "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36", 1823 "\1\133", 1824 "\1\134", 1825 "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36", 1826 "", 1827 "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36", 1773 1828 "", 1774 1829 "", 1775 1830 "\1\137", 1776 "", 1777 "\1\140", 1831 "\12\36\7\uffff\32\36\4\uffff\1\36\1\uffff\32\36", 1832 "", 1833 "", 1778 1834 "\1\141", 1835 "", 1836 "\1\142", 1837 "\1\143", 1779 1838 "" 1780 1839 }; … … 1810 1869 } 1811 1870 public String getDescription() { 1812 return "1:1: Tokens : ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | RULE_ID | RULE_INT | RULE_WS | RULE_COLON | RULE_STRING | RULE_SECTIONHEADER | RULE_SL_COMMENT | RULE_ML_COMMENT | RULE_LOGIC );";1871 return "1:1: Tokens : ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | RULE_ID | RULE_INT | RULE_WS | RULE_COLON | RULE_STRING | RULE_SECTIONHEADER | RULE_SL_COMMENT | RULE_ML_COMMENT | RULE_LOGIC );"; 1813 1872 } 1814 1873 public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { … … 1817 1876 switch ( s ) { 1818 1877 case 0 : 1819 int LA16_2 6= input.LA(1);1878 int LA16_28 = input.LA(1); 1820 1879 1821 1880 s = -1; 1822 if ( (LA16_2 6=='\"') ) {s = 47;}1823 1824 else if ( ((LA16_2 6>='\u0000' && LA16_26<='!')||(LA16_26>='#' && LA16_26<='\uFFFF')) ) {s = 27;}1881 if ( (LA16_28=='\"') ) {s = 49;} 1882 1883 else if ( ((LA16_28>='\u0000' && LA16_28<='!')||(LA16_28>='#' && LA16_28<='\uFFFF')) ) {s = 29;} 1825 1884 1826 1885 if ( s>=0 ) return s; -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnfParser.java
r88 r95 18 18 import java.util.List; 19 19 import java.util.ArrayList; 20 20 import java.util.Map; 21 import java.util.HashMap; 21 22 @SuppressWarnings("all") 22 23 public class InternalEbnfParser extends AbstractInternalAntlrParser { 23 24 public static final String[] tokenNames = new String[] { 24 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_SECTIONHEADER", "RULE_STRING", "RULE_INT", "RULE_LOGIC", "RULE_COLON", "RULE_WS", "RULE_SL_COMMENT", "RULE_ML_COMMENT", "'grammar'", "'/bnf'", "';'", "'/delta'", "'/merge'", "'import'", "'/'", "'core'", "'package'", "'update'", "'label:'", "'.'", "'::='", "'('", "')'", "'<-'", "']'", "'}'", "'|'", "'['", "'{'", "'*'", "'+'", "'global'", "'combinator:'", "'rule'", "'hook'" 25 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_SECTIONHEADER", "RULE_STRING", "RULE_INT", "RULE_LOGIC", "RULE_COLON", "RULE_WS", "RULE_SL_COMMENT", "RULE_ML_COMMENT", "'grammar'", "'/bnf'", "';'", "'/delta'", "'/merge'", "'import'", "'/'", "'core'", "'package'", "'update'", "'label:'", "'.'", "'::='", "'('", "')'", "'<-'", "']'", "'}'", "'|'", "'['", "'{'", "'*'", "'+'", "'global'", "'combinator:'", "'rule'", "'hook'", "'#'", "','" 25 26 }; 27 public static final int RULE_ID=4; 28 public static final int T__40=40; 29 public static final int RULE_SECTIONHEADER=5; 30 public static final int T__41=41; 31 public static final int T__29=29; 32 public static final int T__28=28; 33 public static final int T__27=27; 34 public static final int T__26=26; 35 public static final int T__25=25; 36 public static final int T__24=24; 37 public static final int T__23=23; 38 public static final int T__22=22; 39 public static final int T__21=21; 40 public static final int T__20=20; 41 public static final int RULE_SL_COMMENT=11; 42 public static final int EOF=-1; 43 public static final int RULE_ML_COMMENT=12; 44 public static final int T__30=30; 45 public static final int T__19=19; 46 public static final int RULE_COLON=9; 47 public static final int T__31=31; 26 48 public static final int RULE_STRING=6; 27 public static final int RULE_SL_COMMENT=11; 28 public static final int T__19=19; 29 public static final int RULE_SECTIONHEADER=5; 49 public static final int T__32=32; 50 public static final int T__33=33; 51 public static final int T__16=16; 52 public static final int T__34=34; 30 53 public static final int T__15=15; 54 public static final int T__35=35; 55 public static final int T__18=18; 56 public static final int T__36=36; 57 public static final int T__17=17; 58 public static final int RULE_LOGIC=8; 31 59 public static final int T__37=37; 32 public static final int T__16=16;33 60 public static final int T__38=38; 34 public static final int T__17=17;35 61 public static final int T__39=39; 36 public static final int T__18=18; 37 public static final int T__33=33; 38 public static final int T__34=34; 62 public static final int T__14=14; 39 63 public static final int T__13=13; 40 public static final int T__35=35; 41 public static final int T__14=14; 42 public static final int T__36=36; 43 public static final int EOF=-1; 44 public static final int T__30=30; 45 public static final int T__31=31; 46 public static final int T__32=32; 47 public static final int RULE_ID=4; 64 public static final int RULE_INT=7; 48 65 public static final int RULE_WS=10; 49 public static final int RULE_COLON=9;50 public static final int RULE_LOGIC=8;51 public static final int T__26=26;52 public static final int T__27=27;53 public static final int T__28=28;54 public static final int RULE_INT=7;55 public static final int T__29=29;56 public static final int T__22=22;57 public static final int RULE_ML_COMMENT=12;58 public static final int T__23=23;59 public static final int T__24=24;60 public static final int T__25=25;61 public static final int T__20=20;62 public static final int T__21=21;63 66 64 67 // delegates … … 71 74 public InternalEbnfParser(TokenStream input, RecognizerSharedState state) { 72 75 super(input, state); 76 this.state.ruleMemo = new HashMap[99+1]; 77 73 78 74 79 } … … 80 85 81 86 87 /* 88 This grammar contains a lot of empty actions to work around a bug in ANTLR. 89 Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases. 90 */ 91 82 92 private EbnfGrammarAccess grammarAccess; 83 93 … … 101 111 102 112 // $ANTLR start "entryRuleEtsiBnf" 103 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 67:1: entryRuleEtsiBnf returns [EObject current=null] : iv_ruleEtsiBnf= ruleEtsiBnf EOF ;113 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:74:1: entryRuleEtsiBnf returns [EObject current=null] : iv_ruleEtsiBnf= ruleEtsiBnf EOF ; 104 114 public final EObject entryRuleEtsiBnf() throws RecognitionException { 105 115 EObject current = null; 106 116 int entryRuleEtsiBnf_StartIndex = input.index(); 107 117 EObject iv_ruleEtsiBnf = null; 108 118 109 119 110 120 try { 111 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:68:2: (iv_ruleEtsiBnf= ruleEtsiBnf EOF ) 112 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:69:2: iv_ruleEtsiBnf= ruleEtsiBnf EOF 113 { 114 newCompositeNode(grammarAccess.getEtsiBnfRule()); 115 pushFollow(FOLLOW_ruleEtsiBnf_in_entryRuleEtsiBnf75); 121 if ( state.backtracking>0 && alreadyParsedRule(input, 1) ) { return current; } 122 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:75:2: (iv_ruleEtsiBnf= ruleEtsiBnf EOF ) 123 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:76:2: iv_ruleEtsiBnf= ruleEtsiBnf EOF 124 { 125 if ( state.backtracking==0 ) { 126 newCompositeNode(grammarAccess.getEtsiBnfRule()); 127 } 128 pushFollow(FOLLOW_ruleEtsiBnf_in_entryRuleEtsiBnf88); 116 129 iv_ruleEtsiBnf=ruleEtsiBnf(); 117 130 118 131 state._fsp--; 119 120 current =iv_ruleEtsiBnf; 121 match(input,EOF,FOLLOW_EOF_in_entryRuleEtsiBnf85); 132 if (state.failed) return current; 133 if ( state.backtracking==0 ) { 134 current =iv_ruleEtsiBnf; 135 } 136 match(input,EOF,FOLLOW_EOF_in_entryRuleEtsiBnf98); if (state.failed) return current; 122 137 123 138 } … … 130 145 } 131 146 finally { 147 if ( state.backtracking>0 ) { memoize(input, 1, entryRuleEtsiBnf_StartIndex); } 132 148 } 133 149 return current; … … 137 153 138 154 // $ANTLR start "ruleEtsiBnf" 139 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 76:1: ruleEtsiBnf returns [EObject current=null] : ( (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) | ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) | ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) ) ;155 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:83:1: ruleEtsiBnf returns [EObject current=null] : ( (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) | ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) | ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) ) ; 140 156 public final EObject ruleEtsiBnf() throws RecognitionException { 141 157 EObject current = null; 142 158 int ruleEtsiBnf_StartIndex = input.index(); 143 159 Token otherlv_0=null; 144 160 Token lv_name_1_0=null; … … 165 181 166 182 try { 167 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:79:28: ( ( (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) | ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) | ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) ) ) 168 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:80:1: ( (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) | ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) | ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) ) 169 { 170 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:80:1: ( (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) | ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) | ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) ) 183 if ( state.backtracking>0 && alreadyParsedRule(input, 2) ) { return current; } 184 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:86:28: ( ( (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) | ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) | ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) ) ) 185 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:87:1: ( (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) | ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) | ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) ) 186 { 187 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:87:1: ( (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) | ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) | ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) ) 171 188 int alt8=3; 172 189 switch ( input.LA(1) ) { … … 187 204 break; 188 205 default: 206 if (state.backtracking>0) {state.failed=true; return current;} 189 207 NoViableAltException nvae = 190 208 new NoViableAltException("", 8, 0, input); … … 195 213 switch (alt8) { 196 214 case 1 : 197 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:80:2: (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) 198 { 199 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:80:2: (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) 200 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:80:4: otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) 201 { 202 otherlv_0=(Token)match(input,13,FOLLOW_13_in_ruleEtsiBnf123); 203 204 newLeafNode(otherlv_0, grammarAccess.getEtsiBnfAccess().getGrammarKeyword_0_0()); 205 206 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:84:1: ( (lv_name_1_0= RULE_ID ) ) 207 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:85:1: (lv_name_1_0= RULE_ID ) 208 { 209 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:85:1: (lv_name_1_0= RULE_ID ) 210 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:86:3: lv_name_1_0= RULE_ID 211 { 212 lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleEtsiBnf140); 213 214 newLeafNode(lv_name_1_0, grammarAccess.getEtsiBnfAccess().getNameIDTerminalRuleCall_0_1_0()); 215 216 217 if (current==null) { 218 current = createModelElement(grammarAccess.getEtsiBnfRule()); 219 } 220 setWithLastConsumed( 221 current, 222 "name", 223 lv_name_1_0, 224 "ID"); 225 226 227 } 228 229 230 } 231 232 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:102:2: ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) 233 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:102:3: ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ 234 { 235 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:102:3: ( (lv_type_2_0= '/bnf' ) )? 215 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:87:2: (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) 216 { 217 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:87:2: (otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) ) 218 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:87:4: otherlv_0= 'grammar' ( (lv_name_1_0= RULE_ID ) ) ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) 219 { 220 otherlv_0=(Token)match(input,13,FOLLOW_13_in_ruleEtsiBnf136); if (state.failed) return current; 221 if ( state.backtracking==0 ) { 222 223 newLeafNode(otherlv_0, grammarAccess.getEtsiBnfAccess().getGrammarKeyword_0_0()); 224 225 } 226 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:91:1: ( (lv_name_1_0= RULE_ID ) ) 227 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:92:1: (lv_name_1_0= RULE_ID ) 228 { 229 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:92:1: (lv_name_1_0= RULE_ID ) 230 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:93:3: lv_name_1_0= RULE_ID 231 { 232 lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleEtsiBnf153); if (state.failed) return current; 233 if ( state.backtracking==0 ) { 234 235 newLeafNode(lv_name_1_0, grammarAccess.getEtsiBnfAccess().getNameIDTerminalRuleCall_0_1_0()); 236 237 } 238 if ( state.backtracking==0 ) { 239 240 if (current==null) { 241 current = createModelElement(grammarAccess.getEtsiBnfRule()); 242 } 243 setWithLastConsumed( 244 current, 245 "name", 246 lv_name_1_0, 247 "ID"); 248 249 } 250 251 } 252 253 254 } 255 256 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:109:2: ( ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ ) 257 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:109:3: ( (lv_type_2_0= '/bnf' ) )? otherlv_3= ';' ( (lv_importSection_4_0= ruleImportSection ) )? ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ 258 { 259 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:109:3: ( (lv_type_2_0= '/bnf' ) )? 236 260 int alt1=2; 237 261 int LA1_0 = input.LA(1); … … 242 266 switch (alt1) { 243 267 case 1 : 244 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 03:1: (lv_type_2_0= '/bnf' )268 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:110:1: (lv_type_2_0= '/bnf' ) 245 269 { 246 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 03:1: (lv_type_2_0= '/bnf' )247 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 04:3: lv_type_2_0= '/bnf'270 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:110:1: (lv_type_2_0= '/bnf' ) 271 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:111:3: lv_type_2_0= '/bnf' 248 272 { 249 lv_type_2_0=(Token)match(input,14,FOLLOW_14_in_ruleEtsiBnf164); 250 251 newLeafNode(lv_type_2_0, grammarAccess.getEtsiBnfAccess().getTypeBnfKeyword_0_2_0_0()); 252 253 254 if (current==null) { 255 current = createModelElement(grammarAccess.getEtsiBnfRule()); 256 } 257 setWithLastConsumed(current, "type", lv_type_2_0, "/bnf"); 258 273 lv_type_2_0=(Token)match(input,14,FOLLOW_14_in_ruleEtsiBnf177); if (state.failed) return current; 274 if ( state.backtracking==0 ) { 275 276 newLeafNode(lv_type_2_0, grammarAccess.getEtsiBnfAccess().getTypeBnfKeyword_0_2_0_0()); 277 278 } 279 if ( state.backtracking==0 ) { 280 281 if (current==null) { 282 current = createModelElement(grammarAccess.getEtsiBnfRule()); 283 } 284 setWithLastConsumed(current, "type", lv_type_2_0, "/bnf"); 285 286 } 259 287 260 288 } … … 266 294 } 267 295 268 otherlv_3=(Token)match(input,15,FOLLOW_15_in_ruleEtsiBnf190); 269 270 newLeafNode(otherlv_3, grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_0_2_1()); 271 272 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:121:1: ( (lv_importSection_4_0= ruleImportSection ) )? 296 otherlv_3=(Token)match(input,15,FOLLOW_15_in_ruleEtsiBnf203); if (state.failed) return current; 297 if ( state.backtracking==0 ) { 298 299 newLeafNode(otherlv_3, grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_0_2_1()); 300 301 } 302 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:128:1: ( (lv_importSection_4_0= ruleImportSection ) )? 273 303 int alt2=2; 274 304 int LA2_0 = input.LA(1); … … 279 309 switch (alt2) { 280 310 case 1 : 281 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:12 2:1: (lv_importSection_4_0= ruleImportSection )311 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:129:1: (lv_importSection_4_0= ruleImportSection ) 282 312 { 283 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:12 2:1: (lv_importSection_4_0= ruleImportSection )284 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 23:3: lv_importSection_4_0= ruleImportSection313 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:129:1: (lv_importSection_4_0= ruleImportSection ) 314 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:130:3: lv_importSection_4_0= ruleImportSection 285 315 { 286 287 newCompositeNode(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_0_2_2_0()); 288 289 pushFollow(FOLLOW_ruleImportSection_in_ruleEtsiBnf211); 316 if ( state.backtracking==0 ) { 317 318 newCompositeNode(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_0_2_2_0()); 319 320 } 321 pushFollow(FOLLOW_ruleImportSection_in_ruleEtsiBnf224); 290 322 lv_importSection_4_0=ruleImportSection(); 291 323 292 324 state._fsp--; 293 294 295 if (current==null) { 296 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 297 } 298 set( 299 current, 300 "importSection", 301 lv_importSection_4_0, 302 "ImportSection"); 303 afterParserOrEnumRuleCall(); 304 325 if (state.failed) return current; 326 if ( state.backtracking==0 ) { 327 328 if (current==null) { 329 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 330 } 331 set( 332 current, 333 "importSection", 334 lv_importSection_4_0, 335 "ImportSection"); 336 afterParserOrEnumRuleCall(); 337 338 } 305 339 306 340 } … … 312 346 } 313 347 314 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 39:3: ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+348 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:146:3: ( (lv_bnfEntry_5_0= ruleBnfEntry ) )+ 315 349 int cnt3=0; 316 350 loop3: … … 326 360 switch (alt3) { 327 361 case 1 : 328 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:14 0:1: (lv_bnfEntry_5_0= ruleBnfEntry )362 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:147:1: (lv_bnfEntry_5_0= ruleBnfEntry ) 329 363 { 330 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:14 0:1: (lv_bnfEntry_5_0= ruleBnfEntry )331 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:14 1:3: lv_bnfEntry_5_0= ruleBnfEntry364 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:147:1: (lv_bnfEntry_5_0= ruleBnfEntry ) 365 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:148:3: lv_bnfEntry_5_0= ruleBnfEntry 332 366 { 333 334 newCompositeNode(grammarAccess.getEtsiBnfAccess().getBnfEntryBnfEntryParserRuleCall_0_2_3_0()); 335 336 pushFollow(FOLLOW_ruleBnfEntry_in_ruleEtsiBnf233); 367 if ( state.backtracking==0 ) { 368 369 newCompositeNode(grammarAccess.getEtsiBnfAccess().getBnfEntryBnfEntryParserRuleCall_0_2_3_0()); 370 371 } 372 pushFollow(FOLLOW_ruleBnfEntry_in_ruleEtsiBnf246); 337 373 lv_bnfEntry_5_0=ruleBnfEntry(); 338 374 339 375 state._fsp--; 340 341 342 if (current==null) { 343 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 344 } 345 add( 346 current, 347 "bnfEntry", 348 lv_bnfEntry_5_0, 349 "BnfEntry"); 350 afterParserOrEnumRuleCall(); 351 376 if (state.failed) return current; 377 if ( state.backtracking==0 ) { 378 379 if (current==null) { 380 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 381 } 382 add( 383 current, 384 "bnfEntry", 385 lv_bnfEntry_5_0, 386 "BnfEntry"); 387 afterParserOrEnumRuleCall(); 388 389 } 352 390 353 391 } … … 359 397 default : 360 398 if ( cnt3 >= 1 ) break loop3; 399 if (state.backtracking>0) {state.failed=true; return current;} 361 400 EarlyExitException eee = 362 401 new EarlyExitException(3, input); … … 376 415 break; 377 416 case 2 : 378 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:158:6: ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) 379 { 380 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:158:6: ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) 381 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:158:7: ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* 382 { 383 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:158:7: ( (lv_type_6_0= '/delta' ) ) 384 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:159:1: (lv_type_6_0= '/delta' ) 385 { 386 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:159:1: (lv_type_6_0= '/delta' ) 387 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:160:3: lv_type_6_0= '/delta' 388 { 389 lv_type_6_0=(Token)match(input,16,FOLLOW_16_in_ruleEtsiBnf261); 390 391 newLeafNode(lv_type_6_0, grammarAccess.getEtsiBnfAccess().getTypeDeltaKeyword_1_0_0()); 392 393 394 if (current==null) { 395 current = createModelElement(grammarAccess.getEtsiBnfRule()); 396 } 397 setWithLastConsumed(current, "type", lv_type_6_0, "/delta"); 398 399 400 } 401 402 403 } 404 405 otherlv_7=(Token)match(input,15,FOLLOW_15_in_ruleEtsiBnf286); 406 407 newLeafNode(otherlv_7, grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_1_1()); 408 409 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:177:1: ( (lv_importSection_8_0= ruleImportSection ) )? 417 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:165:6: ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) 418 { 419 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:165:6: ( ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* ) 420 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:165:7: ( (lv_type_6_0= '/delta' ) ) otherlv_7= ';' ( (lv_importSection_8_0= ruleImportSection ) )? ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* 421 { 422 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:165:7: ( (lv_type_6_0= '/delta' ) ) 423 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:166:1: (lv_type_6_0= '/delta' ) 424 { 425 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:166:1: (lv_type_6_0= '/delta' ) 426 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:167:3: lv_type_6_0= '/delta' 427 { 428 lv_type_6_0=(Token)match(input,16,FOLLOW_16_in_ruleEtsiBnf274); if (state.failed) return current; 429 if ( state.backtracking==0 ) { 430 431 newLeafNode(lv_type_6_0, grammarAccess.getEtsiBnfAccess().getTypeDeltaKeyword_1_0_0()); 432 433 } 434 if ( state.backtracking==0 ) { 435 436 if (current==null) { 437 current = createModelElement(grammarAccess.getEtsiBnfRule()); 438 } 439 setWithLastConsumed(current, "type", lv_type_6_0, "/delta"); 440 441 } 442 443 } 444 445 446 } 447 448 otherlv_7=(Token)match(input,15,FOLLOW_15_in_ruleEtsiBnf299); if (state.failed) return current; 449 if ( state.backtracking==0 ) { 450 451 newLeafNode(otherlv_7, grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_1_1()); 452 453 } 454 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:184:1: ( (lv_importSection_8_0= ruleImportSection ) )? 410 455 int alt4=2; 411 456 int LA4_0 = input.LA(1); … … 416 461 switch (alt4) { 417 462 case 1 : 418 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 78:1: (lv_importSection_8_0= ruleImportSection )463 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:185:1: (lv_importSection_8_0= ruleImportSection ) 419 464 { 420 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 78:1: (lv_importSection_8_0= ruleImportSection )421 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 79:3: lv_importSection_8_0= ruleImportSection465 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:185:1: (lv_importSection_8_0= ruleImportSection ) 466 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:186:3: lv_importSection_8_0= ruleImportSection 422 467 { 423 424 newCompositeNode(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_1_2_0()); 425 426 pushFollow(FOLLOW_ruleImportSection_in_ruleEtsiBnf307); 468 if ( state.backtracking==0 ) { 469 470 newCompositeNode(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_1_2_0()); 471 472 } 473 pushFollow(FOLLOW_ruleImportSection_in_ruleEtsiBnf320); 427 474 lv_importSection_8_0=ruleImportSection(); 428 475 429 476 state._fsp--; 430 431 432 if (current==null) { 433 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 434 } 435 set( 436 current, 437 "importSection", 438 lv_importSection_8_0, 439 "ImportSection"); 440 afterParserOrEnumRuleCall(); 441 477 if (state.failed) return current; 478 if ( state.backtracking==0 ) { 479 480 if (current==null) { 481 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 482 } 483 set( 484 current, 485 "importSection", 486 lv_importSection_8_0, 487 "ImportSection"); 488 afterParserOrEnumRuleCall(); 489 490 } 442 491 443 492 } … … 449 498 } 450 499 451 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 195:3: ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )*500 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:202:3: ( (lv_deltaEntry_9_0= ruleDeltaEntry ) )* 452 501 loop5: 453 502 do { … … 462 511 switch (alt5) { 463 512 case 1 : 464 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 196:1: (lv_deltaEntry_9_0= ruleDeltaEntry )513 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:203:1: (lv_deltaEntry_9_0= ruleDeltaEntry ) 465 514 { 466 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 196:1: (lv_deltaEntry_9_0= ruleDeltaEntry )467 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 197:3: lv_deltaEntry_9_0= ruleDeltaEntry515 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:203:1: (lv_deltaEntry_9_0= ruleDeltaEntry ) 516 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:204:3: lv_deltaEntry_9_0= ruleDeltaEntry 468 517 { 469 470 newCompositeNode(grammarAccess.getEtsiBnfAccess().getDeltaEntryDeltaEntryParserRuleCall_1_3_0()); 471 472 pushFollow(FOLLOW_ruleDeltaEntry_in_ruleEtsiBnf329); 518 if ( state.backtracking==0 ) { 519 520 newCompositeNode(grammarAccess.getEtsiBnfAccess().getDeltaEntryDeltaEntryParserRuleCall_1_3_0()); 521 522 } 523 pushFollow(FOLLOW_ruleDeltaEntry_in_ruleEtsiBnf342); 473 524 lv_deltaEntry_9_0=ruleDeltaEntry(); 474 525 475 526 state._fsp--; 476 477 478 if (current==null) { 479 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 480 } 481 add( 482 current, 483 "deltaEntry", 484 lv_deltaEntry_9_0, 485 "DeltaEntry"); 486 afterParserOrEnumRuleCall(); 487 527 if (state.failed) return current; 528 if ( state.backtracking==0 ) { 529 530 if (current==null) { 531 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 532 } 533 add( 534 current, 535 "deltaEntry", 536 lv_deltaEntry_9_0, 537 "DeltaEntry"); 538 afterParserOrEnumRuleCall(); 539 540 } 488 541 489 542 } … … 505 558 break; 506 559 case 3 : 507 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:214:6: ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) 508 { 509 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:214:6: ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) 510 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:214:7: ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* 511 { 512 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:214:7: ( (lv_type_10_0= '/merge' ) ) 513 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:215:1: (lv_type_10_0= '/merge' ) 514 { 515 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:215:1: (lv_type_10_0= '/merge' ) 516 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:216:3: lv_type_10_0= '/merge' 517 { 518 lv_type_10_0=(Token)match(input,17,FOLLOW_17_in_ruleEtsiBnf356); 519 520 newLeafNode(lv_type_10_0, grammarAccess.getEtsiBnfAccess().getTypeMergeKeyword_2_0_0()); 521 522 523 if (current==null) { 524 current = createModelElement(grammarAccess.getEtsiBnfRule()); 525 } 526 setWithLastConsumed(current, "type", lv_type_10_0, "/merge"); 527 528 529 } 530 531 532 } 533 534 otherlv_11=(Token)match(input,15,FOLLOW_15_in_ruleEtsiBnf381); 535 536 newLeafNode(otherlv_11, grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_2_1()); 537 538 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:233:1: ( (lv_importSection_12_0= ruleImportSection ) )? 560 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:221:6: ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) 561 { 562 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:221:6: ( ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* ) 563 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:221:7: ( (lv_type_10_0= '/merge' ) ) otherlv_11= ';' ( (lv_importSection_12_0= ruleImportSection ) )? ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* 564 { 565 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:221:7: ( (lv_type_10_0= '/merge' ) ) 566 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:222:1: (lv_type_10_0= '/merge' ) 567 { 568 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:222:1: (lv_type_10_0= '/merge' ) 569 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:223:3: lv_type_10_0= '/merge' 570 { 571 lv_type_10_0=(Token)match(input,17,FOLLOW_17_in_ruleEtsiBnf369); if (state.failed) return current; 572 if ( state.backtracking==0 ) { 573 574 newLeafNode(lv_type_10_0, grammarAccess.getEtsiBnfAccess().getTypeMergeKeyword_2_0_0()); 575 576 } 577 if ( state.backtracking==0 ) { 578 579 if (current==null) { 580 current = createModelElement(grammarAccess.getEtsiBnfRule()); 581 } 582 setWithLastConsumed(current, "type", lv_type_10_0, "/merge"); 583 584 } 585 586 } 587 588 589 } 590 591 otherlv_11=(Token)match(input,15,FOLLOW_15_in_ruleEtsiBnf394); if (state.failed) return current; 592 if ( state.backtracking==0 ) { 593 594 newLeafNode(otherlv_11, grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_2_1()); 595 596 } 597 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:240:1: ( (lv_importSection_12_0= ruleImportSection ) )? 539 598 int alt6=2; 540 599 int LA6_0 = input.LA(1); … … 545 604 switch (alt6) { 546 605 case 1 : 547 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:2 34:1: (lv_importSection_12_0= ruleImportSection )606 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:241:1: (lv_importSection_12_0= ruleImportSection ) 548 607 { 549 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:2 34:1: (lv_importSection_12_0= ruleImportSection )550 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:2 35:3: lv_importSection_12_0= ruleImportSection608 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:241:1: (lv_importSection_12_0= ruleImportSection ) 609 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:242:3: lv_importSection_12_0= ruleImportSection 551 610 { 552 553 newCompositeNode(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_2_2_0()); 554 555 pushFollow(FOLLOW_ruleImportSection_in_ruleEtsiBnf402); 611 if ( state.backtracking==0 ) { 612 613 newCompositeNode(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_2_2_0()); 614 615 } 616 pushFollow(FOLLOW_ruleImportSection_in_ruleEtsiBnf415); 556 617 lv_importSection_12_0=ruleImportSection(); 557 618 558 619 state._fsp--; 559 560 561 if (current==null) { 562 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 563 } 564 set( 565 current, 566 "importSection", 567 lv_importSection_12_0, 568 "ImportSection"); 569 afterParserOrEnumRuleCall(); 570 620 if (state.failed) return current; 621 if ( state.backtracking==0 ) { 622 623 if (current==null) { 624 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 625 } 626 set( 627 current, 628 "importSection", 629 lv_importSection_12_0, 630 "ImportSection"); 631 afterParserOrEnumRuleCall(); 632 633 } 571 634 572 635 } … … 578 641 } 579 642 580 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:25 1:3: ( (lv_mergeEntry_13_0= ruleMergeEntry ) )*643 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:258:3: ( (lv_mergeEntry_13_0= ruleMergeEntry ) )* 581 644 loop7: 582 645 do { … … 591 654 switch (alt7) { 592 655 case 1 : 593 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:25 2:1: (lv_mergeEntry_13_0= ruleMergeEntry )656 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:259:1: (lv_mergeEntry_13_0= ruleMergeEntry ) 594 657 { 595 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:25 2:1: (lv_mergeEntry_13_0= ruleMergeEntry )596 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:2 53:3: lv_mergeEntry_13_0= ruleMergeEntry658 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:259:1: (lv_mergeEntry_13_0= ruleMergeEntry ) 659 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:260:3: lv_mergeEntry_13_0= ruleMergeEntry 597 660 { 598 599 newCompositeNode(grammarAccess.getEtsiBnfAccess().getMergeEntryMergeEntryParserRuleCall_2_3_0()); 600 601 pushFollow(FOLLOW_ruleMergeEntry_in_ruleEtsiBnf424); 661 if ( state.backtracking==0 ) { 662 663 newCompositeNode(grammarAccess.getEtsiBnfAccess().getMergeEntryMergeEntryParserRuleCall_2_3_0()); 664 665 } 666 pushFollow(FOLLOW_ruleMergeEntry_in_ruleEtsiBnf437); 602 667 lv_mergeEntry_13_0=ruleMergeEntry(); 603 668 604 669 state._fsp--; 605 606 607 if (current==null) { 608 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 609 } 610 add( 611 current, 612 "mergeEntry", 613 lv_mergeEntry_13_0, 614 "MergeEntry"); 615 afterParserOrEnumRuleCall(); 616 670 if (state.failed) return current; 671 if ( state.backtracking==0 ) { 672 673 if (current==null) { 674 current = createModelElementForParent(grammarAccess.getEtsiBnfRule()); 675 } 676 add( 677 current, 678 "mergeEntry", 679 lv_mergeEntry_13_0, 680 "MergeEntry"); 681 afterParserOrEnumRuleCall(); 682 683 } 617 684 618 685 } … … 639 706 } 640 707 641 leaveRule(); 708 if ( state.backtracking==0 ) { 709 leaveRule(); 710 } 642 711 } 643 712 … … 647 716 } 648 717 finally { 718 if ( state.backtracking>0 ) { memoize(input, 2, ruleEtsiBnf_StartIndex); } 649 719 } 650 720 return current; … … 654 724 655 725 // $ANTLR start "entryRuleImportSection" 656 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:2 77:1: entryRuleImportSection returns [EObject current=null] : iv_ruleImportSection= ruleImportSection EOF ;726 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:284:1: entryRuleImportSection returns [EObject current=null] : iv_ruleImportSection= ruleImportSection EOF ; 657 727 public final EObject entryRuleImportSection() throws RecognitionException { 658 728 EObject current = null; 659 729 int entryRuleImportSection_StartIndex = input.index(); 660 730 EObject iv_ruleImportSection = null; 661 731 662 732 663 733 try { 664 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:278:2: (iv_ruleImportSection= ruleImportSection EOF ) 665 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:279:2: iv_ruleImportSection= ruleImportSection EOF 666 { 667 newCompositeNode(grammarAccess.getImportSectionRule()); 668 pushFollow(FOLLOW_ruleImportSection_in_entryRuleImportSection462); 734 if ( state.backtracking>0 && alreadyParsedRule(input, 3) ) { return current; } 735 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:285:2: (iv_ruleImportSection= ruleImportSection EOF ) 736 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:286:2: iv_ruleImportSection= ruleImportSection EOF 737 { 738 if ( state.backtracking==0 ) { 739 newCompositeNode(grammarAccess.getImportSectionRule()); 740 } 741 pushFollow(FOLLOW_ruleImportSection_in_entryRuleImportSection475); 669 742 iv_ruleImportSection=ruleImportSection(); 670 743 671 744 state._fsp--; 672 673 current =iv_ruleImportSection; 674 match(input,EOF,FOLLOW_EOF_in_entryRuleImportSection472); 745 if (state.failed) return current; 746 if ( state.backtracking==0 ) { 747 current =iv_ruleImportSection; 748 } 749 match(input,EOF,FOLLOW_EOF_in_entryRuleImportSection485); if (state.failed) return current; 675 750 676 751 } … … 683 758 } 684 759 finally { 760 if ( state.backtracking>0 ) { memoize(input, 3, entryRuleImportSection_StartIndex); } 685 761 } 686 762 return current; … … 690 766 691 767 // $ANTLR start "ruleImportSection" 692 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:2 86:1: ruleImportSection returns [EObject current=null] : ( (lv_imports_0_0= ruleImport ) )+ ;768 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:293:1: ruleImportSection returns [EObject current=null] : ( (lv_imports_0_0= ruleImport ) )+ ; 693 769 public final EObject ruleImportSection() throws RecognitionException { 694 770 EObject current = null; 695 771 int ruleImportSection_StartIndex = input.index(); 696 772 EObject lv_imports_0_0 = null; 697 773 … … 700 776 701 777 try { 702 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:289:28: ( ( (lv_imports_0_0= ruleImport ) )+ ) 703 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:290:1: ( (lv_imports_0_0= ruleImport ) )+ 704 { 705 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:290:1: ( (lv_imports_0_0= ruleImport ) )+ 778 if ( state.backtracking>0 && alreadyParsedRule(input, 4) ) { return current; } 779 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:296:28: ( ( (lv_imports_0_0= ruleImport ) )+ ) 780 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:297:1: ( (lv_imports_0_0= ruleImport ) )+ 781 { 782 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:297:1: ( (lv_imports_0_0= ruleImport ) )+ 706 783 int cnt9=0; 707 784 loop9: … … 717 794 switch (alt9) { 718 795 case 1 : 719 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:29 1:1: (lv_imports_0_0= ruleImport )796 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:298:1: (lv_imports_0_0= ruleImport ) 720 797 { 721 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:29 1:1: (lv_imports_0_0= ruleImport )722 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:29 2:3: lv_imports_0_0= ruleImport798 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:298:1: (lv_imports_0_0= ruleImport ) 799 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:299:3: lv_imports_0_0= ruleImport 723 800 { 724 725 newCompositeNode(grammarAccess.getImportSectionAccess().getImportsImportParserRuleCall_0()); 726 727 pushFollow(FOLLOW_ruleImport_in_ruleImportSection517); 801 if ( state.backtracking==0 ) { 802 803 newCompositeNode(grammarAccess.getImportSectionAccess().getImportsImportParserRuleCall_0()); 804 805 } 806 pushFollow(FOLLOW_ruleImport_in_ruleImportSection530); 728 807 lv_imports_0_0=ruleImport(); 729 808 730 809 state._fsp--; 731 732 733 if (current==null) { 734 current = createModelElementForParent(grammarAccess.getImportSectionRule()); 735 } 736 add( 737 current, 738 "imports", 739 lv_imports_0_0, 740 "Import"); 741 afterParserOrEnumRuleCall(); 742 810 if (state.failed) return current; 811 if ( state.backtracking==0 ) { 812 813 if (current==null) { 814 current = createModelElementForParent(grammarAccess.getImportSectionRule()); 815 } 816 add( 817 current, 818 "imports", 819 lv_imports_0_0, 820 "Import"); 821 afterParserOrEnumRuleCall(); 822 823 } 743 824 744 825 } … … 750 831 default : 751 832 if ( cnt9 >= 1 ) break loop9; 833 if (state.backtracking>0) {state.failed=true; return current;} 752 834 EarlyExitException eee = 753 835 new EarlyExitException(9, input); … … 760 842 } 761 843 762 leaveRule(); 844 if ( state.backtracking==0 ) { 845 leaveRule(); 846 } 763 847 } 764 848 … … 768 852 } 769 853 finally { 854 if ( state.backtracking>0 ) { memoize(input, 4, ruleImportSection_StartIndex); } 770 855 } 771 856 return current; … … 775 860 776 861 // $ANTLR start "entryRuleBnfEntry" 777 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:3 16:1: entryRuleBnfEntry returns [EObject current=null] : iv_ruleBnfEntry= ruleBnfEntry EOF ;862 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:323:1: entryRuleBnfEntry returns [EObject current=null] : iv_ruleBnfEntry= ruleBnfEntry EOF ; 778 863 public final EObject entryRuleBnfEntry() throws RecognitionException { 779 864 EObject current = null; 780 865 int entryRuleBnfEntry_StartIndex = input.index(); 781 866 EObject iv_ruleBnfEntry = null; 782 867 783 868 784 869 try { 785 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:317:2: (iv_ruleBnfEntry= ruleBnfEntry EOF ) 786 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:318:2: iv_ruleBnfEntry= ruleBnfEntry EOF 787 { 788 newCompositeNode(grammarAccess.getBnfEntryRule()); 789 pushFollow(FOLLOW_ruleBnfEntry_in_entryRuleBnfEntry553); 870 if ( state.backtracking>0 && alreadyParsedRule(input, 5) ) { return current; } 871 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:324:2: (iv_ruleBnfEntry= ruleBnfEntry EOF ) 872 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:325:2: iv_ruleBnfEntry= ruleBnfEntry EOF 873 { 874 if ( state.backtracking==0 ) { 875 newCompositeNode(grammarAccess.getBnfEntryRule()); 876 } 877 pushFollow(FOLLOW_ruleBnfEntry_in_entryRuleBnfEntry566); 790 878 iv_ruleBnfEntry=ruleBnfEntry(); 791 879 792 880 state._fsp--; 793 794 current =iv_ruleBnfEntry; 795 match(input,EOF,FOLLOW_EOF_in_entryRuleBnfEntry563); 881 if (state.failed) return current; 882 if ( state.backtracking==0 ) { 883 current =iv_ruleBnfEntry; 884 } 885 match(input,EOF,FOLLOW_EOF_in_entryRuleBnfEntry576); if (state.failed) return current; 796 886 797 887 } … … 804 894 } 805 895 finally { 896 if ( state.backtracking>0 ) { memoize(input, 5, entryRuleBnfEntry_StartIndex); } 806 897 } 807 898 return current; … … 811 902 812 903 // $ANTLR start "ruleBnfEntry" 813 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:3 25:1: ruleBnfEntry returns [EObject current=null] : ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_rule_1_0= ruleRule ) ) ) ;904 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:332:1: ruleBnfEntry returns [EObject current=null] : ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_rule_1_0= ruleRule ) ) ) ; 814 905 public final EObject ruleBnfEntry() throws RecognitionException { 815 906 EObject current = null; 816 907 int ruleBnfEntry_StartIndex = input.index(); 817 908 EObject lv_sectionheader_0_0 = null; 818 909 … … 823 914 824 915 try { 825 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:328:28: ( ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_rule_1_0= ruleRule ) ) ) ) 826 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:329:1: ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_rule_1_0= ruleRule ) ) ) 827 { 828 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:329:1: ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_rule_1_0= ruleRule ) ) ) 916 if ( state.backtracking>0 && alreadyParsedRule(input, 6) ) { return current; } 917 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:335:28: ( ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_rule_1_0= ruleRule ) ) ) ) 918 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:336:1: ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_rule_1_0= ruleRule ) ) ) 919 { 920 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:336:1: ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_rule_1_0= ruleRule ) ) ) 829 921 int alt10=2; 830 922 int LA10_0 = input.LA(1); … … 837 929 } 838 930 else { 931 if (state.backtracking>0) {state.failed=true; return current;} 839 932 NoViableAltException nvae = 840 933 new NoViableAltException("", 10, 0, input); … … 844 937 switch (alt10) { 845 938 case 1 : 846 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:329:2: ( (lv_sectionheader_0_0= ruleSectionHeading ) ) 847 { 848 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:329:2: ( (lv_sectionheader_0_0= ruleSectionHeading ) ) 849 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:330:1: (lv_sectionheader_0_0= ruleSectionHeading ) 850 { 851 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:330:1: (lv_sectionheader_0_0= ruleSectionHeading ) 852 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:331:3: lv_sectionheader_0_0= ruleSectionHeading 853 { 854 855 newCompositeNode(grammarAccess.getBnfEntryAccess().getSectionheaderSectionHeadingParserRuleCall_0_0()); 856 857 pushFollow(FOLLOW_ruleSectionHeading_in_ruleBnfEntry609); 939 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:336:2: ( (lv_sectionheader_0_0= ruleSectionHeading ) ) 940 { 941 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:336:2: ( (lv_sectionheader_0_0= ruleSectionHeading ) ) 942 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:337:1: (lv_sectionheader_0_0= ruleSectionHeading ) 943 { 944 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:337:1: (lv_sectionheader_0_0= ruleSectionHeading ) 945 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:338:3: lv_sectionheader_0_0= ruleSectionHeading 946 { 947 if ( state.backtracking==0 ) { 948 949 newCompositeNode(grammarAccess.getBnfEntryAccess().getSectionheaderSectionHeadingParserRuleCall_0_0()); 950 951 } 952 pushFollow(FOLLOW_ruleSectionHeading_in_ruleBnfEntry622); 858 953 lv_sectionheader_0_0=ruleSectionHeading(); 859 954 860 955 state._fsp--; 861 862 863 if (current==null) { 864 current = createModelElementForParent(grammarAccess.getBnfEntryRule()); 865 } 866 set( 867 current, 868 "sectionheader", 869 lv_sectionheader_0_0, 870 "SectionHeading"); 871 afterParserOrEnumRuleCall(); 872 956 if (state.failed) return current; 957 if ( state.backtracking==0 ) { 958 959 if (current==null) { 960 current = createModelElementForParent(grammarAccess.getBnfEntryRule()); 961 } 962 set( 963 current, 964 "sectionheader", 965 lv_sectionheader_0_0, 966 "SectionHeading"); 967 afterParserOrEnumRuleCall(); 968 969 } 873 970 874 971 } … … 881 978 break; 882 979 case 2 : 883 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:348:6: ( (lv_rule_1_0= ruleRule ) ) 884 { 885 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:348:6: ( (lv_rule_1_0= ruleRule ) ) 886 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:349:1: (lv_rule_1_0= ruleRule ) 887 { 888 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:349:1: (lv_rule_1_0= ruleRule ) 889 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:350:3: lv_rule_1_0= ruleRule 890 { 891 892 newCompositeNode(grammarAccess.getBnfEntryAccess().getRuleRuleParserRuleCall_1_0()); 893 894 pushFollow(FOLLOW_ruleRule_in_ruleBnfEntry636); 980 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:355:6: ( (lv_rule_1_0= ruleRule ) ) 981 { 982 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:355:6: ( (lv_rule_1_0= ruleRule ) ) 983 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:356:1: (lv_rule_1_0= ruleRule ) 984 { 985 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:356:1: (lv_rule_1_0= ruleRule ) 986 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:357:3: lv_rule_1_0= ruleRule 987 { 988 if ( state.backtracking==0 ) { 989 990 newCompositeNode(grammarAccess.getBnfEntryAccess().getRuleRuleParserRuleCall_1_0()); 991 992 } 993 pushFollow(FOLLOW_ruleRule_in_ruleBnfEntry649); 895 994 lv_rule_1_0=ruleRule(); 896 995 897 996 state._fsp--; 898 899 900 if (current==null) { 901 current = createModelElementForParent(grammarAccess.getBnfEntryRule()); 902 } 903 set( 904 current, 905 "rule", 906 lv_rule_1_0, 907 "Rule"); 908 afterParserOrEnumRuleCall(); 909 997 if (state.failed) return current; 998 if ( state.backtracking==0 ) { 999 1000 if (current==null) { 1001 current = createModelElementForParent(grammarAccess.getBnfEntryRule()); 1002 } 1003 set( 1004 current, 1005 "rule", 1006 lv_rule_1_0, 1007 "Rule"); 1008 afterParserOrEnumRuleCall(); 1009 1010 } 910 1011 911 1012 } … … 923 1024 } 924 1025 925 leaveRule(); 1026 if ( state.backtracking==0 ) { 1027 leaveRule(); 1028 } 926 1029 } 927 1030 … … 931 1034 } 932 1035 finally { 1036 if ( state.backtracking>0 ) { memoize(input, 6, ruleBnfEntry_StartIndex); } 933 1037 } 934 1038 return current; … … 938 1042 939 1043 // $ANTLR start "entryRuleDeltaEntry" 940 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:3 74:1: entryRuleDeltaEntry returns [EObject current=null] : iv_ruleDeltaEntry= ruleDeltaEntry EOF ;1044 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:381:1: entryRuleDeltaEntry returns [EObject current=null] : iv_ruleDeltaEntry= ruleDeltaEntry EOF ; 941 1045 public final EObject entryRuleDeltaEntry() throws RecognitionException { 942 1046 EObject current = null; 943 1047 int entryRuleDeltaEntry_StartIndex = input.index(); 944 1048 EObject iv_ruleDeltaEntry = null; 945 1049 946 1050 947 1051 try { 948 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:375:2: (iv_ruleDeltaEntry= ruleDeltaEntry EOF ) 949 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:376:2: iv_ruleDeltaEntry= ruleDeltaEntry EOF 950 { 951 newCompositeNode(grammarAccess.getDeltaEntryRule()); 952 pushFollow(FOLLOW_ruleDeltaEntry_in_entryRuleDeltaEntry672); 1052 if ( state.backtracking>0 && alreadyParsedRule(input, 7) ) { return current; } 1053 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:382:2: (iv_ruleDeltaEntry= ruleDeltaEntry EOF ) 1054 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:383:2: iv_ruleDeltaEntry= ruleDeltaEntry EOF 1055 { 1056 if ( state.backtracking==0 ) { 1057 newCompositeNode(grammarAccess.getDeltaEntryRule()); 1058 } 1059 pushFollow(FOLLOW_ruleDeltaEntry_in_entryRuleDeltaEntry685); 953 1060 iv_ruleDeltaEntry=ruleDeltaEntry(); 954 1061 955 1062 state._fsp--; 956 957 current =iv_ruleDeltaEntry; 958 match(input,EOF,FOLLOW_EOF_in_entryRuleDeltaEntry682); 1063 if (state.failed) return current; 1064 if ( state.backtracking==0 ) { 1065 current =iv_ruleDeltaEntry; 1066 } 1067 match(input,EOF,FOLLOW_EOF_in_entryRuleDeltaEntry695); if (state.failed) return current; 959 1068 960 1069 } … … 967 1076 } 968 1077 finally { 1078 if ( state.backtracking>0 ) { memoize(input, 7, entryRuleDeltaEntry_StartIndex); } 969 1079 } 970 1080 return current; … … 974 1084 975 1085 // $ANTLR start "ruleDeltaEntry" 976 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:3 83:1: ruleDeltaEntry returns [EObject current=null] : ( ( (lv_rule_0_0= ruleRule ) ) | ( (lv_sectionheader_1_0= ruleSectionHeading ) ) | ( (lv_extRule_2_0= ruleExtRule ) ) ) ;1086 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:390:1: ruleDeltaEntry returns [EObject current=null] : ( ( (lv_rule_0_0= ruleRule ) ) | ( (lv_sectionheader_1_0= ruleSectionHeading ) ) | ( (lv_extRule_2_0= ruleExtRule ) ) ) ; 977 1087 public final EObject ruleDeltaEntry() throws RecognitionException { 978 1088 EObject current = null; 979 1089 int ruleDeltaEntry_StartIndex = input.index(); 980 1090 EObject lv_rule_0_0 = null; 981 1091 … … 988 1098 989 1099 try { 990 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:386:28: ( ( ( (lv_rule_0_0= ruleRule ) ) | ( (lv_sectionheader_1_0= ruleSectionHeading ) ) | ( (lv_extRule_2_0= ruleExtRule ) ) ) ) 991 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:387:1: ( ( (lv_rule_0_0= ruleRule ) ) | ( (lv_sectionheader_1_0= ruleSectionHeading ) ) | ( (lv_extRule_2_0= ruleExtRule ) ) ) 992 { 993 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:387:1: ( ( (lv_rule_0_0= ruleRule ) ) | ( (lv_sectionheader_1_0= ruleSectionHeading ) ) | ( (lv_extRule_2_0= ruleExtRule ) ) ) 1100 if ( state.backtracking>0 && alreadyParsedRule(input, 8) ) { return current; } 1101 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:393:28: ( ( ( (lv_rule_0_0= ruleRule ) ) | ( (lv_sectionheader_1_0= ruleSectionHeading ) ) | ( (lv_extRule_2_0= ruleExtRule ) ) ) ) 1102 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:394:1: ( ( (lv_rule_0_0= ruleRule ) ) | ( (lv_sectionheader_1_0= ruleSectionHeading ) ) | ( (lv_extRule_2_0= ruleExtRule ) ) ) 1103 { 1104 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:394:1: ( ( (lv_rule_0_0= ruleRule ) ) | ( (lv_sectionheader_1_0= ruleSectionHeading ) ) | ( (lv_extRule_2_0= ruleExtRule ) ) ) 994 1105 int alt11=3; 995 1106 switch ( input.LA(1) ) { … … 1007 1118 int LA11_2 = input.LA(5); 1008 1119 1009 if ( (LA11_2==26) ) { 1120 if ( (LA11_2==25) ) { 1121 alt11=1; 1122 } 1123 else if ( (LA11_2==26) ) { 1010 1124 alt11=3; 1011 1125 } 1012 else if ( (LA11_2==25) ) {1013 alt11=1;1014 }1015 1126 else { 1127 if (state.backtracking>0) {state.failed=true; return current;} 1016 1128 NoViableAltException nvae = 1017 1129 new NoViableAltException("", 11, 2, input); … … 1021 1133 } 1022 1134 else { 1135 if (state.backtracking>0) {state.failed=true; return current;} 1023 1136 NoViableAltException nvae = 1024 1137 new NoViableAltException("", 11, 5, input); … … 1028 1141 } 1029 1142 else { 1143 if (state.backtracking>0) {state.failed=true; return current;} 1030 1144 NoViableAltException nvae = 1031 1145 new NoViableAltException("", 11, 4, input); … … 1040 1154 int LA11_2 = input.LA(4); 1041 1155 1042 if ( (LA11_2==26) ) { 1156 if ( (LA11_2==25) ) { 1157 alt11=1; 1158 } 1159 else if ( (LA11_2==26) ) { 1043 1160 alt11=3; 1044 1161 } 1045 else if ( (LA11_2==25) ) {1046 alt11=1;1047 }1048 1162 else { 1163 if (state.backtracking>0) {state.failed=true; return current;} 1049 1164 NoViableAltException nvae = 1050 1165 new NoViableAltException("", 11, 2, input); … … 1054 1169 } 1055 1170 else { 1171 if (state.backtracking>0) {state.failed=true; return current;} 1056 1172 NoViableAltException nvae = 1057 1173 new NoViableAltException("", 11, 5, input); … … 1061 1177 } 1062 1178 else { 1179 if (state.backtracking>0) {state.failed=true; return current;} 1063 1180 NoViableAltException nvae = 1064 1181 new NoViableAltException("", 11, 1, input); … … 1072 1189 int LA11_2 = input.LA(2); 1073 1190 1074 if ( (LA11_2==26) ) { 1191 if ( (LA11_2==25) ) { 1192 alt11=1; 1193 } 1194 else if ( (LA11_2==26) ) { 1075 1195 alt11=3; 1076 1196 } 1077 else if ( (LA11_2==25) ) {1078 alt11=1;1079 }1080 1197 else { 1198 if (state.backtracking>0) {state.failed=true; return current;} 1081 1199 NoViableAltException nvae = 1082 1200 new NoViableAltException("", 11, 2, input); … … 1092 1210 break; 1093 1211 default: 1212 if (state.backtracking>0) {state.failed=true; return current;} 1094 1213 NoViableAltException nvae = 1095 1214 new NoViableAltException("", 11, 0, input); … … 1100 1219 switch (alt11) { 1101 1220 case 1 : 1102 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:387:2: ( (lv_rule_0_0= ruleRule ) ) 1103 { 1104 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:387:2: ( (lv_rule_0_0= ruleRule ) ) 1105 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:388:1: (lv_rule_0_0= ruleRule ) 1106 { 1107 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:388:1: (lv_rule_0_0= ruleRule ) 1108 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:389:3: lv_rule_0_0= ruleRule 1109 { 1110 1111 newCompositeNode(grammarAccess.getDeltaEntryAccess().getRuleRuleParserRuleCall_0_0()); 1112 1113 pushFollow(FOLLOW_ruleRule_in_ruleDeltaEntry728); 1221 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:394:2: ( (lv_rule_0_0= ruleRule ) ) 1222 { 1223 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:394:2: ( (lv_rule_0_0= ruleRule ) ) 1224 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:395:1: (lv_rule_0_0= ruleRule ) 1225 { 1226 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:395:1: (lv_rule_0_0= ruleRule ) 1227 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:396:3: lv_rule_0_0= ruleRule 1228 { 1229 if ( state.backtracking==0 ) { 1230 1231 newCompositeNode(grammarAccess.getDeltaEntryAccess().getRuleRuleParserRuleCall_0_0()); 1232 1233 } 1234 pushFollow(FOLLOW_ruleRule_in_ruleDeltaEntry741); 1114 1235 lv_rule_0_0=ruleRule(); 1115 1236 1116 1237 state._fsp--; 1117 1118 1119 if (current==null) { 1120 current = createModelElementForParent(grammarAccess.getDeltaEntryRule()); 1121 } 1122 set( 1123 current, 1124 "rule", 1125 lv_rule_0_0, 1126 "Rule"); 1127 afterParserOrEnumRuleCall(); 1128 1238 if (state.failed) return current; 1239 if ( state.backtracking==0 ) { 1240 1241 if (current==null) { 1242 current = createModelElementForParent(grammarAccess.getDeltaEntryRule()); 1243 } 1244 set( 1245 current, 1246 "rule", 1247 lv_rule_0_0, 1248 "Rule"); 1249 afterParserOrEnumRuleCall(); 1250 1251 } 1129 1252 1130 1253 } … … 1137 1260 break; 1138 1261 case 2 : 1139 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:406:6: ( (lv_sectionheader_1_0= ruleSectionHeading ) ) 1140 { 1141 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:406:6: ( (lv_sectionheader_1_0= ruleSectionHeading ) ) 1142 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:407:1: (lv_sectionheader_1_0= ruleSectionHeading ) 1143 { 1144 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:407:1: (lv_sectionheader_1_0= ruleSectionHeading ) 1145 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:408:3: lv_sectionheader_1_0= ruleSectionHeading 1146 { 1147 1148 newCompositeNode(grammarAccess.getDeltaEntryAccess().getSectionheaderSectionHeadingParserRuleCall_1_0()); 1149 1150 pushFollow(FOLLOW_ruleSectionHeading_in_ruleDeltaEntry755); 1262 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:413:6: ( (lv_sectionheader_1_0= ruleSectionHeading ) ) 1263 { 1264 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:413:6: ( (lv_sectionheader_1_0= ruleSectionHeading ) ) 1265 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:414:1: (lv_sectionheader_1_0= ruleSectionHeading ) 1266 { 1267 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:414:1: (lv_sectionheader_1_0= ruleSectionHeading ) 1268 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:415:3: lv_sectionheader_1_0= ruleSectionHeading 1269 { 1270 if ( state.backtracking==0 ) { 1271 1272 newCompositeNode(grammarAccess.getDeltaEntryAccess().getSectionheaderSectionHeadingParserRuleCall_1_0()); 1273 1274 } 1275 pushFollow(FOLLOW_ruleSectionHeading_in_ruleDeltaEntry768); 1151 1276 lv_sectionheader_1_0=ruleSectionHeading(); 1152 1277 1153 1278 state._fsp--; 1154 1155 1156 if (current==null) { 1157 current = createModelElementForParent(grammarAccess.getDeltaEntryRule()); 1158 } 1159 set( 1160 current, 1161 "sectionheader", 1162 lv_sectionheader_1_0, 1163 "SectionHeading"); 1164 afterParserOrEnumRuleCall(); 1165 1279 if (state.failed) return current; 1280 if ( state.backtracking==0 ) { 1281 1282 if (current==null) { 1283 current = createModelElementForParent(grammarAccess.getDeltaEntryRule()); 1284 } 1285 set( 1286 current, 1287 "sectionheader", 1288 lv_sectionheader_1_0, 1289 "SectionHeading"); 1290 afterParserOrEnumRuleCall(); 1291 1292 } 1166 1293 1167 1294 } … … 1174 1301 break; 1175 1302 case 3 : 1176 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:425:6: ( (lv_extRule_2_0= ruleExtRule ) ) 1177 { 1178 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:425:6: ( (lv_extRule_2_0= ruleExtRule ) ) 1179 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:426:1: (lv_extRule_2_0= ruleExtRule ) 1180 { 1181 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:426:1: (lv_extRule_2_0= ruleExtRule ) 1182 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:427:3: lv_extRule_2_0= ruleExtRule 1183 { 1184 1185 newCompositeNode(grammarAccess.getDeltaEntryAccess().getExtRuleExtRuleParserRuleCall_2_0()); 1186 1187 pushFollow(FOLLOW_ruleExtRule_in_ruleDeltaEntry782); 1303 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:432:6: ( (lv_extRule_2_0= ruleExtRule ) ) 1304 { 1305 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:432:6: ( (lv_extRule_2_0= ruleExtRule ) ) 1306 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:433:1: (lv_extRule_2_0= ruleExtRule ) 1307 { 1308 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:433:1: (lv_extRule_2_0= ruleExtRule ) 1309 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:434:3: lv_extRule_2_0= ruleExtRule 1310 { 1311 if ( state.backtracking==0 ) { 1312 1313 newCompositeNode(grammarAccess.getDeltaEntryAccess().getExtRuleExtRuleParserRuleCall_2_0()); 1314 1315 } 1316 pushFollow(FOLLOW_ruleExtRule_in_ruleDeltaEntry795); 1188 1317 lv_extRule_2_0=ruleExtRule(); 1189 1318 1190 1319 state._fsp--; 1191 1192 1193 if (current==null) { 1194 current = createModelElementForParent(grammarAccess.getDeltaEntryRule()); 1195 } 1196 set( 1197 current, 1198 "extRule", 1199 lv_extRule_2_0, 1200 "ExtRule"); 1201 afterParserOrEnumRuleCall(); 1202 1320 if (state.failed) return current; 1321 if ( state.backtracking==0 ) { 1322 1323 if (current==null) { 1324 current = createModelElementForParent(grammarAccess.getDeltaEntryRule()); 1325 } 1326 set( 1327 current, 1328 "extRule", 1329 lv_extRule_2_0, 1330 "ExtRule"); 1331 afterParserOrEnumRuleCall(); 1332 1333 } 1203 1334 1204 1335 } … … 1216 1347 } 1217 1348 1218 leaveRule(); 1349 if ( state.backtracking==0 ) { 1350 leaveRule(); 1351 } 1219 1352 } 1220 1353 … … 1224 1357 } 1225 1358 finally { 1359 if ( state.backtracking>0 ) { memoize(input, 8, ruleDeltaEntry_StartIndex); } 1226 1360 } 1227 1361 return current; … … 1231 1365 1232 1366 // $ANTLR start "entryRuleMergeEntry" 1233 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:45 1:1: entryRuleMergeEntry returns [EObject current=null] : iv_ruleMergeEntry= ruleMergeEntry EOF ;1367 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:458:1: entryRuleMergeEntry returns [EObject current=null] : iv_ruleMergeEntry= ruleMergeEntry EOF ; 1234 1368 public final EObject entryRuleMergeEntry() throws RecognitionException { 1235 1369 EObject current = null; 1236 1370 int entryRuleMergeEntry_StartIndex = input.index(); 1237 1371 EObject iv_ruleMergeEntry = null; 1238 1372 1239 1373 1240 1374 try { 1241 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:452:2: (iv_ruleMergeEntry= ruleMergeEntry EOF ) 1242 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:453:2: iv_ruleMergeEntry= ruleMergeEntry EOF 1243 { 1244 newCompositeNode(grammarAccess.getMergeEntryRule()); 1245 pushFollow(FOLLOW_ruleMergeEntry_in_entryRuleMergeEntry818); 1375 if ( state.backtracking>0 && alreadyParsedRule(input, 9) ) { return current; } 1376 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:459:2: (iv_ruleMergeEntry= ruleMergeEntry EOF ) 1377 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:460:2: iv_ruleMergeEntry= ruleMergeEntry EOF 1378 { 1379 if ( state.backtracking==0 ) { 1380 newCompositeNode(grammarAccess.getMergeEntryRule()); 1381 } 1382 pushFollow(FOLLOW_ruleMergeEntry_in_entryRuleMergeEntry831); 1246 1383 iv_ruleMergeEntry=ruleMergeEntry(); 1247 1384 1248 1385 state._fsp--; 1249 1250 current =iv_ruleMergeEntry; 1251 match(input,EOF,FOLLOW_EOF_in_entryRuleMergeEntry828); 1386 if (state.failed) return current; 1387 if ( state.backtracking==0 ) { 1388 current =iv_ruleMergeEntry; 1389 } 1390 match(input,EOF,FOLLOW_EOF_in_entryRuleMergeEntry841); if (state.failed) return current; 1252 1391 1253 1392 } … … 1260 1399 } 1261 1400 finally { 1401 if ( state.backtracking>0 ) { memoize(input, 9, entryRuleMergeEntry_StartIndex); } 1262 1402 } 1263 1403 return current; … … 1267 1407 1268 1408 // $ANTLR start "ruleMergeEntry" 1269 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:46 0:1: ruleMergeEntry returns [EObject current=null] : ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_mergeRule_1_0= ruleMergeRule ) ) ) ;1409 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:467:1: ruleMergeEntry returns [EObject current=null] : ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_mergeRule_1_0= ruleMergeRule ) ) ) ; 1270 1410 public final EObject ruleMergeEntry() throws RecognitionException { 1271 1411 EObject current = null; 1272 1412 int ruleMergeEntry_StartIndex = input.index(); 1273 1413 EObject lv_sectionheader_0_0 = null; 1274 1414 … … 1279 1419 1280 1420 try { 1281 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:463:28: ( ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_mergeRule_1_0= ruleMergeRule ) ) ) ) 1282 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:464:1: ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_mergeRule_1_0= ruleMergeRule ) ) ) 1283 { 1284 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:464:1: ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_mergeRule_1_0= ruleMergeRule ) ) ) 1421 if ( state.backtracking>0 && alreadyParsedRule(input, 10) ) { return current; } 1422 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:470:28: ( ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_mergeRule_1_0= ruleMergeRule ) ) ) ) 1423 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:471:1: ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_mergeRule_1_0= ruleMergeRule ) ) ) 1424 { 1425 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:471:1: ( ( (lv_sectionheader_0_0= ruleSectionHeading ) ) | ( (lv_mergeRule_1_0= ruleMergeRule ) ) ) 1285 1426 int alt12=2; 1286 1427 int LA12_0 = input.LA(1); … … 1293 1434 } 1294 1435 else { 1436 if (state.backtracking>0) {state.failed=true; return current;} 1295 1437 NoViableAltException nvae = 1296 1438 new NoViableAltException("", 12, 0, input); … … 1300 1442 switch (alt12) { 1301 1443 case 1 : 1302 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:464:2: ( (lv_sectionheader_0_0= ruleSectionHeading ) ) 1303 { 1304 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:464:2: ( (lv_sectionheader_0_0= ruleSectionHeading ) ) 1305 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:465:1: (lv_sectionheader_0_0= ruleSectionHeading ) 1306 { 1307 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:465:1: (lv_sectionheader_0_0= ruleSectionHeading ) 1308 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:466:3: lv_sectionheader_0_0= ruleSectionHeading 1309 { 1310 1311 newCompositeNode(grammarAccess.getMergeEntryAccess().getSectionheaderSectionHeadingParserRuleCall_0_0()); 1312 1313 pushFollow(FOLLOW_ruleSectionHeading_in_ruleMergeEntry874); 1444 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:471:2: ( (lv_sectionheader_0_0= ruleSectionHeading ) ) 1445 { 1446 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:471:2: ( (lv_sectionheader_0_0= ruleSectionHeading ) ) 1447 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:472:1: (lv_sectionheader_0_0= ruleSectionHeading ) 1448 { 1449 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:472:1: (lv_sectionheader_0_0= ruleSectionHeading ) 1450 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:473:3: lv_sectionheader_0_0= ruleSectionHeading 1451 { 1452 if ( state.backtracking==0 ) { 1453 1454 newCompositeNode(grammarAccess.getMergeEntryAccess().getSectionheaderSectionHeadingParserRuleCall_0_0()); 1455 1456 } 1457 pushFollow(FOLLOW_ruleSectionHeading_in_ruleMergeEntry887); 1314 1458 lv_sectionheader_0_0=ruleSectionHeading(); 1315 1459 1316 1460 state._fsp--; 1317 1318 1319 if (current==null) { 1320 current = createModelElementForParent(grammarAccess.getMergeEntryRule()); 1321 } 1322 set( 1323 current, 1324 "sectionheader", 1325 lv_sectionheader_0_0, 1326 "SectionHeading"); 1327 afterParserOrEnumRuleCall(); 1328 1461 if (state.failed) return current; 1462 if ( state.backtracking==0 ) { 1463 1464 if (current==null) { 1465 current = createModelElementForParent(grammarAccess.getMergeEntryRule()); 1466 } 1467 set( 1468 current, 1469 "sectionheader", 1470 lv_sectionheader_0_0, 1471 "SectionHeading"); 1472 afterParserOrEnumRuleCall(); 1473 1474 } 1329 1475 1330 1476 } … … 1337 1483 break; 1338 1484 case 2 : 1339 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:483:6: ( (lv_mergeRule_1_0= ruleMergeRule ) ) 1340 { 1341 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:483:6: ( (lv_mergeRule_1_0= ruleMergeRule ) ) 1342 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:484:1: (lv_mergeRule_1_0= ruleMergeRule ) 1343 { 1344 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:484:1: (lv_mergeRule_1_0= ruleMergeRule ) 1345 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:485:3: lv_mergeRule_1_0= ruleMergeRule 1346 { 1347 1348 newCompositeNode(grammarAccess.getMergeEntryAccess().getMergeRuleMergeRuleParserRuleCall_1_0()); 1349 1350 pushFollow(FOLLOW_ruleMergeRule_in_ruleMergeEntry901); 1485 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:490:6: ( (lv_mergeRule_1_0= ruleMergeRule ) ) 1486 { 1487 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:490:6: ( (lv_mergeRule_1_0= ruleMergeRule ) ) 1488 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:491:1: (lv_mergeRule_1_0= ruleMergeRule ) 1489 { 1490 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:491:1: (lv_mergeRule_1_0= ruleMergeRule ) 1491 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:492:3: lv_mergeRule_1_0= ruleMergeRule 1492 { 1493 if ( state.backtracking==0 ) { 1494 1495 newCompositeNode(grammarAccess.getMergeEntryAccess().getMergeRuleMergeRuleParserRuleCall_1_0()); 1496 1497 } 1498 pushFollow(FOLLOW_ruleMergeRule_in_ruleMergeEntry914); 1351 1499 lv_mergeRule_1_0=ruleMergeRule(); 1352 1500 1353 1501 state._fsp--; 1354 1355 1356 if (current==null) { 1357 current = createModelElementForParent(grammarAccess.getMergeEntryRule()); 1358 } 1359 set( 1360 current, 1361 "mergeRule", 1362 lv_mergeRule_1_0, 1363 "MergeRule"); 1364 afterParserOrEnumRuleCall(); 1365 1502 if (state.failed) return current; 1503 if ( state.backtracking==0 ) { 1504 1505 if (current==null) { 1506 current = createModelElementForParent(grammarAccess.getMergeEntryRule()); 1507 } 1508 set( 1509 current, 1510 "mergeRule", 1511 lv_mergeRule_1_0, 1512 "MergeRule"); 1513 afterParserOrEnumRuleCall(); 1514 1515 } 1366 1516 1367 1517 } … … 1379 1529 } 1380 1530 1381 leaveRule(); 1531 if ( state.backtracking==0 ) { 1532 leaveRule(); 1533 } 1382 1534 } 1383 1535 … … 1387 1539 } 1388 1540 finally { 1541 if ( state.backtracking>0 ) { memoize(input, 10, ruleMergeEntry_StartIndex); } 1389 1542 } 1390 1543 return current; … … 1394 1547 1395 1548 // $ANTLR start "entryRuleSectionHeading" 1396 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:5 09:1: entryRuleSectionHeading returns [EObject current=null] : iv_ruleSectionHeading= ruleSectionHeading EOF ;1549 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:516:1: entryRuleSectionHeading returns [EObject current=null] : iv_ruleSectionHeading= ruleSectionHeading EOF ; 1397 1550 public final EObject entryRuleSectionHeading() throws RecognitionException { 1398 1551 EObject current = null; 1399 1552 int entryRuleSectionHeading_StartIndex = input.index(); 1400 1553 EObject iv_ruleSectionHeading = null; 1401 1554 1402 1555 1403 1556 try { 1404 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:510:2: (iv_ruleSectionHeading= ruleSectionHeading EOF ) 1405 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:511:2: iv_ruleSectionHeading= ruleSectionHeading EOF 1406 { 1407 newCompositeNode(grammarAccess.getSectionHeadingRule()); 1408 pushFollow(FOLLOW_ruleSectionHeading_in_entryRuleSectionHeading937); 1557 if ( state.backtracking>0 && alreadyParsedRule(input, 11) ) { return current; } 1558 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:517:2: (iv_ruleSectionHeading= ruleSectionHeading EOF ) 1559 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:518:2: iv_ruleSectionHeading= ruleSectionHeading EOF 1560 { 1561 if ( state.backtracking==0 ) { 1562 newCompositeNode(grammarAccess.getSectionHeadingRule()); 1563 } 1564 pushFollow(FOLLOW_ruleSectionHeading_in_entryRuleSectionHeading950); 1409 1565 iv_ruleSectionHeading=ruleSectionHeading(); 1410 1566 1411 1567 state._fsp--; 1412 1413 current =iv_ruleSectionHeading; 1414 match(input,EOF,FOLLOW_EOF_in_entryRuleSectionHeading947); 1568 if (state.failed) return current; 1569 if ( state.backtracking==0 ) { 1570 current =iv_ruleSectionHeading; 1571 } 1572 match(input,EOF,FOLLOW_EOF_in_entryRuleSectionHeading960); if (state.failed) return current; 1415 1573 1416 1574 } … … 1423 1581 } 1424 1582 finally { 1583 if ( state.backtracking>0 ) { memoize(input, 11, entryRuleSectionHeading_StartIndex); } 1425 1584 } 1426 1585 return current; … … 1430 1589 1431 1590 // $ANTLR start "ruleSectionHeading" 1432 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:5 18:1: ruleSectionHeading returns [EObject current=null] : ( () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) ) ;1591 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:525:1: ruleSectionHeading returns [EObject current=null] : ( () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) ) ; 1433 1592 public final EObject ruleSectionHeading() throws RecognitionException { 1434 1593 EObject current = null; 1435 1594 int ruleSectionHeading_StartIndex = input.index(); 1436 1595 Token lv_sectionHeader_1_0=null; 1437 1596 … … 1439 1598 1440 1599 try { 1441 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:521:28: ( ( () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) ) ) 1442 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:522:1: ( () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) ) 1443 { 1444 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:522:1: ( () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) ) 1445 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:522:2: () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) 1446 { 1447 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:522:2: () 1448 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:523:5: 1449 { 1450 1451 current = forceCreateModelElement( 1452 grammarAccess.getSectionHeadingAccess().getSectionHeadingAction_0(), 1453 current); 1454 1455 1456 } 1457 1458 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:528:2: ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) 1459 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:529:1: (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) 1460 { 1461 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:529:1: (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) 1462 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:530:3: lv_sectionHeader_1_0= RULE_SECTIONHEADER 1463 { 1464 lv_sectionHeader_1_0=(Token)match(input,RULE_SECTIONHEADER,FOLLOW_RULE_SECTIONHEADER_in_ruleSectionHeading998); 1465 1466 newLeafNode(lv_sectionHeader_1_0, grammarAccess.getSectionHeadingAccess().getSectionHeaderSECTIONHEADERTerminalRuleCall_1_0()); 1467 1468 1469 if (current==null) { 1470 current = createModelElement(grammarAccess.getSectionHeadingRule()); 1471 } 1472 setWithLastConsumed( 1473 current, 1474 "sectionHeader", 1475 lv_sectionHeader_1_0, 1476 "SECTIONHEADER"); 1477 1478 1479 } 1480 1481 1482 } 1483 1484 1485 } 1486 1487 1488 } 1489 1490 leaveRule(); 1600 if ( state.backtracking>0 && alreadyParsedRule(input, 12) ) { return current; } 1601 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:528:28: ( ( () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) ) ) 1602 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:529:1: ( () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) ) 1603 { 1604 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:529:1: ( () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) ) 1605 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:529:2: () ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) 1606 { 1607 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:529:2: () 1608 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:530:2: 1609 { 1610 if ( state.backtracking==0 ) { 1611 1612 /* */ 1613 1614 } 1615 if ( state.backtracking==0 ) { 1616 1617 current = forceCreateModelElement( 1618 grammarAccess.getSectionHeadingAccess().getSectionHeadingAction_0(), 1619 current); 1620 1621 } 1622 1623 } 1624 1625 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:538:2: ( (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) ) 1626 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:539:1: (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) 1627 { 1628 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:539:1: (lv_sectionHeader_1_0= RULE_SECTIONHEADER ) 1629 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:540:3: lv_sectionHeader_1_0= RULE_SECTIONHEADER 1630 { 1631 lv_sectionHeader_1_0=(Token)match(input,RULE_SECTIONHEADER,FOLLOW_RULE_SECTIONHEADER_in_ruleSectionHeading1014); if (state.failed) return current; 1632 if ( state.backtracking==0 ) { 1633 1634 newLeafNode(lv_sectionHeader_1_0, grammarAccess.getSectionHeadingAccess().getSectionHeaderSECTIONHEADERTerminalRuleCall_1_0()); 1635 1636 } 1637 if ( state.backtracking==0 ) { 1638 1639 if (current==null) { 1640 current = createModelElement(grammarAccess.getSectionHeadingRule()); 1641 } 1642 setWithLastConsumed( 1643 current, 1644 "sectionHeader", 1645 lv_sectionHeader_1_0, 1646 "SECTIONHEADER"); 1647 1648 } 1649 1650 } 1651 1652 1653 } 1654 1655 1656 } 1657 1658 1659 } 1660 1661 if ( state.backtracking==0 ) { 1662 leaveRule(); 1663 } 1491 1664 } 1492 1665 … … 1496 1669 } 1497 1670 finally { 1671 if ( state.backtracking>0 ) { memoize(input, 12, ruleSectionHeading_StartIndex); } 1498 1672 } 1499 1673 return current; … … 1503 1677 1504 1678 // $ANTLR start "entryRuleImport" 1505 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:5 54:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ;1679 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:564:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ; 1506 1680 public final EObject entryRuleImport() throws RecognitionException { 1507 1681 EObject current = null; 1508 1682 int entryRuleImport_StartIndex = input.index(); 1509 1683 EObject iv_ruleImport = null; 1510 1684 1511 1685 1512 1686 try { 1513 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:555:2: (iv_ruleImport= ruleImport EOF ) 1514 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:556:2: iv_ruleImport= ruleImport EOF 1515 { 1516 newCompositeNode(grammarAccess.getImportRule()); 1517 pushFollow(FOLLOW_ruleImport_in_entryRuleImport1039); 1687 if ( state.backtracking>0 && alreadyParsedRule(input, 13) ) { return current; } 1688 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:565:2: (iv_ruleImport= ruleImport EOF ) 1689 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:566:2: iv_ruleImport= ruleImport EOF 1690 { 1691 if ( state.backtracking==0 ) { 1692 newCompositeNode(grammarAccess.getImportRule()); 1693 } 1694 pushFollow(FOLLOW_ruleImport_in_entryRuleImport1055); 1518 1695 iv_ruleImport=ruleImport(); 1519 1696 1520 1697 state._fsp--; 1521 1522 current =iv_ruleImport; 1523 match(input,EOF,FOLLOW_EOF_in_entryRuleImport1049); 1698 if (state.failed) return current; 1699 if ( state.backtracking==0 ) { 1700 current =iv_ruleImport; 1701 } 1702 match(input,EOF,FOLLOW_EOF_in_entryRuleImport1065); if (state.failed) return current; 1524 1703 1525 1704 } … … 1532 1711 } 1533 1712 finally { 1713 if ( state.backtracking>0 ) { memoize(input, 13, entryRuleImport_StartIndex); } 1534 1714 } 1535 1715 return current; … … 1539 1719 1540 1720 // $ANTLR start "ruleImport" 1541 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:5 63:1: ruleImport returns [EObject current=null] : (otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' ) ;1721 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:573:1: ruleImport returns [EObject current=null] : (otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' ) ; 1542 1722 public final EObject ruleImport() throws RecognitionException { 1543 1723 EObject current = null; 1544 1724 int ruleImport_StartIndex = input.index(); 1545 1725 Token otherlv_0=null; 1546 1726 Token lv_importURI_1_0=null; … … 1556 1736 1557 1737 try { 1558 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:566:28: ( (otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' ) ) 1559 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:567:1: (otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' ) 1560 { 1561 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:567:1: (otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' ) 1562 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:567:3: otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' 1563 { 1564 otherlv_0=(Token)match(input,18,FOLLOW_18_in_ruleImport1086); 1565 1566 newLeafNode(otherlv_0, grammarAccess.getImportAccess().getImportKeyword_0()); 1567 1568 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:571:1: ( (lv_importURI_1_0= RULE_STRING ) ) 1569 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:572:1: (lv_importURI_1_0= RULE_STRING ) 1570 { 1571 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:572:1: (lv_importURI_1_0= RULE_STRING ) 1572 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:573:3: lv_importURI_1_0= RULE_STRING 1573 { 1574 lv_importURI_1_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleImport1103); 1575 1576 newLeafNode(lv_importURI_1_0, grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_1_0()); 1577 1578 1579 if (current==null) { 1580 current = createModelElement(grammarAccess.getImportRule()); 1581 } 1582 setWithLastConsumed( 1583 current, 1584 "importURI", 1585 lv_importURI_1_0, 1586 "STRING"); 1587 1588 1589 } 1590 1591 1592 } 1593 1594 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:589:2: (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? 1738 if ( state.backtracking>0 && alreadyParsedRule(input, 14) ) { return current; } 1739 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:576:28: ( (otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' ) ) 1740 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:577:1: (otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' ) 1741 { 1742 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:577:1: (otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' ) 1743 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:577:3: otherlv_0= 'import' ( (lv_importURI_1_0= RULE_STRING ) ) (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? otherlv_8= ';' 1744 { 1745 otherlv_0=(Token)match(input,18,FOLLOW_18_in_ruleImport1102); if (state.failed) return current; 1746 if ( state.backtracking==0 ) { 1747 1748 newLeafNode(otherlv_0, grammarAccess.getImportAccess().getImportKeyword_0()); 1749 1750 } 1751 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:581:1: ( (lv_importURI_1_0= RULE_STRING ) ) 1752 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:582:1: (lv_importURI_1_0= RULE_STRING ) 1753 { 1754 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:582:1: (lv_importURI_1_0= RULE_STRING ) 1755 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:583:3: lv_importURI_1_0= RULE_STRING 1756 { 1757 lv_importURI_1_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleImport1119); if (state.failed) return current; 1758 if ( state.backtracking==0 ) { 1759 1760 newLeafNode(lv_importURI_1_0, grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_1_0()); 1761 1762 } 1763 if ( state.backtracking==0 ) { 1764 1765 if (current==null) { 1766 current = createModelElement(grammarAccess.getImportRule()); 1767 } 1768 setWithLastConsumed( 1769 current, 1770 "importURI", 1771 lv_importURI_1_0, 1772 "STRING"); 1773 1774 } 1775 1776 } 1777 1778 1779 } 1780 1781 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:599:2: (otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) )? 1595 1782 int alt14=2; 1596 1783 int LA14_0 = input.LA(1); … … 1601 1788 switch (alt14) { 1602 1789 case 1 : 1603 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:589:4: otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) 1604 { 1605 otherlv_2=(Token)match(input,19,FOLLOW_19_in_ruleImport1121); 1606 1607 newLeafNode(otherlv_2, grammarAccess.getImportAccess().getSolidusKeyword_2_0()); 1608 1609 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:593:1: ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) 1790 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:599:4: otherlv_2= '/' ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) 1791 { 1792 otherlv_2=(Token)match(input,19,FOLLOW_19_in_ruleImport1137); if (state.failed) return current; 1793 if ( state.backtracking==0 ) { 1794 1795 newLeafNode(otherlv_2, grammarAccess.getImportAccess().getSolidusKeyword_2_0()); 1796 1797 } 1798 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:603:1: ( ( (lv_grammarType_3_0= 'core' ) ) | ( (lv_grammarType_4_0= 'package' ) ) | ( (lv_grammarType_5_0= 'update' ) ) ) 1610 1799 int alt13=3; 1611 1800 switch ( input.LA(1) ) { … … 1626 1815 break; 1627 1816 default: 1817 if (state.backtracking>0) {state.failed=true; return current;} 1628 1818 NoViableAltException nvae = 1629 1819 new NoViableAltException("", 13, 0, input); … … 1634 1824 switch (alt13) { 1635 1825 case 1 : 1636 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 593:2: ( (lv_grammarType_3_0= 'core' ) )1826 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:603:2: ( (lv_grammarType_3_0= 'core' ) ) 1637 1827 { 1638 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 593:2: ( (lv_grammarType_3_0= 'core' ) )1639 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 594:1: (lv_grammarType_3_0= 'core' )1828 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:603:2: ( (lv_grammarType_3_0= 'core' ) ) 1829 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:604:1: (lv_grammarType_3_0= 'core' ) 1640 1830 { 1641 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 594:1: (lv_grammarType_3_0= 'core' )1642 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 595:3: lv_grammarType_3_0= 'core'1831 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:604:1: (lv_grammarType_3_0= 'core' ) 1832 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:605:3: lv_grammarType_3_0= 'core' 1643 1833 { 1644 lv_grammarType_3_0=(Token)match(input,20,FOLLOW_20_in_ruleImport1140); 1645 1646 newLeafNode(lv_grammarType_3_0, grammarAccess.getImportAccess().getGrammarTypeCoreKeyword_2_1_0_0()); 1647 1648 1649 if (current==null) { 1650 current = createModelElement(grammarAccess.getImportRule()); 1651 } 1652 setWithLastConsumed(current, "grammarType", lv_grammarType_3_0, "core"); 1653 1834 lv_grammarType_3_0=(Token)match(input,20,FOLLOW_20_in_ruleImport1156); if (state.failed) return current; 1835 if ( state.backtracking==0 ) { 1836 1837 newLeafNode(lv_grammarType_3_0, grammarAccess.getImportAccess().getGrammarTypeCoreKeyword_2_1_0_0()); 1838 1839 } 1840 if ( state.backtracking==0 ) { 1841 1842 if (current==null) { 1843 current = createModelElement(grammarAccess.getImportRule()); 1844 } 1845 setWithLastConsumed(current, "grammarType", lv_grammarType_3_0, "core"); 1846 1847 } 1654 1848 1655 1849 } … … 1662 1856 break; 1663 1857 case 2 : 1664 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 09:6: ( (lv_grammarType_4_0= 'package' ) )1858 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:619:6: ( (lv_grammarType_4_0= 'package' ) ) 1665 1859 { 1666 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 09:6: ( (lv_grammarType_4_0= 'package' ) )1667 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 10:1: (lv_grammarType_4_0= 'package' )1860 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:619:6: ( (lv_grammarType_4_0= 'package' ) ) 1861 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:620:1: (lv_grammarType_4_0= 'package' ) 1668 1862 { 1669 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 10:1: (lv_grammarType_4_0= 'package' )1670 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 11:3: lv_grammarType_4_0= 'package'1863 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:620:1: (lv_grammarType_4_0= 'package' ) 1864 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:621:3: lv_grammarType_4_0= 'package' 1671 1865 { 1672 lv_grammarType_4_0=(Token)match(input,21,FOLLOW_21_in_ruleImport1177); 1673 1674 newLeafNode(lv_grammarType_4_0, grammarAccess.getImportAccess().getGrammarTypePackageKeyword_2_1_1_0()); 1675 1676 1677 if (current==null) { 1678 current = createModelElement(grammarAccess.getImportRule()); 1679 } 1680 setWithLastConsumed(current, "grammarType", lv_grammarType_4_0, "package"); 1681 1866 lv_grammarType_4_0=(Token)match(input,21,FOLLOW_21_in_ruleImport1193); if (state.failed) return current; 1867 if ( state.backtracking==0 ) { 1868 1869 newLeafNode(lv_grammarType_4_0, grammarAccess.getImportAccess().getGrammarTypePackageKeyword_2_1_1_0()); 1870 1871 } 1872 if ( state.backtracking==0 ) { 1873 1874 if (current==null) { 1875 current = createModelElement(grammarAccess.getImportRule()); 1876 } 1877 setWithLastConsumed(current, "grammarType", lv_grammarType_4_0, "package"); 1878 1879 } 1682 1880 1683 1881 } … … 1690 1888 break; 1691 1889 case 3 : 1692 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 25:6: ( (lv_grammarType_5_0= 'update' ) )1890 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:635:6: ( (lv_grammarType_5_0= 'update' ) ) 1693 1891 { 1694 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 25:6: ( (lv_grammarType_5_0= 'update' ) )1695 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 26:1: (lv_grammarType_5_0= 'update' )1892 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:635:6: ( (lv_grammarType_5_0= 'update' ) ) 1893 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:636:1: (lv_grammarType_5_0= 'update' ) 1696 1894 { 1697 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 26:1: (lv_grammarType_5_0= 'update' )1698 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 27:3: lv_grammarType_5_0= 'update'1895 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:636:1: (lv_grammarType_5_0= 'update' ) 1896 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:637:3: lv_grammarType_5_0= 'update' 1699 1897 { 1700 lv_grammarType_5_0=(Token)match(input,22,FOLLOW_22_in_ruleImport1214); 1701 1702 newLeafNode(lv_grammarType_5_0, grammarAccess.getImportAccess().getGrammarTypeUpdateKeyword_2_1_2_0()); 1703 1704 1705 if (current==null) { 1706 current = createModelElement(grammarAccess.getImportRule()); 1707 } 1708 setWithLastConsumed(current, "grammarType", lv_grammarType_5_0, "update"); 1709 1898 lv_grammarType_5_0=(Token)match(input,22,FOLLOW_22_in_ruleImport1230); if (state.failed) return current; 1899 if ( state.backtracking==0 ) { 1900 1901 newLeafNode(lv_grammarType_5_0, grammarAccess.getImportAccess().getGrammarTypeUpdateKeyword_2_1_2_0()); 1902 1903 } 1904 if ( state.backtracking==0 ) { 1905 1906 if (current==null) { 1907 current = createModelElement(grammarAccess.getImportRule()); 1908 } 1909 setWithLastConsumed(current, "grammarType", lv_grammarType_5_0, "update"); 1910 1911 } 1710 1912 1711 1913 } … … 1726 1928 } 1727 1929 1728 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 40:5: (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )?1930 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:650:5: (otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) )? 1729 1931 int alt15=2; 1730 1932 int LA15_0 = input.LA(1); … … 1735 1937 switch (alt15) { 1736 1938 case 1 : 1737 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:640:7: otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) 1738 { 1739 otherlv_6=(Token)match(input,23,FOLLOW_23_in_ruleImport1243); 1740 1741 newLeafNode(otherlv_6, grammarAccess.getImportAccess().getLabelKeyword_3_0()); 1742 1743 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:644:1: ( (lv_label_7_0= RULE_ID ) ) 1744 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:645:1: (lv_label_7_0= RULE_ID ) 1745 { 1746 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:645:1: (lv_label_7_0= RULE_ID ) 1747 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:646:3: lv_label_7_0= RULE_ID 1748 { 1749 lv_label_7_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleImport1260); 1750 1751 newLeafNode(lv_label_7_0, grammarAccess.getImportAccess().getLabelIDTerminalRuleCall_3_1_0()); 1752 1753 1754 if (current==null) { 1755 current = createModelElement(grammarAccess.getImportRule()); 1756 } 1757 setWithLastConsumed( 1758 current, 1759 "label", 1760 lv_label_7_0, 1761 "ID"); 1762 1939 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:650:7: otherlv_6= 'label:' ( (lv_label_7_0= RULE_ID ) ) 1940 { 1941 otherlv_6=(Token)match(input,23,FOLLOW_23_in_ruleImport1259); if (state.failed) return current; 1942 if ( state.backtracking==0 ) { 1943 1944 newLeafNode(otherlv_6, grammarAccess.getImportAccess().getLabelKeyword_3_0()); 1945 1946 } 1947 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:654:1: ( (lv_label_7_0= RULE_ID ) ) 1948 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:655:1: (lv_label_7_0= RULE_ID ) 1949 { 1950 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:655:1: (lv_label_7_0= RULE_ID ) 1951 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:656:3: lv_label_7_0= RULE_ID 1952 { 1953 lv_label_7_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleImport1276); if (state.failed) return current; 1954 if ( state.backtracking==0 ) { 1955 1956 newLeafNode(lv_label_7_0, grammarAccess.getImportAccess().getLabelIDTerminalRuleCall_3_1_0()); 1957 1958 } 1959 if ( state.backtracking==0 ) { 1960 1961 if (current==null) { 1962 current = createModelElement(grammarAccess.getImportRule()); 1963 } 1964 setWithLastConsumed( 1965 current, 1966 "label", 1967 lv_label_7_0, 1968 "ID"); 1969 1970 } 1763 1971 1764 1972 } … … 1773 1981 } 1774 1982 1775 otherlv_8=(Token)match(input,15,FOLLOW_15_in_ruleImport1279); 1776 1777 newLeafNode(otherlv_8, grammarAccess.getImportAccess().getSemicolonKeyword_4()); 1778 1779 1780 } 1781 1782 1783 } 1784 1785 leaveRule(); 1983 otherlv_8=(Token)match(input,15,FOLLOW_15_in_ruleImport1295); if (state.failed) return current; 1984 if ( state.backtracking==0 ) { 1985 1986 newLeafNode(otherlv_8, grammarAccess.getImportAccess().getSemicolonKeyword_4()); 1987 1988 } 1989 1990 } 1991 1992 1993 } 1994 1995 if ( state.backtracking==0 ) { 1996 leaveRule(); 1997 } 1786 1998 } 1787 1999 … … 1791 2003 } 1792 2004 finally { 2005 if ( state.backtracking>0 ) { memoize(input, 14, ruleImport_StartIndex); } 1793 2006 } 1794 2007 return current; … … 1798 2011 1799 2012 // $ANTLR start "entryRuleRule" 1800 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 74:1: entryRuleRule returns [EObject current=null] : iv_ruleRule= ruleRule EOF ;2013 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:684:1: entryRuleRule returns [EObject current=null] : iv_ruleRule= ruleRule EOF ; 1801 2014 public final EObject entryRuleRule() throws RecognitionException { 1802 2015 EObject current = null; 1803 2016 int entryRuleRule_StartIndex = input.index(); 1804 2017 EObject iv_ruleRule = null; 1805 2018 1806 2019 1807 2020 try { 1808 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:675:2: (iv_ruleRule= ruleRule EOF ) 1809 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:676:2: iv_ruleRule= ruleRule EOF 1810 { 1811 newCompositeNode(grammarAccess.getRuleRule()); 1812 pushFollow(FOLLOW_ruleRule_in_entryRuleRule1315); 2021 if ( state.backtracking>0 && alreadyParsedRule(input, 15) ) { return current; } 2022 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:685:2: (iv_ruleRule= ruleRule EOF ) 2023 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:686:2: iv_ruleRule= ruleRule EOF 2024 { 2025 if ( state.backtracking==0 ) { 2026 newCompositeNode(grammarAccess.getRuleRule()); 2027 } 2028 pushFollow(FOLLOW_ruleRule_in_entryRuleRule1331); 1813 2029 iv_ruleRule=ruleRule(); 1814 2030 1815 2031 state._fsp--; 1816 1817 current =iv_ruleRule; 1818 match(input,EOF,FOLLOW_EOF_in_entryRuleRule1325); 2032 if (state.failed) return current; 2033 if ( state.backtracking==0 ) { 2034 current =iv_ruleRule; 2035 } 2036 match(input,EOF,FOLLOW_EOF_in_entryRuleRule1341); if (state.failed) return current; 1819 2037 1820 2038 } … … 1827 2045 } 1828 2046 finally { 2047 if ( state.backtracking>0 ) { memoize(input, 15, entryRuleRule_StartIndex); } 1829 2048 } 1830 2049 return current; … … 1834 2053 1835 2054 // $ANTLR start "ruleRule" 1836 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:6 83:1: ruleRule returns [EObject current=null] : ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? ) ;2055 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:693:1: ruleRule returns [EObject current=null] : ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? ) ; 1837 2056 public final EObject ruleRule() throws RecognitionException { 1838 2057 EObject current = null; 1839 2058 int ruleRule_StartIndex = input.index(); 1840 2059 Token lv_rulenumber_0_0=null; 1841 2060 Token lv_rulevariant_1_0=null; … … 1850 2069 1851 2070 try { 1852 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:686:28: ( ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? ) ) 1853 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:687:1: ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? ) 1854 { 1855 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:687:1: ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? ) 1856 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:687:2: ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? 1857 { 1858 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:687:2: ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? 2071 if ( state.backtracking>0 && alreadyParsedRule(input, 16) ) { return current; } 2072 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:696:28: ( ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? ) ) 2073 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:697:1: ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? ) 2074 { 2075 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:697:1: ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? ) 2076 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:697:2: ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) otherlv_4= '::=' ( (lv_definitionList_5_0= ruleDefinitionList ) )? (otherlv_6= ';' )? 2077 { 2078 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:697:2: ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? 1859 2079 int alt17=2; 1860 2080 int LA17_0 = input.LA(1); … … 1865 2085 switch (alt17) { 1866 2086 case 1 : 1867 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:687:3: ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' 1868 { 1869 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:687:3: ( (lv_rulenumber_0_0= RULE_INT ) ) 1870 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:688:1: (lv_rulenumber_0_0= RULE_INT ) 1871 { 1872 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:688:1: (lv_rulenumber_0_0= RULE_INT ) 1873 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:689:3: lv_rulenumber_0_0= RULE_INT 1874 { 1875 lv_rulenumber_0_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleRule1368); 1876 1877 newLeafNode(lv_rulenumber_0_0, grammarAccess.getRuleAccess().getRulenumberINTTerminalRuleCall_0_0_0()); 1878 1879 1880 if (current==null) { 1881 current = createModelElement(grammarAccess.getRuleRule()); 1882 } 1883 setWithLastConsumed( 1884 current, 1885 "rulenumber", 1886 lv_rulenumber_0_0, 1887 "INT"); 1888 1889 1890 } 1891 1892 1893 } 1894 1895 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:705:2: ( (lv_rulevariant_1_0= RULE_ID ) )? 2087 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:697:3: ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' 2088 { 2089 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:697:3: ( (lv_rulenumber_0_0= RULE_INT ) ) 2090 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:698:1: (lv_rulenumber_0_0= RULE_INT ) 2091 { 2092 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:698:1: (lv_rulenumber_0_0= RULE_INT ) 2093 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:699:3: lv_rulenumber_0_0= RULE_INT 2094 { 2095 lv_rulenumber_0_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleRule1384); if (state.failed) return current; 2096 if ( state.backtracking==0 ) { 2097 2098 newLeafNode(lv_rulenumber_0_0, grammarAccess.getRuleAccess().getRulenumberINTTerminalRuleCall_0_0_0()); 2099 2100 } 2101 if ( state.backtracking==0 ) { 2102 2103 if (current==null) { 2104 current = createModelElement(grammarAccess.getRuleRule()); 2105 } 2106 setWithLastConsumed( 2107 current, 2108 "rulenumber", 2109 lv_rulenumber_0_0, 2110 "INT"); 2111 2112 } 2113 2114 } 2115 2116 2117 } 2118 2119 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:715:2: ( (lv_rulevariant_1_0= RULE_ID ) )? 1896 2120 int alt16=2; 1897 2121 int LA16_0 = input.LA(1); … … 1902 2126 switch (alt16) { 1903 2127 case 1 : 1904 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:7 06:1: (lv_rulevariant_1_0= RULE_ID )2128 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:716:1: (lv_rulevariant_1_0= RULE_ID ) 1905 2129 { 1906 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:7 06:1: (lv_rulevariant_1_0= RULE_ID )1907 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:7 07:3: lv_rulevariant_1_0= RULE_ID2130 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:716:1: (lv_rulevariant_1_0= RULE_ID ) 2131 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:717:3: lv_rulevariant_1_0= RULE_ID 1908 2132 { 1909 lv_rulevariant_1_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRule1390); 1910 1911 newLeafNode(lv_rulevariant_1_0, grammarAccess.getRuleAccess().getRulevariantIDTerminalRuleCall_0_1_0()); 1912 1913 1914 if (current==null) { 1915 current = createModelElement(grammarAccess.getRuleRule()); 1916 } 1917 setWithLastConsumed( 1918 current, 1919 "rulevariant", 1920 lv_rulevariant_1_0, 1921 "ID"); 1922 2133 lv_rulevariant_1_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRule1406); if (state.failed) return current; 2134 if ( state.backtracking==0 ) { 2135 2136 newLeafNode(lv_rulevariant_1_0, grammarAccess.getRuleAccess().getRulevariantIDTerminalRuleCall_0_1_0()); 2137 2138 } 2139 if ( state.backtracking==0 ) { 2140 2141 if (current==null) { 2142 current = createModelElement(grammarAccess.getRuleRule()); 2143 } 2144 setWithLastConsumed( 2145 current, 2146 "rulevariant", 2147 lv_rulevariant_1_0, 2148 "ID"); 2149 2150 } 1923 2151 1924 2152 } … … 1930 2158 } 1931 2159 1932 otherlv_2=(Token)match(input,24,FOLLOW_24_in_ruleRule1408); 1933 1934 newLeafNode(otherlv_2, grammarAccess.getRuleAccess().getFullStopKeyword_0_2()); 1935 2160 otherlv_2=(Token)match(input,24,FOLLOW_24_in_ruleRule1424); if (state.failed) return current; 2161 if ( state.backtracking==0 ) { 2162 2163 newLeafNode(otherlv_2, grammarAccess.getRuleAccess().getFullStopKeyword_0_2()); 2164 2165 } 1936 2166 1937 2167 } … … 1940 2170 } 1941 2171 1942 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:727:3: ( (lv_name_3_0= RULE_ID ) ) 1943 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:728:1: (lv_name_3_0= RULE_ID ) 1944 { 1945 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:728:1: (lv_name_3_0= RULE_ID ) 1946 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:729:3: lv_name_3_0= RULE_ID 1947 { 1948 lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRule1427); 1949 1950 newLeafNode(lv_name_3_0, grammarAccess.getRuleAccess().getNameIDTerminalRuleCall_1_0()); 1951 1952 1953 if (current==null) { 1954 current = createModelElement(grammarAccess.getRuleRule()); 1955 } 1956 setWithLastConsumed( 1957 current, 1958 "name", 1959 lv_name_3_0, 1960 "ID"); 1961 1962 1963 } 1964 1965 1966 } 1967 1968 otherlv_4=(Token)match(input,25,FOLLOW_25_in_ruleRule1444); 1969 1970 newLeafNode(otherlv_4, grammarAccess.getRuleAccess().getColonColonEqualsSignKeyword_2()); 1971 1972 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:749:1: ( (lv_definitionList_5_0= ruleDefinitionList ) )? 2172 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:737:3: ( (lv_name_3_0= RULE_ID ) ) 2173 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:738:1: (lv_name_3_0= RULE_ID ) 2174 { 2175 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:738:1: (lv_name_3_0= RULE_ID ) 2176 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:739:3: lv_name_3_0= RULE_ID 2177 { 2178 lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRule1443); if (state.failed) return current; 2179 if ( state.backtracking==0 ) { 2180 2181 newLeafNode(lv_name_3_0, grammarAccess.getRuleAccess().getNameIDTerminalRuleCall_1_0()); 2182 2183 } 2184 if ( state.backtracking==0 ) { 2185 2186 if (current==null) { 2187 current = createModelElement(grammarAccess.getRuleRule()); 2188 } 2189 setWithLastConsumed( 2190 current, 2191 "name", 2192 lv_name_3_0, 2193 "ID"); 2194 2195 } 2196 2197 } 2198 2199 2200 } 2201 2202 otherlv_4=(Token)match(input,25,FOLLOW_25_in_ruleRule1460); if (state.failed) return current; 2203 if ( state.backtracking==0 ) { 2204 2205 newLeafNode(otherlv_4, grammarAccess.getRuleAccess().getColonColonEqualsSignKeyword_2()); 2206 2207 } 2208 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:759:1: ( (lv_definitionList_5_0= ruleDefinitionList ) )? 1973 2209 int alt18=2; 1974 2210 int LA18_0 = input.LA(1); … … 1993 2229 switch (alt18) { 1994 2230 case 1 : 1995 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:750:1: (lv_definitionList_5_0= ruleDefinitionList ) 1996 { 1997 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:750:1: (lv_definitionList_5_0= ruleDefinitionList ) 1998 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:751:3: lv_definitionList_5_0= ruleDefinitionList 1999 { 2000 2001 newCompositeNode(grammarAccess.getRuleAccess().getDefinitionListDefinitionListParserRuleCall_3_0()); 2002 2003 pushFollow(FOLLOW_ruleDefinitionList_in_ruleRule1465); 2231 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:760:1: (lv_definitionList_5_0= ruleDefinitionList ) 2232 { 2233 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:760:1: (lv_definitionList_5_0= ruleDefinitionList ) 2234 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:761:3: lv_definitionList_5_0= ruleDefinitionList 2235 { 2236 if ( state.backtracking==0 ) { 2237 2238 newCompositeNode(grammarAccess.getRuleAccess().getDefinitionListDefinitionListParserRuleCall_3_0()); 2239 2240 } 2241 pushFollow(FOLLOW_ruleDefinitionList_in_ruleRule1481); 2004 2242 lv_definitionList_5_0=ruleDefinitionList(); 2005 2243 2006 2244 state._fsp--; 2007 2008 2009 if (current==null) { 2010 current = createModelElementForParent(grammarAccess.getRuleRule()); 2011 } 2012 set( 2013 current, 2014 "definitionList", 2015 lv_definitionList_5_0, 2016 "DefinitionList"); 2017 afterParserOrEnumRuleCall(); 2018 2245 if (state.failed) return current; 2246 if ( state.backtracking==0 ) { 2247 2248 if (current==null) { 2249 current = createModelElementForParent(grammarAccess.getRuleRule()); 2250 } 2251 set( 2252 current, 2253 "definitionList", 2254 lv_definitionList_5_0, 2255 "DefinitionList"); 2256 afterParserOrEnumRuleCall(); 2257 2258 } 2019 2259 2020 2260 } … … 2026 2266 } 2027 2267 2028 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:7 67:3: (otherlv_6= ';' )?2268 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:777:3: (otherlv_6= ';' )? 2029 2269 int alt19=2; 2030 2270 int LA19_0 = input.LA(1); … … 2035 2275 switch (alt19) { 2036 2276 case 1 : 2037 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:767:5: otherlv_6= ';' 2038 { 2039 otherlv_6=(Token)match(input,15,FOLLOW_15_in_ruleRule1479); 2040 2041 newLeafNode(otherlv_6, grammarAccess.getRuleAccess().getSemicolonKeyword_4()); 2042 2277 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:777:5: otherlv_6= ';' 2278 { 2279 otherlv_6=(Token)match(input,15,FOLLOW_15_in_ruleRule1495); if (state.failed) return current; 2280 if ( state.backtracking==0 ) { 2281 2282 newLeafNode(otherlv_6, grammarAccess.getRuleAccess().getSemicolonKeyword_4()); 2283 2284 } 2043 2285 2044 2286 } … … 2053 2295 } 2054 2296 2055 leaveRule(); 2297 if ( state.backtracking==0 ) { 2298 leaveRule(); 2299 } 2056 2300 } 2057 2301 … … 2061 2305 } 2062 2306 finally { 2307 if ( state.backtracking>0 ) { memoize(input, 16, ruleRule_StartIndex); } 2063 2308 } 2064 2309 return current; … … 2068 2313 2069 2314 // $ANTLR start "entryRuleExtRule" 2070 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:7 79:1: entryRuleExtRule returns [EObject current=null] : iv_ruleExtRule= ruleExtRule EOF ;2315 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:789:1: entryRuleExtRule returns [EObject current=null] : iv_ruleExtRule= ruleExtRule EOF ; 2071 2316 public final EObject entryRuleExtRule() throws RecognitionException { 2072 2317 EObject current = null; 2073 2318 int entryRuleExtRule_StartIndex = input.index(); 2074 2319 EObject iv_ruleExtRule = null; 2075 2320 2076 2321 2077 2322 try { 2078 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:780:2: (iv_ruleExtRule= ruleExtRule EOF ) 2079 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:781:2: iv_ruleExtRule= ruleExtRule EOF 2080 { 2081 newCompositeNode(grammarAccess.getExtRuleRule()); 2082 pushFollow(FOLLOW_ruleExtRule_in_entryRuleExtRule1517); 2323 if ( state.backtracking>0 && alreadyParsedRule(input, 17) ) { return current; } 2324 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:790:2: (iv_ruleExtRule= ruleExtRule EOF ) 2325 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:791:2: iv_ruleExtRule= ruleExtRule EOF 2326 { 2327 if ( state.backtracking==0 ) { 2328 newCompositeNode(grammarAccess.getExtRuleRule()); 2329 } 2330 pushFollow(FOLLOW_ruleExtRule_in_entryRuleExtRule1533); 2083 2331 iv_ruleExtRule=ruleExtRule(); 2084 2332 2085 2333 state._fsp--; 2086 2087 current =iv_ruleExtRule; 2088 match(input,EOF,FOLLOW_EOF_in_entryRuleExtRule1527); 2334 if (state.failed) return current; 2335 if ( state.backtracking==0 ) { 2336 current =iv_ruleExtRule; 2337 } 2338 match(input,EOF,FOLLOW_EOF_in_entryRuleExtRule1543); if (state.failed) return current; 2089 2339 2090 2340 } … … 2097 2347 } 2098 2348 finally { 2349 if ( state.backtracking>0 ) { memoize(input, 17, entryRuleExtRule_StartIndex); } 2099 2350 } 2100 2351 return current; … … 2104 2355 2105 2356 // $ANTLR start "ruleExtRule" 2106 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:7 88:1: ruleExtRule returns [EObject current=null] : ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? ) ;2357 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:798:1: ruleExtRule returns [EObject current=null] : ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? ) ; 2107 2358 public final EObject ruleExtRule() throws RecognitionException { 2108 2359 EObject current = null; 2109 2360 int ruleExtRule_StartIndex = input.index(); 2110 2361 Token lv_rulenumber_0_0=null; 2111 2362 Token lv_rulevariant_1_0=null; … … 2132 2383 2133 2384 try { 2134 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:791:28: ( ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? ) ) 2135 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:792:1: ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? ) 2136 { 2137 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:792:1: ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? ) 2138 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:792:2: ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? 2139 { 2140 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:792:2: ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? 2385 if ( state.backtracking>0 && alreadyParsedRule(input, 18) ) { return current; } 2386 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:801:28: ( ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? ) ) 2387 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:802:1: ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? ) 2388 { 2389 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:802:1: ( ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? ) 2390 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:802:2: ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) otherlv_7= '<-' ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* (otherlv_18= ';' )? 2391 { 2392 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:802:2: ( ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' )? 2141 2393 int alt21=2; 2142 2394 int LA21_0 = input.LA(1); … … 2147 2399 switch (alt21) { 2148 2400 case 1 : 2149 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:792:3: ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' 2150 { 2151 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:792:3: ( (lv_rulenumber_0_0= RULE_INT ) ) 2152 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:793:1: (lv_rulenumber_0_0= RULE_INT ) 2153 { 2154 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:793:1: (lv_rulenumber_0_0= RULE_INT ) 2155 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:794:3: lv_rulenumber_0_0= RULE_INT 2156 { 2157 lv_rulenumber_0_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleExtRule1570); 2158 2159 newLeafNode(lv_rulenumber_0_0, grammarAccess.getExtRuleAccess().getRulenumberINTTerminalRuleCall_0_0_0()); 2160 2161 2162 if (current==null) { 2163 current = createModelElement(grammarAccess.getExtRuleRule()); 2164 } 2165 setWithLastConsumed( 2166 current, 2167 "rulenumber", 2168 lv_rulenumber_0_0, 2169 "INT"); 2170 2171 2172 } 2173 2174 2175 } 2176 2177 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:810:2: ( (lv_rulevariant_1_0= RULE_ID ) )? 2401 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:802:3: ( (lv_rulenumber_0_0= RULE_INT ) ) ( (lv_rulevariant_1_0= RULE_ID ) )? otherlv_2= '.' 2402 { 2403 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:802:3: ( (lv_rulenumber_0_0= RULE_INT ) ) 2404 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:803:1: (lv_rulenumber_0_0= RULE_INT ) 2405 { 2406 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:803:1: (lv_rulenumber_0_0= RULE_INT ) 2407 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:804:3: lv_rulenumber_0_0= RULE_INT 2408 { 2409 lv_rulenumber_0_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleExtRule1586); if (state.failed) return current; 2410 if ( state.backtracking==0 ) { 2411 2412 newLeafNode(lv_rulenumber_0_0, grammarAccess.getExtRuleAccess().getRulenumberINTTerminalRuleCall_0_0_0()); 2413 2414 } 2415 if ( state.backtracking==0 ) { 2416 2417 if (current==null) { 2418 current = createModelElement(grammarAccess.getExtRuleRule()); 2419 } 2420 setWithLastConsumed( 2421 current, 2422 "rulenumber", 2423 lv_rulenumber_0_0, 2424 "INT"); 2425 2426 } 2427 2428 } 2429 2430 2431 } 2432 2433 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:820:2: ( (lv_rulevariant_1_0= RULE_ID ) )? 2178 2434 int alt20=2; 2179 2435 int LA20_0 = input.LA(1); … … 2184 2440 switch (alt20) { 2185 2441 case 1 : 2186 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:8 11:1: (lv_rulevariant_1_0= RULE_ID )2442 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:821:1: (lv_rulevariant_1_0= RULE_ID ) 2187 2443 { 2188 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:8 11:1: (lv_rulevariant_1_0= RULE_ID )2189 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:8 12:3: lv_rulevariant_1_0= RULE_ID2444 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:821:1: (lv_rulevariant_1_0= RULE_ID ) 2445 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:822:3: lv_rulevariant_1_0= RULE_ID 2190 2446 { 2191 lv_rulevariant_1_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleExtRule1592); 2192 2193 newLeafNode(lv_rulevariant_1_0, grammarAccess.getExtRuleAccess().getRulevariantIDTerminalRuleCall_0_1_0()); 2194 2195 2196 if (current==null) { 2197 current = createModelElement(grammarAccess.getExtRuleRule()); 2198 } 2199 setWithLastConsumed( 2200 current, 2201 "rulevariant", 2202 lv_rulevariant_1_0, 2203 "ID"); 2204 2447 lv_rulevariant_1_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleExtRule1608); if (state.failed) return current; 2448 if ( state.backtracking==0 ) { 2449 2450 newLeafNode(lv_rulevariant_1_0, grammarAccess.getExtRuleAccess().getRulevariantIDTerminalRuleCall_0_1_0()); 2451 2452 } 2453 if ( state.backtracking==0 ) { 2454 2455 if (current==null) { 2456 current = createModelElement(grammarAccess.getExtRuleRule()); 2457 } 2458 setWithLastConsumed( 2459 current, 2460 "rulevariant", 2461 lv_rulevariant_1_0, 2462 "ID"); 2463 2464 } 2205 2465 2206 2466 } … … 2212 2472 } 2213 2473 2214 otherlv_2=(Token)match(input,24,FOLLOW_24_in_ruleExtRule1610); 2215 2216 newLeafNode(otherlv_2, grammarAccess.getExtRuleAccess().getFullStopKeyword_0_2()); 2217 2474 otherlv_2=(Token)match(input,24,FOLLOW_24_in_ruleExtRule1626); if (state.failed) return current; 2475 if ( state.backtracking==0 ) { 2476 2477 newLeafNode(otherlv_2, grammarAccess.getExtRuleAccess().getFullStopKeyword_0_2()); 2478 2479 } 2218 2480 2219 2481 } … … 2222 2484 } 2223 2485 2224 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:832:3: ( (lv_name_3_0= RULE_ID ) ) 2225 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:833:1: (lv_name_3_0= RULE_ID ) 2226 { 2227 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:833:1: (lv_name_3_0= RULE_ID ) 2228 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:834:3: lv_name_3_0= RULE_ID 2229 { 2230 lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleExtRule1629); 2231 2232 newLeafNode(lv_name_3_0, grammarAccess.getExtRuleAccess().getNameIDTerminalRuleCall_1_0()); 2233 2234 2235 if (current==null) { 2236 current = createModelElement(grammarAccess.getExtRuleRule()); 2237 } 2238 setWithLastConsumed( 2239 current, 2240 "name", 2241 lv_name_3_0, 2242 "ID"); 2243 2244 2245 } 2246 2247 2248 } 2249 2250 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:850:2: (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) 2251 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:850:4: otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' 2252 { 2253 otherlv_4=(Token)match(input,26,FOLLOW_26_in_ruleExtRule1647); 2254 2255 newLeafNode(otherlv_4, grammarAccess.getExtRuleAccess().getLeftParenthesisKeyword_2_0()); 2256 2257 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:854:1: ( (lv_ruleext_5_0= RULE_INT ) ) 2258 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:855:1: (lv_ruleext_5_0= RULE_INT ) 2259 { 2260 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:855:1: (lv_ruleext_5_0= RULE_INT ) 2261 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:856:3: lv_ruleext_5_0= RULE_INT 2262 { 2263 lv_ruleext_5_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleExtRule1664); 2264 2265 newLeafNode(lv_ruleext_5_0, grammarAccess.getExtRuleAccess().getRuleextINTTerminalRuleCall_2_1_0()); 2266 2267 2268 if (current==null) { 2269 current = createModelElement(grammarAccess.getExtRuleRule()); 2270 } 2271 setWithLastConsumed( 2272 current, 2273 "ruleext", 2274 lv_ruleext_5_0, 2275 "INT"); 2276 2277 2278 } 2279 2280 2281 } 2282 2283 otherlv_6=(Token)match(input,27,FOLLOW_27_in_ruleExtRule1681); 2284 2285 newLeafNode(otherlv_6, grammarAccess.getExtRuleAccess().getRightParenthesisKeyword_2_2()); 2286 2287 2288 } 2289 2290 otherlv_7=(Token)match(input,28,FOLLOW_28_in_ruleExtRule1694); 2291 2292 newLeafNode(otherlv_7, grammarAccess.getExtRuleAccess().getLessThanSignHyphenMinusKeyword_3()); 2293 2294 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:880:1: ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* 2486 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:842:3: ( (lv_name_3_0= RULE_ID ) ) 2487 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:843:1: (lv_name_3_0= RULE_ID ) 2488 { 2489 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:843:1: (lv_name_3_0= RULE_ID ) 2490 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:844:3: lv_name_3_0= RULE_ID 2491 { 2492 lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleExtRule1645); if (state.failed) return current; 2493 if ( state.backtracking==0 ) { 2494 2495 newLeafNode(lv_name_3_0, grammarAccess.getExtRuleAccess().getNameIDTerminalRuleCall_1_0()); 2496 2497 } 2498 if ( state.backtracking==0 ) { 2499 2500 if (current==null) { 2501 current = createModelElement(grammarAccess.getExtRuleRule()); 2502 } 2503 setWithLastConsumed( 2504 current, 2505 "name", 2506 lv_name_3_0, 2507 "ID"); 2508 2509 } 2510 2511 } 2512 2513 2514 } 2515 2516 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:860:2: (otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' ) 2517 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:860:4: otherlv_4= '(' ( (lv_ruleext_5_0= RULE_INT ) ) otherlv_6= ')' 2518 { 2519 otherlv_4=(Token)match(input,26,FOLLOW_26_in_ruleExtRule1663); if (state.failed) return current; 2520 if ( state.backtracking==0 ) { 2521 2522 newLeafNode(otherlv_4, grammarAccess.getExtRuleAccess().getLeftParenthesisKeyword_2_0()); 2523 2524 } 2525 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:864:1: ( (lv_ruleext_5_0= RULE_INT ) ) 2526 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:865:1: (lv_ruleext_5_0= RULE_INT ) 2527 { 2528 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:865:1: (lv_ruleext_5_0= RULE_INT ) 2529 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:866:3: lv_ruleext_5_0= RULE_INT 2530 { 2531 lv_ruleext_5_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleExtRule1680); if (state.failed) return current; 2532 if ( state.backtracking==0 ) { 2533 2534 newLeafNode(lv_ruleext_5_0, grammarAccess.getExtRuleAccess().getRuleextINTTerminalRuleCall_2_1_0()); 2535 2536 } 2537 if ( state.backtracking==0 ) { 2538 2539 if (current==null) { 2540 current = createModelElement(grammarAccess.getExtRuleRule()); 2541 } 2542 setWithLastConsumed( 2543 current, 2544 "ruleext", 2545 lv_ruleext_5_0, 2546 "INT"); 2547 2548 } 2549 2550 } 2551 2552 2553 } 2554 2555 otherlv_6=(Token)match(input,27,FOLLOW_27_in_ruleExtRule1697); if (state.failed) return current; 2556 if ( state.backtracking==0 ) { 2557 2558 newLeafNode(otherlv_6, grammarAccess.getExtRuleAccess().getRightParenthesisKeyword_2_2()); 2559 2560 } 2561 2562 } 2563 2564 otherlv_7=(Token)match(input,28,FOLLOW_28_in_ruleExtRule1710); if (state.failed) return current; 2565 if ( state.backtracking==0 ) { 2566 2567 newLeafNode(otherlv_7, grammarAccess.getExtRuleAccess().getLessThanSignHyphenMinusKeyword_3()); 2568 2569 } 2570 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:890:1: ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )* 2295 2571 loop22: 2296 2572 do { … … 2299 2575 switch (alt22) { 2300 2576 case 1 : 2301 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:8 80:2: ( (lv_elements_8_0= ruleAtom ) )2577 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:890:2: ( (lv_elements_8_0= ruleAtom ) ) 2302 2578 { 2303 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:8 80:2: ( (lv_elements_8_0= ruleAtom ) )2304 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:8 81:1: (lv_elements_8_0= ruleAtom )2579 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:890:2: ( (lv_elements_8_0= ruleAtom ) ) 2580 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:891:1: (lv_elements_8_0= ruleAtom ) 2305 2581 { 2306 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:8 81:1: (lv_elements_8_0= ruleAtom )2307 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:8 82:3: lv_elements_8_0= ruleAtom2582 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:891:1: (lv_elements_8_0= ruleAtom ) 2583 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:892:3: lv_elements_8_0= ruleAtom 2308 2584 { 2309 2310 newCompositeNode(grammarAccess.getExtRuleAccess().getElementsAtomParserRuleCall_4_0_0()); 2311 2312 pushFollow(FOLLOW_ruleAtom_in_ruleExtRule1716); 2585 if ( state.backtracking==0 ) { 2586 2587 newCompositeNode(grammarAccess.getExtRuleAccess().getElementsAtomParserRuleCall_4_0_0()); 2588 2589 } 2590 pushFollow(FOLLOW_ruleAtom_in_ruleExtRule1732); 2313 2591 lv_elements_8_0=ruleAtom(); 2314 2592 2315 2593 state._fsp--; 2316 2317 2318 if (current==null) { 2319 current = createModelElementForParent(grammarAccess.getExtRuleRule()); 2320 } 2321 add( 2322 current, 2323 "elements", 2324 lv_elements_8_0, 2325 "Atom"); 2326 afterParserOrEnumRuleCall(); 2327 2594 if (state.failed) return current; 2595 if ( state.backtracking==0 ) { 2596 2597 if (current==null) { 2598 current = createModelElementForParent(grammarAccess.getExtRuleRule()); 2599 } 2600 add( 2601 current, 2602 "elements", 2603 lv_elements_8_0, 2604 "Atom"); 2605 afterParserOrEnumRuleCall(); 2606 2607 } 2328 2608 2329 2609 } … … 2336 2616 break; 2337 2617 case 2 : 2338 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g: 899:7: otherlv_9= ')'2618 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:909:7: otherlv_9= ')' 2339 2619 { 2340 otherlv_9=(Token)match(input,27,FOLLOW_27_in_ruleExtRule1734); 2341 2342 newLeafNode(otherlv_9, grammarAccess.getExtRuleAccess().getRightParenthesisKeyword_4_1()); 2343 2620 otherlv_9=(Token)match(input,27,FOLLOW_27_in_ruleExtRule1750); if (state.failed) return current; 2621 if ( state.backtracking==0 ) { 2622 2623 newLeafNode(otherlv_9, grammarAccess.getExtRuleAccess().getRightParenthesisKeyword_4_1()); 2624 2625 } 2344 2626 2345 2627 } 2346 2628 break; 2347 2629 case 3 : 2348 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 04:7: otherlv_10= ']'2630 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:914:7: otherlv_10= ']' 2349 2631 { 2350 otherlv_10=(Token)match(input,29,FOLLOW_29_in_ruleExtRule1752); 2351 2352 newLeafNode(otherlv_10, grammarAccess.getExtRuleAccess().getRightSquareBracketKeyword_4_2()); 2353 2632 otherlv_10=(Token)match(input,29,FOLLOW_29_in_ruleExtRule1768); if (state.failed) return current; 2633 if ( state.backtracking==0 ) { 2634 2635 newLeafNode(otherlv_10, grammarAccess.getExtRuleAccess().getRightSquareBracketKeyword_4_2()); 2636 2637 } 2354 2638 2355 2639 } 2356 2640 break; 2357 2641 case 4 : 2358 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 09:7: otherlv_11= '}'2642 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:919:7: otherlv_11= '}' 2359 2643 { 2360 otherlv_11=(Token)match(input,30,FOLLOW_30_in_ruleExtRule1770); 2361 2362 newLeafNode(otherlv_11, grammarAccess.getExtRuleAccess().getRightCurlyBracketKeyword_4_3()); 2363 2644 otherlv_11=(Token)match(input,30,FOLLOW_30_in_ruleExtRule1786); if (state.failed) return current; 2645 if ( state.backtracking==0 ) { 2646 2647 newLeafNode(otherlv_11, grammarAccess.getExtRuleAccess().getRightCurlyBracketKeyword_4_3()); 2648 2649 } 2364 2650 2365 2651 } 2366 2652 break; 2367 2653 case 5 : 2368 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 14:7: otherlv_12= '|'2654 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:924:7: otherlv_12= '|' 2369 2655 { 2370 otherlv_12=(Token)match(input,31,FOLLOW_31_in_ruleExtRule1788); 2371 2372 newLeafNode(otherlv_12, grammarAccess.getExtRuleAccess().getVerticalLineKeyword_4_4()); 2373 2656 otherlv_12=(Token)match(input,31,FOLLOW_31_in_ruleExtRule1804); if (state.failed) return current; 2657 if ( state.backtracking==0 ) { 2658 2659 newLeafNode(otherlv_12, grammarAccess.getExtRuleAccess().getVerticalLineKeyword_4_4()); 2660 2661 } 2374 2662 2375 2663 } 2376 2664 break; 2377 2665 case 6 : 2378 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 19:7: otherlv_13= '('2666 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:929:7: otherlv_13= '(' 2379 2667 { 2380 otherlv_13=(Token)match(input,26,FOLLOW_26_in_ruleExtRule1806); 2381 2382 newLeafNode(otherlv_13, grammarAccess.getExtRuleAccess().getLeftParenthesisKeyword_4_5()); 2383 2668 otherlv_13=(Token)match(input,26,FOLLOW_26_in_ruleExtRule1822); if (state.failed) return current; 2669 if ( state.backtracking==0 ) { 2670 2671 newLeafNode(otherlv_13, grammarAccess.getExtRuleAccess().getLeftParenthesisKeyword_4_5()); 2672 2673 } 2384 2674 2385 2675 } 2386 2676 break; 2387 2677 case 7 : 2388 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 24:7: otherlv_14= '['2678 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:934:7: otherlv_14= '[' 2389 2679 { 2390 otherlv_14=(Token)match(input,32,FOLLOW_32_in_ruleExtRule1824); 2391 2392 newLeafNode(otherlv_14, grammarAccess.getExtRuleAccess().getLeftSquareBracketKeyword_4_6()); 2393 2680 otherlv_14=(Token)match(input,32,FOLLOW_32_in_ruleExtRule1840); if (state.failed) return current; 2681 if ( state.backtracking==0 ) { 2682 2683 newLeafNode(otherlv_14, grammarAccess.getExtRuleAccess().getLeftSquareBracketKeyword_4_6()); 2684 2685 } 2394 2686 2395 2687 } 2396 2688 break; 2397 2689 case 8 : 2398 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 29:7: otherlv_15= '{'2690 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:939:7: otherlv_15= '{' 2399 2691 { 2400 otherlv_15=(Token)match(input,33,FOLLOW_33_in_ruleExtRule1842); 2401 2402 newLeafNode(otherlv_15, grammarAccess.getExtRuleAccess().getLeftCurlyBracketKeyword_4_7()); 2403 2692 otherlv_15=(Token)match(input,33,FOLLOW_33_in_ruleExtRule1858); if (state.failed) return current; 2693 if ( state.backtracking==0 ) { 2694 2695 newLeafNode(otherlv_15, grammarAccess.getExtRuleAccess().getLeftCurlyBracketKeyword_4_7()); 2696 2697 } 2404 2698 2405 2699 } 2406 2700 break; 2407 2701 case 9 : 2408 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 34:7: otherlv_16= '*'2702 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:944:7: otherlv_16= '*' 2409 2703 { 2410 otherlv_16=(Token)match(input,34,FOLLOW_34_in_ruleExtRule1860); 2411 2412 newLeafNode(otherlv_16, grammarAccess.getExtRuleAccess().getAsteriskKeyword_4_8()); 2413 2704 otherlv_16=(Token)match(input,34,FOLLOW_34_in_ruleExtRule1876); if (state.failed) return current; 2705 if ( state.backtracking==0 ) { 2706 2707 newLeafNode(otherlv_16, grammarAccess.getExtRuleAccess().getAsteriskKeyword_4_8()); 2708 2709 } 2414 2710 2415 2711 } 2416 2712 break; 2417 2713 case 10 : 2418 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 39:7: otherlv_17= '+'2714 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:949:7: otherlv_17= '+' 2419 2715 { 2420 otherlv_17=(Token)match(input,35,FOLLOW_35_in_ruleExtRule1878); 2421 2422 newLeafNode(otherlv_17, grammarAccess.getExtRuleAccess().getPlusSignKeyword_4_9()); 2423 2716 otherlv_17=(Token)match(input,35,FOLLOW_35_in_ruleExtRule1894); if (state.failed) return current; 2717 if ( state.backtracking==0 ) { 2718 2719 newLeafNode(otherlv_17, grammarAccess.getExtRuleAccess().getPlusSignKeyword_4_9()); 2720 2721 } 2424 2722 2425 2723 } … … 2431 2729 } while (true); 2432 2730 2433 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 43:3: (otherlv_18= ';' )?2731 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:953:3: (otherlv_18= ';' )? 2434 2732 int alt23=2; 2435 2733 int LA23_0 = input.LA(1); … … 2440 2738 switch (alt23) { 2441 2739 case 1 : 2442 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:943:5: otherlv_18= ';' 2443 { 2444 otherlv_18=(Token)match(input,15,FOLLOW_15_in_ruleExtRule1893); 2445 2446 newLeafNode(otherlv_18, grammarAccess.getExtRuleAccess().getSemicolonKeyword_5()); 2447 2740 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:953:5: otherlv_18= ';' 2741 { 2742 otherlv_18=(Token)match(input,15,FOLLOW_15_in_ruleExtRule1909); if (state.failed) return current; 2743 if ( state.backtracking==0 ) { 2744 2745 newLeafNode(otherlv_18, grammarAccess.getExtRuleAccess().getSemicolonKeyword_5()); 2746 2747 } 2448 2748 2449 2749 } … … 2458 2758 } 2459 2759 2460 leaveRule(); 2760 if ( state.backtracking==0 ) { 2761 leaveRule(); 2762 } 2461 2763 } 2462 2764 … … 2466 2768 } 2467 2769 finally { 2770 if ( state.backtracking>0 ) { memoize(input, 18, ruleExtRule_StartIndex); } 2468 2771 } 2469 2772 return current; … … 2473 2776 2474 2777 // $ANTLR start "entryRuleMergeRule" 2475 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 55:1: entryRuleMergeRule returns [EObject current=null] : iv_ruleMergeRule= ruleMergeRule EOF ;2778 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:965:1: entryRuleMergeRule returns [EObject current=null] : iv_ruleMergeRule= ruleMergeRule EOF ; 2476 2779 public final EObject entryRuleMergeRule() throws RecognitionException { 2477 2780 EObject current = null; 2478 2781 int entryRuleMergeRule_StartIndex = input.index(); 2479 2782 EObject iv_ruleMergeRule = null; 2480 2783 2481 2784 2482 2785 try { 2483 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:956:2: (iv_ruleMergeRule= ruleMergeRule EOF ) 2484 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:957:2: iv_ruleMergeRule= ruleMergeRule EOF 2485 { 2486 newCompositeNode(grammarAccess.getMergeRuleRule()); 2487 pushFollow(FOLLOW_ruleMergeRule_in_entryRuleMergeRule1931); 2786 if ( state.backtracking>0 && alreadyParsedRule(input, 19) ) { return current; } 2787 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:966:2: (iv_ruleMergeRule= ruleMergeRule EOF ) 2788 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:967:2: iv_ruleMergeRule= ruleMergeRule EOF 2789 { 2790 if ( state.backtracking==0 ) { 2791 newCompositeNode(grammarAccess.getMergeRuleRule()); 2792 } 2793 pushFollow(FOLLOW_ruleMergeRule_in_entryRuleMergeRule1947); 2488 2794 iv_ruleMergeRule=ruleMergeRule(); 2489 2795 2490 2796 state._fsp--; 2491 2492 current =iv_ruleMergeRule; 2493 match(input,EOF,FOLLOW_EOF_in_entryRuleMergeRule1941); 2797 if (state.failed) return current; 2798 if ( state.backtracking==0 ) { 2799 current =iv_ruleMergeRule; 2800 } 2801 match(input,EOF,FOLLOW_EOF_in_entryRuleMergeRule1957); if (state.failed) return current; 2494 2802 2495 2803 } … … 2502 2810 } 2503 2811 finally { 2812 if ( state.backtracking>0 ) { memoize(input, 19, entryRuleMergeRule_StartIndex); } 2504 2813 } 2505 2814 return current; … … 2509 2818 2510 2819 // $ANTLR start "ruleMergeRule" 2511 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:9 64:1: ruleMergeRule returns [EObject current=null] : (this_GlobalCombinator_0= ruleGlobalCombinator | this_RuleCombinator_1= ruleRuleCombinator | this_HookCombinator_2= ruleHookCombinator ) ;2820 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:974:1: ruleMergeRule returns [EObject current=null] : (this_GlobalCombinator_0= ruleGlobalCombinator | this_RuleCombinator_1= ruleRuleCombinator | this_HookCombinator_2= ruleHookCombinator ) ; 2512 2821 public final EObject ruleMergeRule() throws RecognitionException { 2513 2822 EObject current = null; 2514 2823 int ruleMergeRule_StartIndex = input.index(); 2515 2824 EObject this_GlobalCombinator_0 = null; 2516 2825 … … 2523 2832 2524 2833 try { 2525 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:967:28: ( (this_GlobalCombinator_0= ruleGlobalCombinator | this_RuleCombinator_1= ruleRuleCombinator | this_HookCombinator_2= ruleHookCombinator ) ) 2526 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:968:1: (this_GlobalCombinator_0= ruleGlobalCombinator | this_RuleCombinator_1= ruleRuleCombinator | this_HookCombinator_2= ruleHookCombinator ) 2527 { 2528 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:968:1: (this_GlobalCombinator_0= ruleGlobalCombinator | this_RuleCombinator_1= ruleRuleCombinator | this_HookCombinator_2= ruleHookCombinator ) 2834 if ( state.backtracking>0 && alreadyParsedRule(input, 20) ) { return current; } 2835 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:977:28: ( (this_GlobalCombinator_0= ruleGlobalCombinator | this_RuleCombinator_1= ruleRuleCombinator | this_HookCombinator_2= ruleHookCombinator ) ) 2836 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:978:1: (this_GlobalCombinator_0= ruleGlobalCombinator | this_RuleCombinator_1= ruleRuleCombinator | this_HookCombinator_2= ruleHookCombinator ) 2837 { 2838 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:978:1: (this_GlobalCombinator_0= ruleGlobalCombinator | this_RuleCombinator_1= ruleRuleCombinator | this_HookCombinator_2= ruleHookCombinator ) 2529 2839 int alt24=3; 2530 2840 switch ( input.LA(1) ) { … … 2545 2855 break; 2546 2856 default: 2857 if (state.backtracking>0) {state.failed=true; return current;} 2547 2858 NoViableAltException nvae = 2548 2859 new NoViableAltException("", 24, 0, input); … … 2553 2864 switch (alt24) { 2554 2865 case 1 : 2555 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:969:5: this_GlobalCombinator_0= ruleGlobalCombinator 2556 { 2557 2558 newCompositeNode(grammarAccess.getMergeRuleAccess().getGlobalCombinatorParserRuleCall_0()); 2559 2560 pushFollow(FOLLOW_ruleGlobalCombinator_in_ruleMergeRule1988); 2866 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:979:2: this_GlobalCombinator_0= ruleGlobalCombinator 2867 { 2868 if ( state.backtracking==0 ) { 2869 2870 /* */ 2871 2872 } 2873 if ( state.backtracking==0 ) { 2874 2875 newCompositeNode(grammarAccess.getMergeRuleAccess().getGlobalCombinatorParserRuleCall_0()); 2876 2877 } 2878 pushFollow(FOLLOW_ruleGlobalCombinator_in_ruleMergeRule2007); 2561 2879 this_GlobalCombinator_0=ruleGlobalCombinator(); 2562 2880 2563 2881 state._fsp--; 2564 2565 2566 current = this_GlobalCombinator_0; 2567 afterParserOrEnumRuleCall(); 2568 2882 if (state.failed) return current; 2883 if ( state.backtracking==0 ) { 2884 2885 current = this_GlobalCombinator_0; 2886 afterParserOrEnumRuleCall(); 2887 2888 } 2569 2889 2570 2890 } 2571 2891 break; 2572 2892 case 2 : 2573 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:979:5: this_RuleCombinator_1= ruleRuleCombinator 2574 { 2575 2576 newCompositeNode(grammarAccess.getMergeRuleAccess().getRuleCombinatorParserRuleCall_1()); 2577 2578 pushFollow(FOLLOW_ruleRuleCombinator_in_ruleMergeRule2015); 2893 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:992:2: this_RuleCombinator_1= ruleRuleCombinator 2894 { 2895 if ( state.backtracking==0 ) { 2896 2897 /* */ 2898 2899 } 2900 if ( state.backtracking==0 ) { 2901 2902 newCompositeNode(grammarAccess.getMergeRuleAccess().getRuleCombinatorParserRuleCall_1()); 2903 2904 } 2905 pushFollow(FOLLOW_ruleRuleCombinator_in_ruleMergeRule2037); 2579 2906 this_RuleCombinator_1=ruleRuleCombinator(); 2580 2907 2581 2908 state._fsp--; 2582 2583 2584 current = this_RuleCombinator_1; 2585 afterParserOrEnumRuleCall(); 2586 2909 if (state.failed) return current; 2910 if ( state.backtracking==0 ) { 2911 2912 current = this_RuleCombinator_1; 2913 afterParserOrEnumRuleCall(); 2914 2915 } 2587 2916 2588 2917 } 2589 2918 break; 2590 2919 case 3 : 2591 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:989:5: this_HookCombinator_2= ruleHookCombinator 2592 { 2593 2594 newCompositeNode(grammarAccess.getMergeRuleAccess().getHookCombinatorParserRuleCall_2()); 2595 2596 pushFollow(FOLLOW_ruleHookCombinator_in_ruleMergeRule2042); 2920 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1005:2: this_HookCombinator_2= ruleHookCombinator 2921 { 2922 if ( state.backtracking==0 ) { 2923 2924 /* */ 2925 2926 } 2927 if ( state.backtracking==0 ) { 2928 2929 newCompositeNode(grammarAccess.getMergeRuleAccess().getHookCombinatorParserRuleCall_2()); 2930 2931 } 2932 pushFollow(FOLLOW_ruleHookCombinator_in_ruleMergeRule2067); 2597 2933 this_HookCombinator_2=ruleHookCombinator(); 2598 2934 2599 2935 state._fsp--; 2600 2601 2602 current = this_HookCombinator_2; 2603 afterParserOrEnumRuleCall(); 2604 2936 if (state.failed) return current; 2937 if ( state.backtracking==0 ) { 2938 2939 current = this_HookCombinator_2; 2940 afterParserOrEnumRuleCall(); 2941 2942 } 2605 2943 2606 2944 } … … 2612 2950 } 2613 2951 2614 leaveRule(); 2952 if ( state.backtracking==0 ) { 2953 leaveRule(); 2954 } 2615 2955 } 2616 2956 … … 2620 2960 } 2621 2961 finally { 2962 if ( state.backtracking>0 ) { memoize(input, 20, ruleMergeRule_StartIndex); } 2622 2963 } 2623 2964 return current; … … 2627 2968 2628 2969 // $ANTLR start "entryRuleGlobalCombinator" 2629 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:10 05:1: entryRuleGlobalCombinator returns [EObject current=null] : iv_ruleGlobalCombinator= ruleGlobalCombinator EOF ;2970 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1024:1: entryRuleGlobalCombinator returns [EObject current=null] : iv_ruleGlobalCombinator= ruleGlobalCombinator EOF ; 2630 2971 public final EObject entryRuleGlobalCombinator() throws RecognitionException { 2631 2972 EObject current = null; 2632 2973 int entryRuleGlobalCombinator_StartIndex = input.index(); 2633 2974 EObject iv_ruleGlobalCombinator = null; 2634 2975 2635 2976 2636 2977 try { 2637 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1006:2: (iv_ruleGlobalCombinator= ruleGlobalCombinator EOF ) 2638 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1007:2: iv_ruleGlobalCombinator= ruleGlobalCombinator EOF 2639 { 2640 newCompositeNode(grammarAccess.getGlobalCombinatorRule()); 2641 pushFollow(FOLLOW_ruleGlobalCombinator_in_entryRuleGlobalCombinator2077); 2978 if ( state.backtracking>0 && alreadyParsedRule(input, 21) ) { return current; } 2979 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1025:2: (iv_ruleGlobalCombinator= ruleGlobalCombinator EOF ) 2980 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1026:2: iv_ruleGlobalCombinator= ruleGlobalCombinator EOF 2981 { 2982 if ( state.backtracking==0 ) { 2983 newCompositeNode(grammarAccess.getGlobalCombinatorRule()); 2984 } 2985 pushFollow(FOLLOW_ruleGlobalCombinator_in_entryRuleGlobalCombinator2102); 2642 2986 iv_ruleGlobalCombinator=ruleGlobalCombinator(); 2643 2987 2644 2988 state._fsp--; 2645 2646 current =iv_ruleGlobalCombinator; 2647 match(input,EOF,FOLLOW_EOF_in_entryRuleGlobalCombinator2087); 2989 if (state.failed) return current; 2990 if ( state.backtracking==0 ) { 2991 current =iv_ruleGlobalCombinator; 2992 } 2993 match(input,EOF,FOLLOW_EOF_in_entryRuleGlobalCombinator2112); if (state.failed) return current; 2648 2994 2649 2995 } … … 2656 3002 } 2657 3003 finally { 3004 if ( state.backtracking>0 ) { memoize(input, 21, entryRuleGlobalCombinator_StartIndex); } 2658 3005 } 2659 3006 return current; … … 2663 3010 2664 3011 // $ANTLR start "ruleGlobalCombinator" 2665 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:10 14:1: ruleGlobalCombinator returns [EObject current=null] : ( (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? ) ;3012 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1033:1: ruleGlobalCombinator returns [EObject current=null] : ( (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? ) ; 2666 3013 public final EObject ruleGlobalCombinator() throws RecognitionException { 2667 3014 EObject current = null; 2668 3015 int ruleGlobalCombinator_StartIndex = input.index(); 2669 3016 Token otherlv_0=null; 2670 3017 Token otherlv_1=null; … … 2675 3022 2676 3023 try { 2677 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1017:28: ( ( (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? ) ) 2678 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1018:1: ( (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? ) 2679 { 2680 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1018:1: ( (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? ) 2681 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1018:2: (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? 2682 { 2683 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1018:2: (otherlv_0= 'global' otherlv_1= 'combinator:' ) 2684 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1018:4: otherlv_0= 'global' otherlv_1= 'combinator:' 2685 { 2686 otherlv_0=(Token)match(input,36,FOLLOW_36_in_ruleGlobalCombinator2125); 2687 2688 newLeafNode(otherlv_0, grammarAccess.getGlobalCombinatorAccess().getGlobalKeyword_0_0()); 2689 2690 otherlv_1=(Token)match(input,37,FOLLOW_37_in_ruleGlobalCombinator2137); 2691 2692 newLeafNode(otherlv_1, grammarAccess.getGlobalCombinatorAccess().getCombinatorKeyword_0_1()); 2693 2694 2695 } 2696 2697 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1026:2: ( (lv_logic_2_0= RULE_LOGIC ) ) 2698 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1027:1: (lv_logic_2_0= RULE_LOGIC ) 2699 { 2700 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1027:1: (lv_logic_2_0= RULE_LOGIC ) 2701 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1028:3: lv_logic_2_0= RULE_LOGIC 2702 { 2703 lv_logic_2_0=(Token)match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_ruleGlobalCombinator2155); 2704 2705 newLeafNode(lv_logic_2_0, grammarAccess.getGlobalCombinatorAccess().getLogicLOGICTerminalRuleCall_1_0()); 2706 2707 2708 if (current==null) { 2709 current = createModelElement(grammarAccess.getGlobalCombinatorRule()); 2710 } 2711 setWithLastConsumed( 2712 current, 2713 "logic", 2714 lv_logic_2_0, 2715 "LOGIC"); 2716 2717 2718 } 2719 2720 2721 } 2722 2723 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1044:2: (otherlv_3= ';' )? 3024 if ( state.backtracking>0 && alreadyParsedRule(input, 22) ) { return current; } 3025 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1036:28: ( ( (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? ) ) 3026 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1037:1: ( (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? ) 3027 { 3028 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1037:1: ( (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? ) 3029 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1037:2: (otherlv_0= 'global' otherlv_1= 'combinator:' ) ( (lv_logic_2_0= RULE_LOGIC ) ) (otherlv_3= ';' )? 3030 { 3031 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1037:2: (otherlv_0= 'global' otherlv_1= 'combinator:' ) 3032 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1037:4: otherlv_0= 'global' otherlv_1= 'combinator:' 3033 { 3034 otherlv_0=(Token)match(input,36,FOLLOW_36_in_ruleGlobalCombinator2150); if (state.failed) return current; 3035 if ( state.backtracking==0 ) { 3036 3037 newLeafNode(otherlv_0, grammarAccess.getGlobalCombinatorAccess().getGlobalKeyword_0_0()); 3038 3039 } 3040 otherlv_1=(Token)match(input,37,FOLLOW_37_in_ruleGlobalCombinator2162); if (state.failed) return current; 3041 if ( state.backtracking==0 ) { 3042 3043 newLeafNode(otherlv_1, grammarAccess.getGlobalCombinatorAccess().getCombinatorKeyword_0_1()); 3044 3045 } 3046 3047 } 3048 3049 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1045:2: ( (lv_logic_2_0= RULE_LOGIC ) ) 3050 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1046:1: (lv_logic_2_0= RULE_LOGIC ) 3051 { 3052 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1046:1: (lv_logic_2_0= RULE_LOGIC ) 3053 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1047:3: lv_logic_2_0= RULE_LOGIC 3054 { 3055 lv_logic_2_0=(Token)match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_ruleGlobalCombinator2180); if (state.failed) return current; 3056 if ( state.backtracking==0 ) { 3057 3058 newLeafNode(lv_logic_2_0, grammarAccess.getGlobalCombinatorAccess().getLogicLOGICTerminalRuleCall_1_0()); 3059 3060 } 3061 if ( state.backtracking==0 ) { 3062 3063 if (current==null) { 3064 current = createModelElement(grammarAccess.getGlobalCombinatorRule()); 3065 } 3066 setWithLastConsumed( 3067 current, 3068 "logic", 3069 lv_logic_2_0, 3070 "LOGIC"); 3071 3072 } 3073 3074 } 3075 3076 3077 } 3078 3079 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1063:2: (otherlv_3= ';' )? 2724 3080 int alt25=2; 2725 3081 int LA25_0 = input.LA(1); … … 2730 3086 switch (alt25) { 2731 3087 case 1 : 2732 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1044:4: otherlv_3= ';' 2733 { 2734 otherlv_3=(Token)match(input,15,FOLLOW_15_in_ruleGlobalCombinator2173); 2735 2736 newLeafNode(otherlv_3, grammarAccess.getGlobalCombinatorAccess().getSemicolonKeyword_2()); 2737 3088 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1063:4: otherlv_3= ';' 3089 { 3090 otherlv_3=(Token)match(input,15,FOLLOW_15_in_ruleGlobalCombinator2198); if (state.failed) return current; 3091 if ( state.backtracking==0 ) { 3092 3093 newLeafNode(otherlv_3, grammarAccess.getGlobalCombinatorAccess().getSemicolonKeyword_2()); 3094 3095 } 2738 3096 2739 3097 } … … 2748 3106 } 2749 3107 2750 leaveRule(); 3108 if ( state.backtracking==0 ) { 3109 leaveRule(); 3110 } 2751 3111 } 2752 3112 … … 2756 3116 } 2757 3117 finally { 3118 if ( state.backtracking>0 ) { memoize(input, 22, ruleGlobalCombinator_StartIndex); } 2758 3119 } 2759 3120 return current; … … 2763 3124 2764 3125 // $ANTLR start "entryRuleRuleCombinator" 2765 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:10 56:1: entryRuleRuleCombinator returns [EObject current=null] : iv_ruleRuleCombinator= ruleRuleCombinator EOF ;3126 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1075:1: entryRuleRuleCombinator returns [EObject current=null] : iv_ruleRuleCombinator= ruleRuleCombinator EOF ; 2766 3127 public final EObject entryRuleRuleCombinator() throws RecognitionException { 2767 3128 EObject current = null; 2768 3129 int entryRuleRuleCombinator_StartIndex = input.index(); 2769 3130 EObject iv_ruleRuleCombinator = null; 2770 3131 2771 3132 2772 3133 try { 2773 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1057:2: (iv_ruleRuleCombinator= ruleRuleCombinator EOF ) 2774 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1058:2: iv_ruleRuleCombinator= ruleRuleCombinator EOF 2775 { 2776 newCompositeNode(grammarAccess.getRuleCombinatorRule()); 2777 pushFollow(FOLLOW_ruleRuleCombinator_in_entryRuleRuleCombinator2211); 3134 if ( state.backtracking>0 && alreadyParsedRule(input, 23) ) { return current; } 3135 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1076:2: (iv_ruleRuleCombinator= ruleRuleCombinator EOF ) 3136 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1077:2: iv_ruleRuleCombinator= ruleRuleCombinator EOF 3137 { 3138 if ( state.backtracking==0 ) { 3139 newCompositeNode(grammarAccess.getRuleCombinatorRule()); 3140 } 3141 pushFollow(FOLLOW_ruleRuleCombinator_in_entryRuleRuleCombinator2236); 2778 3142 iv_ruleRuleCombinator=ruleRuleCombinator(); 2779 3143 2780 3144 state._fsp--; 2781 2782 current =iv_ruleRuleCombinator; 2783 match(input,EOF,FOLLOW_EOF_in_entryRuleRuleCombinator2221); 3145 if (state.failed) return current; 3146 if ( state.backtracking==0 ) { 3147 current =iv_ruleRuleCombinator; 3148 } 3149 match(input,EOF,FOLLOW_EOF_in_entryRuleRuleCombinator2246); if (state.failed) return current; 2784 3150 2785 3151 } … … 2792 3158 } 2793 3159 finally { 3160 if ( state.backtracking>0 ) { memoize(input, 23, entryRuleRuleCombinator_StartIndex); } 2794 3161 } 2795 3162 return current; … … 2799 3166 2800 3167 // $ANTLR start "ruleRuleCombinator" 2801 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:10 65:1: ruleRuleCombinator returns [EObject current=null] : ( (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? ) ;3168 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1084:1: ruleRuleCombinator returns [EObject current=null] : ( (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? ) ; 2802 3169 public final EObject ruleRuleCombinator() throws RecognitionException { 2803 3170 EObject current = null; 2804 3171 int ruleRuleCombinator_StartIndex = input.index(); 2805 3172 Token otherlv_0=null; 2806 3173 Token otherlv_1=null; … … 2815 3182 2816 3183 try { 2817 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1068:28: ( ( (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? ) ) 2818 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1069:1: ( (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? ) 2819 { 2820 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1069:1: ( (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? ) 2821 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1069:2: (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? 2822 { 2823 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1069:2: (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) 2824 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1069:4: otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) 2825 { 2826 otherlv_0=(Token)match(input,38,FOLLOW_38_in_ruleRuleCombinator2259); 2827 2828 newLeafNode(otherlv_0, grammarAccess.getRuleCombinatorAccess().getRuleKeyword_0_0()); 2829 2830 otherlv_1=(Token)match(input,37,FOLLOW_37_in_ruleRuleCombinator2271); 2831 2832 newLeafNode(otherlv_1, grammarAccess.getRuleCombinatorAccess().getCombinatorKeyword_0_1()); 2833 2834 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1077:1: ( (lv_name_2_0= RULE_ID ) ) 2835 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1078:1: (lv_name_2_0= RULE_ID ) 2836 { 2837 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1078:1: (lv_name_2_0= RULE_ID ) 2838 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1079:3: lv_name_2_0= RULE_ID 2839 { 2840 lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRuleCombinator2288); 2841 2842 newLeafNode(lv_name_2_0, grammarAccess.getRuleCombinatorAccess().getNameIDTerminalRuleCall_0_2_0()); 2843 2844 2845 if (current==null) { 2846 current = createModelElement(grammarAccess.getRuleCombinatorRule()); 2847 } 2848 setWithLastConsumed( 2849 current, 2850 "name", 2851 lv_name_2_0, 2852 "ID"); 2853 2854 2855 } 2856 2857 2858 } 2859 2860 2861 } 2862 2863 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1095:3: ( (lv_logic_3_0= RULE_LOGIC ) ) 2864 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1096:1: (lv_logic_3_0= RULE_LOGIC ) 2865 { 2866 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1096:1: (lv_logic_3_0= RULE_LOGIC ) 2867 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1097:3: lv_logic_3_0= RULE_LOGIC 2868 { 2869 lv_logic_3_0=(Token)match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_ruleRuleCombinator2311); 2870 2871 newLeafNode(lv_logic_3_0, grammarAccess.getRuleCombinatorAccess().getLogicLOGICTerminalRuleCall_1_0()); 2872 2873 2874 if (current==null) { 2875 current = createModelElement(grammarAccess.getRuleCombinatorRule()); 2876 } 2877 setWithLastConsumed( 2878 current, 2879 "logic", 2880 lv_logic_3_0, 2881 "LOGIC"); 2882 2883 2884 } 2885 2886 2887 } 2888 2889 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1113:2: (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* 3184 if ( state.backtracking>0 && alreadyParsedRule(input, 24) ) { return current; } 3185 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1087:28: ( ( (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? ) ) 3186 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1088:1: ( (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? ) 3187 { 3188 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1088:1: ( (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? ) 3189 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1088:2: (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) ( (lv_logic_3_0= RULE_LOGIC ) ) (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* (otherlv_7= ';' )? 3190 { 3191 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1088:2: (otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) ) 3192 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1088:4: otherlv_0= 'rule' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) 3193 { 3194 otherlv_0=(Token)match(input,38,FOLLOW_38_in_ruleRuleCombinator2284); if (state.failed) return current; 3195 if ( state.backtracking==0 ) { 3196 3197 newLeafNode(otherlv_0, grammarAccess.getRuleCombinatorAccess().getRuleKeyword_0_0()); 3198 3199 } 3200 otherlv_1=(Token)match(input,37,FOLLOW_37_in_ruleRuleCombinator2296); if (state.failed) return current; 3201 if ( state.backtracking==0 ) { 3202 3203 newLeafNode(otherlv_1, grammarAccess.getRuleCombinatorAccess().getCombinatorKeyword_0_1()); 3204 3205 } 3206 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1096:1: ( (lv_name_2_0= RULE_ID ) ) 3207 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1097:1: (lv_name_2_0= RULE_ID ) 3208 { 3209 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1097:1: (lv_name_2_0= RULE_ID ) 3210 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1098:3: lv_name_2_0= RULE_ID 3211 { 3212 lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRuleCombinator2313); if (state.failed) return current; 3213 if ( state.backtracking==0 ) { 3214 3215 newLeafNode(lv_name_2_0, grammarAccess.getRuleCombinatorAccess().getNameIDTerminalRuleCall_0_2_0()); 3216 3217 } 3218 if ( state.backtracking==0 ) { 3219 3220 if (current==null) { 3221 current = createModelElement(grammarAccess.getRuleCombinatorRule()); 3222 } 3223 setWithLastConsumed( 3224 current, 3225 "name", 3226 lv_name_2_0, 3227 "ID"); 3228 3229 } 3230 3231 } 3232 3233 3234 } 3235 3236 3237 } 3238 3239 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1114:3: ( (lv_logic_3_0= RULE_LOGIC ) ) 3240 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1115:1: (lv_logic_3_0= RULE_LOGIC ) 3241 { 3242 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1115:1: (lv_logic_3_0= RULE_LOGIC ) 3243 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1116:3: lv_logic_3_0= RULE_LOGIC 3244 { 3245 lv_logic_3_0=(Token)match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_ruleRuleCombinator2336); if (state.failed) return current; 3246 if ( state.backtracking==0 ) { 3247 3248 newLeafNode(lv_logic_3_0, grammarAccess.getRuleCombinatorAccess().getLogicLOGICTerminalRuleCall_1_0()); 3249 3250 } 3251 if ( state.backtracking==0 ) { 3252 3253 if (current==null) { 3254 current = createModelElement(grammarAccess.getRuleCombinatorRule()); 3255 } 3256 setWithLastConsumed( 3257 current, 3258 "logic", 3259 lv_logic_3_0, 3260 "LOGIC"); 3261 3262 } 3263 3264 } 3265 3266 3267 } 3268 3269 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1132:2: (otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' )* 2890 3270 loop26: 2891 3271 do { … … 2900 3280 switch (alt26) { 2901 3281 case 1 : 2902 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:11 13:4: otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')'3282 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1132:4: otherlv_4= '(' ( (lv_LABEL_5_0= RULE_STRING ) ) otherlv_6= ')' 2903 3283 { 2904 otherlv_4=(Token)match(input,26,FOLLOW_26_in_ruleRuleCombinator2329); 2905 2906 newLeafNode(otherlv_4, grammarAccess.getRuleCombinatorAccess().getLeftParenthesisKeyword_2_0()); 2907 2908 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1117:1: ( (lv_LABEL_5_0= RULE_STRING ) ) 2909 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1118:1: (lv_LABEL_5_0= RULE_STRING ) 3284 otherlv_4=(Token)match(input,26,FOLLOW_26_in_ruleRuleCombinator2354); if (state.failed) return current; 3285 if ( state.backtracking==0 ) { 3286 3287 newLeafNode(otherlv_4, grammarAccess.getRuleCombinatorAccess().getLeftParenthesisKeyword_2_0()); 3288 3289 } 3290 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1136:1: ( (lv_LABEL_5_0= RULE_STRING ) ) 3291 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1137:1: (lv_LABEL_5_0= RULE_STRING ) 2910 3292 { 2911 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:11 18:1: (lv_LABEL_5_0= RULE_STRING )2912 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:11 19:3: lv_LABEL_5_0= RULE_STRING3293 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1137:1: (lv_LABEL_5_0= RULE_STRING ) 3294 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1138:3: lv_LABEL_5_0= RULE_STRING 2913 3295 { 2914 lv_LABEL_5_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleRuleCombinator2346); 2915 2916 newLeafNode(lv_LABEL_5_0, grammarAccess.getRuleCombinatorAccess().getLABELSTRINGTerminalRuleCall_2_1_0()); 2917 2918 2919 if (current==null) { 2920 current = createModelElement(grammarAccess.getRuleCombinatorRule()); 2921 } 2922 addWithLastConsumed( 2923 current, 2924 "LABEL", 2925 lv_LABEL_5_0, 2926 "STRING"); 2927 2928 3296 lv_LABEL_5_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleRuleCombinator2371); if (state.failed) return current; 3297 if ( state.backtracking==0 ) { 3298 3299 newLeafNode(lv_LABEL_5_0, grammarAccess.getRuleCombinatorAccess().getLABELSTRINGTerminalRuleCall_2_1_0()); 3300 2929 3301 } 2930 2931 3302 if ( state.backtracking==0 ) { 3303 3304 if (current==null) { 3305 current = createModelElement(grammarAccess.getRuleCombinatorRule()); 3306 } 3307 addWithLastConsumed( 3308 current, 3309 "LABEL", 3310 lv_LABEL_5_0, 3311 "STRING"); 3312 2932 3313 } 2933 3314 2934 otherlv_6=(Token)match(input,27,FOLLOW_27_in_ruleRuleCombinator2363); 2935 2936 newLeafNode(otherlv_6, grammarAccess.getRuleCombinatorAccess().getRightParenthesisKeyword_2_2()); 2937 3315 } 3316 3317 3318 } 3319 3320 otherlv_6=(Token)match(input,27,FOLLOW_27_in_ruleRuleCombinator2388); if (state.failed) return current; 3321 if ( state.backtracking==0 ) { 3322 3323 newLeafNode(otherlv_6, grammarAccess.getRuleCombinatorAccess().getRightParenthesisKeyword_2_2()); 3324 3325 } 2938 3326 2939 3327 } … … 2945 3333 } while (true); 2946 3334 2947 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:11 39:3: (otherlv_7= ';' )?3335 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1158:3: (otherlv_7= ';' )? 2948 3336 int alt27=2; 2949 3337 int LA27_0 = input.LA(1); … … 2954 3342 switch (alt27) { 2955 3343 case 1 : 2956 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1139:5: otherlv_7= ';' 2957 { 2958 otherlv_7=(Token)match(input,15,FOLLOW_15_in_ruleRuleCombinator2378); 2959 2960 newLeafNode(otherlv_7, grammarAccess.getRuleCombinatorAccess().getSemicolonKeyword_3()); 2961 3344 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1158:5: otherlv_7= ';' 3345 { 3346 otherlv_7=(Token)match(input,15,FOLLOW_15_in_ruleRuleCombinator2403); if (state.failed) return current; 3347 if ( state.backtracking==0 ) { 3348 3349 newLeafNode(otherlv_7, grammarAccess.getRuleCombinatorAccess().getSemicolonKeyword_3()); 3350 3351 } 2962 3352 2963 3353 } … … 2972 3362 } 2973 3363 2974 leaveRule(); 3364 if ( state.backtracking==0 ) { 3365 leaveRule(); 3366 } 2975 3367 } 2976 3368 … … 2980 3372 } 2981 3373 finally { 3374 if ( state.backtracking>0 ) { memoize(input, 24, ruleRuleCombinator_StartIndex); } 2982 3375 } 2983 3376 return current; … … 2987 3380 2988 3381 // $ANTLR start "entryRuleHookCombinator" 2989 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:11 51:1: entryRuleHookCombinator returns [EObject current=null] : iv_ruleHookCombinator= ruleHookCombinator EOF ;3382 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1170:1: entryRuleHookCombinator returns [EObject current=null] : iv_ruleHookCombinator= ruleHookCombinator EOF ; 2990 3383 public final EObject entryRuleHookCombinator() throws RecognitionException { 2991 3384 EObject current = null; 2992 3385 int entryRuleHookCombinator_StartIndex = input.index(); 2993 3386 EObject iv_ruleHookCombinator = null; 2994 3387 2995 3388 2996 3389 try { 2997 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1152:2: (iv_ruleHookCombinator= ruleHookCombinator EOF ) 2998 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1153:2: iv_ruleHookCombinator= ruleHookCombinator EOF 2999 { 3000 newCompositeNode(grammarAccess.getHookCombinatorRule()); 3001 pushFollow(FOLLOW_ruleHookCombinator_in_entryRuleHookCombinator2416); 3390 if ( state.backtracking>0 && alreadyParsedRule(input, 25) ) { return current; } 3391 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1171:2: (iv_ruleHookCombinator= ruleHookCombinator EOF ) 3392 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1172:2: iv_ruleHookCombinator= ruleHookCombinator EOF 3393 { 3394 if ( state.backtracking==0 ) { 3395 newCompositeNode(grammarAccess.getHookCombinatorRule()); 3396 } 3397 pushFollow(FOLLOW_ruleHookCombinator_in_entryRuleHookCombinator2441); 3002 3398 iv_ruleHookCombinator=ruleHookCombinator(); 3003 3399 3004 3400 state._fsp--; 3005 3006 current =iv_ruleHookCombinator; 3007 match(input,EOF,FOLLOW_EOF_in_entryRuleHookCombinator2426); 3401 if (state.failed) return current; 3402 if ( state.backtracking==0 ) { 3403 current =iv_ruleHookCombinator; 3404 } 3405 match(input,EOF,FOLLOW_EOF_in_entryRuleHookCombinator2451); if (state.failed) return current; 3008 3406 3009 3407 } … … 3016 3414 } 3017 3415 finally { 3416 if ( state.backtracking>0 ) { memoize(input, 25, entryRuleHookCombinator_StartIndex); } 3018 3417 } 3019 3418 return current; … … 3023 3422 3024 3423 // $ANTLR start "ruleHookCombinator" 3025 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:11 60:1: ruleHookCombinator returns [EObject current=null] : (otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? ) ;3424 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1179:1: ruleHookCombinator returns [EObject current=null] : (otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? ) ; 3026 3425 public final EObject ruleHookCombinator() throws RecognitionException { 3027 3426 EObject current = null; 3028 3427 int ruleHookCombinator_StartIndex = input.index(); 3029 3428 Token otherlv_0=null; 3030 3429 Token otherlv_1=null; … … 3042 3441 3043 3442 try { 3044 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1163:28: ( (otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? ) ) 3045 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1164:1: (otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? ) 3046 { 3047 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1164:1: (otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? ) 3048 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1164:3: otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? 3049 { 3050 otherlv_0=(Token)match(input,39,FOLLOW_39_in_ruleHookCombinator2463); 3051 3052 newLeafNode(otherlv_0, grammarAccess.getHookCombinatorAccess().getHookKeyword_0()); 3053 3054 otherlv_1=(Token)match(input,37,FOLLOW_37_in_ruleHookCombinator2475); 3055 3056 newLeafNode(otherlv_1, grammarAccess.getHookCombinatorAccess().getCombinatorKeyword_1()); 3057 3058 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1172:1: ( (lv_name_2_0= RULE_ID ) ) 3059 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1173:1: (lv_name_2_0= RULE_ID ) 3060 { 3061 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1173:1: (lv_name_2_0= RULE_ID ) 3062 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1174:3: lv_name_2_0= RULE_ID 3063 { 3064 lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleHookCombinator2492); 3065 3066 newLeafNode(lv_name_2_0, grammarAccess.getHookCombinatorAccess().getNameIDTerminalRuleCall_2_0()); 3067 3068 3069 if (current==null) { 3070 current = createModelElement(grammarAccess.getHookCombinatorRule()); 3071 } 3072 setWithLastConsumed( 3073 current, 3074 "name", 3075 lv_name_2_0, 3076 "ID"); 3077 3078 3079 } 3080 3081 3082 } 3083 3084 otherlv_3=(Token)match(input,26,FOLLOW_26_in_ruleHookCombinator2509); 3085 3086 newLeafNode(otherlv_3, grammarAccess.getHookCombinatorAccess().getLeftParenthesisKeyword_3()); 3087 3088 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1194:1: ( (lv_ruleext_4_0= RULE_INT ) ) 3089 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1195:1: (lv_ruleext_4_0= RULE_INT ) 3090 { 3091 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1195:1: (lv_ruleext_4_0= RULE_INT ) 3092 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1196:3: lv_ruleext_4_0= RULE_INT 3093 { 3094 lv_ruleext_4_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleHookCombinator2526); 3095 3096 newLeafNode(lv_ruleext_4_0, grammarAccess.getHookCombinatorAccess().getRuleextINTTerminalRuleCall_4_0()); 3097 3098 3099 if (current==null) { 3100 current = createModelElement(grammarAccess.getHookCombinatorRule()); 3101 } 3102 setWithLastConsumed( 3103 current, 3104 "ruleext", 3105 lv_ruleext_4_0, 3106 "INT"); 3107 3108 3109 } 3110 3111 3112 } 3113 3114 otherlv_5=(Token)match(input,27,FOLLOW_27_in_ruleHookCombinator2543); 3115 3116 newLeafNode(otherlv_5, grammarAccess.getHookCombinatorAccess().getRightParenthesisKeyword_5()); 3117 3118 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1216:1: ( (lv_logic_6_0= RULE_LOGIC ) )? 3443 if ( state.backtracking>0 && alreadyParsedRule(input, 26) ) { return current; } 3444 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1182:28: ( (otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? ) ) 3445 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1183:1: (otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? ) 3446 { 3447 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1183:1: (otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? ) 3448 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1183:3: otherlv_0= 'hook' otherlv_1= 'combinator:' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '(' ( (lv_ruleext_4_0= RULE_INT ) ) otherlv_5= ')' ( (lv_logic_6_0= RULE_LOGIC ) )? (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ (otherlv_10= ';' )? 3449 { 3450 otherlv_0=(Token)match(input,39,FOLLOW_39_in_ruleHookCombinator2488); if (state.failed) return current; 3451 if ( state.backtracking==0 ) { 3452 3453 newLeafNode(otherlv_0, grammarAccess.getHookCombinatorAccess().getHookKeyword_0()); 3454 3455 } 3456 otherlv_1=(Token)match(input,37,FOLLOW_37_in_ruleHookCombinator2500); if (state.failed) return current; 3457 if ( state.backtracking==0 ) { 3458 3459 newLeafNode(otherlv_1, grammarAccess.getHookCombinatorAccess().getCombinatorKeyword_1()); 3460 3461 } 3462 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1191:1: ( (lv_name_2_0= RULE_ID ) ) 3463 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1192:1: (lv_name_2_0= RULE_ID ) 3464 { 3465 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1192:1: (lv_name_2_0= RULE_ID ) 3466 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1193:3: lv_name_2_0= RULE_ID 3467 { 3468 lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleHookCombinator2517); if (state.failed) return current; 3469 if ( state.backtracking==0 ) { 3470 3471 newLeafNode(lv_name_2_0, grammarAccess.getHookCombinatorAccess().getNameIDTerminalRuleCall_2_0()); 3472 3473 } 3474 if ( state.backtracking==0 ) { 3475 3476 if (current==null) { 3477 current = createModelElement(grammarAccess.getHookCombinatorRule()); 3478 } 3479 setWithLastConsumed( 3480 current, 3481 "name", 3482 lv_name_2_0, 3483 "ID"); 3484 3485 } 3486 3487 } 3488 3489 3490 } 3491 3492 otherlv_3=(Token)match(input,26,FOLLOW_26_in_ruleHookCombinator2534); if (state.failed) return current; 3493 if ( state.backtracking==0 ) { 3494 3495 newLeafNode(otherlv_3, grammarAccess.getHookCombinatorAccess().getLeftParenthesisKeyword_3()); 3496 3497 } 3498 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1213:1: ( (lv_ruleext_4_0= RULE_INT ) ) 3499 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1214:1: (lv_ruleext_4_0= RULE_INT ) 3500 { 3501 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1214:1: (lv_ruleext_4_0= RULE_INT ) 3502 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1215:3: lv_ruleext_4_0= RULE_INT 3503 { 3504 lv_ruleext_4_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleHookCombinator2551); if (state.failed) return current; 3505 if ( state.backtracking==0 ) { 3506 3507 newLeafNode(lv_ruleext_4_0, grammarAccess.getHookCombinatorAccess().getRuleextINTTerminalRuleCall_4_0()); 3508 3509 } 3510 if ( state.backtracking==0 ) { 3511 3512 if (current==null) { 3513 current = createModelElement(grammarAccess.getHookCombinatorRule()); 3514 } 3515 setWithLastConsumed( 3516 current, 3517 "ruleext", 3518 lv_ruleext_4_0, 3519 "INT"); 3520 3521 } 3522 3523 } 3524 3525 3526 } 3527 3528 otherlv_5=(Token)match(input,27,FOLLOW_27_in_ruleHookCombinator2568); if (state.failed) return current; 3529 if ( state.backtracking==0 ) { 3530 3531 newLeafNode(otherlv_5, grammarAccess.getHookCombinatorAccess().getRightParenthesisKeyword_5()); 3532 3533 } 3534 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1235:1: ( (lv_logic_6_0= RULE_LOGIC ) )? 3119 3535 int alt28=2; 3120 3536 int LA28_0 = input.LA(1); … … 3125 3541 switch (alt28) { 3126 3542 case 1 : 3127 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1217:1: (lv_logic_6_0= RULE_LOGIC ) 3128 { 3129 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1217:1: (lv_logic_6_0= RULE_LOGIC ) 3130 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1218:3: lv_logic_6_0= RULE_LOGIC 3131 { 3132 lv_logic_6_0=(Token)match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_ruleHookCombinator2560); 3133 3134 newLeafNode(lv_logic_6_0, grammarAccess.getHookCombinatorAccess().getLogicLOGICTerminalRuleCall_6_0()); 3135 3136 3137 if (current==null) { 3138 current = createModelElement(grammarAccess.getHookCombinatorRule()); 3139 } 3140 setWithLastConsumed( 3141 current, 3142 "logic", 3143 lv_logic_6_0, 3144 "LOGIC"); 3145 3543 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1236:1: (lv_logic_6_0= RULE_LOGIC ) 3544 { 3545 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1236:1: (lv_logic_6_0= RULE_LOGIC ) 3546 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1237:3: lv_logic_6_0= RULE_LOGIC 3547 { 3548 lv_logic_6_0=(Token)match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_ruleHookCombinator2585); if (state.failed) return current; 3549 if ( state.backtracking==0 ) { 3550 3551 newLeafNode(lv_logic_6_0, grammarAccess.getHookCombinatorAccess().getLogicLOGICTerminalRuleCall_6_0()); 3552 3553 } 3554 if ( state.backtracking==0 ) { 3555 3556 if (current==null) { 3557 current = createModelElement(grammarAccess.getHookCombinatorRule()); 3558 } 3559 setWithLastConsumed( 3560 current, 3561 "logic", 3562 lv_logic_6_0, 3563 "LOGIC"); 3564 3565 } 3146 3566 3147 3567 } … … 3153 3573 } 3154 3574 3155 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:12 34:3: (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+3575 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1253:3: (otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' )+ 3156 3576 int cnt29=0; 3157 3577 loop29: … … 3167 3587 switch (alt29) { 3168 3588 case 1 : 3169 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:12 34:5: otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')'3589 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1253:5: otherlv_7= '(' ( (lv_LABEL_8_0= RULE_STRING ) ) otherlv_9= ')' 3170 3590 { 3171 otherlv_7=(Token)match(input,26,FOLLOW_26_in_ruleHookCombinator2579); 3172 3173 newLeafNode(otherlv_7, grammarAccess.getHookCombinatorAccess().getLeftParenthesisKeyword_7_0()); 3174 3175 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1238:1: ( (lv_LABEL_8_0= RULE_STRING ) ) 3176 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1239:1: (lv_LABEL_8_0= RULE_STRING ) 3591 otherlv_7=(Token)match(input,26,FOLLOW_26_in_ruleHookCombinator2604); if (state.failed) return current; 3592 if ( state.backtracking==0 ) { 3593 3594 newLeafNode(otherlv_7, grammarAccess.getHookCombinatorAccess().getLeftParenthesisKeyword_7_0()); 3595 3596 } 3597 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1257:1: ( (lv_LABEL_8_0= RULE_STRING ) ) 3598 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1258:1: (lv_LABEL_8_0= RULE_STRING ) 3177 3599 { 3178 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:12 39:1: (lv_LABEL_8_0= RULE_STRING )3179 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:12 40:3: lv_LABEL_8_0= RULE_STRING3600 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1258:1: (lv_LABEL_8_0= RULE_STRING ) 3601 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1259:3: lv_LABEL_8_0= RULE_STRING 3180 3602 { 3181 lv_LABEL_8_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleHookCombinator2596); 3182 3183 newLeafNode(lv_LABEL_8_0, grammarAccess.getHookCombinatorAccess().getLABELSTRINGTerminalRuleCall_7_1_0()); 3184 3185 3186 if (current==null) { 3187 current = createModelElement(grammarAccess.getHookCombinatorRule()); 3188 } 3189 addWithLastConsumed( 3190 current, 3191 "LABEL", 3192 lv_LABEL_8_0, 3193 "STRING"); 3194 3195 3603 lv_LABEL_8_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleHookCombinator2621); if (state.failed) return current; 3604 if ( state.backtracking==0 ) { 3605 3606 newLeafNode(lv_LABEL_8_0, grammarAccess.getHookCombinatorAccess().getLABELSTRINGTerminalRuleCall_7_1_0()); 3607 3196 3608 } 3197 3198 3609 if ( state.backtracking==0 ) { 3610 3611 if (current==null) { 3612 current = createModelElement(grammarAccess.getHookCombinatorRule()); 3613 } 3614 addWithLastConsumed( 3615 current, 3616 "LABEL", 3617 lv_LABEL_8_0, 3618 "STRING"); 3619 3199 3620 } 3200 3621 3201 otherlv_9=(Token)match(input,27,FOLLOW_27_in_ruleHookCombinator2613); 3202 3203 newLeafNode(otherlv_9, grammarAccess.getHookCombinatorAccess().getRightParenthesisKeyword_7_2()); 3204 3622 } 3623 3624 3625 } 3626 3627 otherlv_9=(Token)match(input,27,FOLLOW_27_in_ruleHookCombinator2638); if (state.failed) return current; 3628 if ( state.backtracking==0 ) { 3629 3630 newLeafNode(otherlv_9, grammarAccess.getHookCombinatorAccess().getRightParenthesisKeyword_7_2()); 3631 3632 } 3205 3633 3206 3634 } … … 3209 3637 default : 3210 3638 if ( cnt29 >= 1 ) break loop29; 3639 if (state.backtracking>0) {state.failed=true; return current;} 3211 3640 EarlyExitException eee = 3212 3641 new EarlyExitException(29, input); … … 3216 3645 } while (true); 3217 3646 3218 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:12 60:3: (otherlv_10= ';' )?3647 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1279:3: (otherlv_10= ';' )? 3219 3648 int alt30=2; 3220 3649 int LA30_0 = input.LA(1); … … 3225 3654 switch (alt30) { 3226 3655 case 1 : 3227 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1260:5: otherlv_10= ';' 3228 { 3229 otherlv_10=(Token)match(input,15,FOLLOW_15_in_ruleHookCombinator2628); 3230 3231 newLeafNode(otherlv_10, grammarAccess.getHookCombinatorAccess().getSemicolonKeyword_8()); 3232 3656 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1279:5: otherlv_10= ';' 3657 { 3658 otherlv_10=(Token)match(input,15,FOLLOW_15_in_ruleHookCombinator2653); if (state.failed) return current; 3659 if ( state.backtracking==0 ) { 3660 3661 newLeafNode(otherlv_10, grammarAccess.getHookCombinatorAccess().getSemicolonKeyword_8()); 3662 3663 } 3233 3664 3234 3665 } … … 3243 3674 } 3244 3675 3245 leaveRule(); 3676 if ( state.backtracking==0 ) { 3677 leaveRule(); 3678 } 3246 3679 } 3247 3680 … … 3251 3684 } 3252 3685 finally { 3686 if ( state.backtracking>0 ) { memoize(input, 26, ruleHookCombinator_StartIndex); } 3253 3687 } 3254 3688 return current; … … 3258 3692 3259 3693 // $ANTLR start "entryRuleDefinitionList" 3260 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:12 72:1: entryRuleDefinitionList returns [EObject current=null] : iv_ruleDefinitionList= ruleDefinitionList EOF ;3694 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1291:1: entryRuleDefinitionList returns [EObject current=null] : iv_ruleDefinitionList= ruleDefinitionList EOF ; 3261 3695 public final EObject entryRuleDefinitionList() throws RecognitionException { 3262 3696 EObject current = null; 3263 3697 int entryRuleDefinitionList_StartIndex = input.index(); 3264 3698 EObject iv_ruleDefinitionList = null; 3265 3699 3266 3700 3267 3701 try { 3268 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1273:2: (iv_ruleDefinitionList= ruleDefinitionList EOF ) 3269 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1274:2: iv_ruleDefinitionList= ruleDefinitionList EOF 3270 { 3271 newCompositeNode(grammarAccess.getDefinitionListRule()); 3272 pushFollow(FOLLOW_ruleDefinitionList_in_entryRuleDefinitionList2666); 3702 if ( state.backtracking>0 && alreadyParsedRule(input, 27) ) { return current; } 3703 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1292:2: (iv_ruleDefinitionList= ruleDefinitionList EOF ) 3704 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1293:2: iv_ruleDefinitionList= ruleDefinitionList EOF 3705 { 3706 if ( state.backtracking==0 ) { 3707 newCompositeNode(grammarAccess.getDefinitionListRule()); 3708 } 3709 pushFollow(FOLLOW_ruleDefinitionList_in_entryRuleDefinitionList2691); 3273 3710 iv_ruleDefinitionList=ruleDefinitionList(); 3274 3711 3275 3712 state._fsp--; 3276 3277 current =iv_ruleDefinitionList; 3278 match(input,EOF,FOLLOW_EOF_in_entryRuleDefinitionList2676); 3713 if (state.failed) return current; 3714 if ( state.backtracking==0 ) { 3715 current =iv_ruleDefinitionList; 3716 } 3717 match(input,EOF,FOLLOW_EOF_in_entryRuleDefinitionList2701); if (state.failed) return current; 3279 3718 3280 3719 } … … 3287 3726 } 3288 3727 finally { 3728 if ( state.backtracking>0 ) { memoize(input, 27, entryRuleDefinitionList_StartIndex); } 3289 3729 } 3290 3730 return current; … … 3294 3734 3295 3735 // $ANTLR start "ruleDefinitionList" 3296 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 281:1: ruleDefinitionList returns [EObject current=null] : ( ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* ) ;3736 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1300:1: ruleDefinitionList returns [EObject current=null] : ( ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* ) ; 3297 3737 public final EObject ruleDefinitionList() throws RecognitionException { 3298 3738 EObject current = null; 3299 3739 int ruleDefinitionList_StartIndex = input.index(); 3300 3740 Token otherlv_1=null; 3301 3741 EObject lv_singleDefinition_0_0 = null; … … 3307 3747 3308 3748 try { 3309 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1284:28: ( ( ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* ) ) 3310 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1285:1: ( ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* ) 3311 { 3312 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1285:1: ( ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* ) 3313 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1285:2: ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* 3314 { 3315 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1285:2: ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) 3316 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1286:1: (lv_singleDefinition_0_0= ruleSingleDefinition ) 3317 { 3318 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1286:1: (lv_singleDefinition_0_0= ruleSingleDefinition ) 3319 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1287:3: lv_singleDefinition_0_0= ruleSingleDefinition 3320 { 3321 3322 newCompositeNode(grammarAccess.getDefinitionListAccess().getSingleDefinitionSingleDefinitionParserRuleCall_0_0()); 3323 3324 pushFollow(FOLLOW_ruleSingleDefinition_in_ruleDefinitionList2722); 3749 if ( state.backtracking>0 && alreadyParsedRule(input, 28) ) { return current; } 3750 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1303:28: ( ( ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* ) ) 3751 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1304:1: ( ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* ) 3752 { 3753 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1304:1: ( ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* ) 3754 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1304:2: ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* 3755 { 3756 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1304:2: ( (lv_singleDefinition_0_0= ruleSingleDefinition ) ) 3757 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1305:1: (lv_singleDefinition_0_0= ruleSingleDefinition ) 3758 { 3759 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1305:1: (lv_singleDefinition_0_0= ruleSingleDefinition ) 3760 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1306:3: lv_singleDefinition_0_0= ruleSingleDefinition 3761 { 3762 if ( state.backtracking==0 ) { 3763 3764 newCompositeNode(grammarAccess.getDefinitionListAccess().getSingleDefinitionSingleDefinitionParserRuleCall_0_0()); 3765 3766 } 3767 pushFollow(FOLLOW_ruleSingleDefinition_in_ruleDefinitionList2747); 3325 3768 lv_singleDefinition_0_0=ruleSingleDefinition(); 3326 3769 3327 3770 state._fsp--; 3328 3329 3330 if (current==null) { 3331 current = createModelElementForParent(grammarAccess.getDefinitionListRule()); 3332 } 3333 add( 3334 current, 3335 "singleDefinition", 3336 lv_singleDefinition_0_0, 3337 "SingleDefinition"); 3338 afterParserOrEnumRuleCall(); 3339 3340 3341 } 3342 3343 3344 } 3345 3346 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1303:2: (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* 3771 if (state.failed) return current; 3772 if ( state.backtracking==0 ) { 3773 3774 if (current==null) { 3775 current = createModelElementForParent(grammarAccess.getDefinitionListRule()); 3776 } 3777 add( 3778 current, 3779 "singleDefinition", 3780 lv_singleDefinition_0_0, 3781 "SingleDefinition"); 3782 afterParserOrEnumRuleCall(); 3783 3784 } 3785 3786 } 3787 3788 3789 } 3790 3791 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1322:2: (otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) )* 3347 3792 loop31: 3348 3793 do { … … 3357 3802 switch (alt31) { 3358 3803 case 1 : 3359 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 03:4: otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) )3804 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1322:4: otherlv_1= '|' ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) 3360 3805 { 3361 otherlv_1=(Token)match(input,31,FOLLOW_31_in_ruleDefinitionList2735); 3362 3363 newLeafNode(otherlv_1, grammarAccess.getDefinitionListAccess().getVerticalLineKeyword_1_0()); 3364 3365 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1307:1: ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) 3366 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1308:1: (lv_singleDefinition_2_0= ruleSingleDefinition ) 3806 otherlv_1=(Token)match(input,31,FOLLOW_31_in_ruleDefinitionList2760); if (state.failed) return current; 3807 if ( state.backtracking==0 ) { 3808 3809 newLeafNode(otherlv_1, grammarAccess.getDefinitionListAccess().getVerticalLineKeyword_1_0()); 3810 3811 } 3812 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1326:1: ( (lv_singleDefinition_2_0= ruleSingleDefinition ) ) 3813 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1327:1: (lv_singleDefinition_2_0= ruleSingleDefinition ) 3367 3814 { 3368 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 08:1: (lv_singleDefinition_2_0= ruleSingleDefinition )3369 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 09:3: lv_singleDefinition_2_0= ruleSingleDefinition3815 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1327:1: (lv_singleDefinition_2_0= ruleSingleDefinition ) 3816 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1328:3: lv_singleDefinition_2_0= ruleSingleDefinition 3370 3817 { 3371 3372 newCompositeNode(grammarAccess.getDefinitionListAccess().getSingleDefinitionSingleDefinitionParserRuleCall_1_1_0()); 3373 3374 pushFollow(FOLLOW_ruleSingleDefinition_in_ruleDefinitionList2756); 3818 if ( state.backtracking==0 ) { 3819 3820 newCompositeNode(grammarAccess.getDefinitionListAccess().getSingleDefinitionSingleDefinitionParserRuleCall_1_1_0()); 3821 3822 } 3823 pushFollow(FOLLOW_ruleSingleDefinition_in_ruleDefinitionList2781); 3375 3824 lv_singleDefinition_2_0=ruleSingleDefinition(); 3376 3825 3377 3826 state._fsp--; 3378 3379 3380 if (current==null) { 3381 current = createModelElementForParent(grammarAccess.getDefinitionListRule()); 3382 } 3383 add( 3384 current, 3385 "singleDefinition", 3386 lv_singleDefinition_2_0, 3387 "SingleDefinition"); 3388 afterParserOrEnumRuleCall(); 3389 3827 if (state.failed) return current; 3828 if ( state.backtracking==0 ) { 3829 3830 if (current==null) { 3831 current = createModelElementForParent(grammarAccess.getDefinitionListRule()); 3832 } 3833 add( 3834 current, 3835 "singleDefinition", 3836 lv_singleDefinition_2_0, 3837 "SingleDefinition"); 3838 afterParserOrEnumRuleCall(); 3839 3840 } 3390 3841 3391 3842 } … … 3409 3860 } 3410 3861 3411 leaveRule(); 3862 if ( state.backtracking==0 ) { 3863 leaveRule(); 3864 } 3412 3865 } 3413 3866 … … 3417 3870 } 3418 3871 finally { 3872 if ( state.backtracking>0 ) { memoize(input, 28, ruleDefinitionList_StartIndex); } 3419 3873 } 3420 3874 return current; … … 3424 3878 3425 3879 // $ANTLR start "entryRuleSingleDefinition" 3426 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 33:1: entryRuleSingleDefinition returns [EObject current=null] : iv_ruleSingleDefinition= ruleSingleDefinition EOF ;3880 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1352:1: entryRuleSingleDefinition returns [EObject current=null] : iv_ruleSingleDefinition= ruleSingleDefinition EOF ; 3427 3881 public final EObject entryRuleSingleDefinition() throws RecognitionException { 3428 3882 EObject current = null; 3429 3883 int entryRuleSingleDefinition_StartIndex = input.index(); 3430 3884 EObject iv_ruleSingleDefinition = null; 3431 3885 3432 3886 3433 3887 try { 3434 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1334:2: (iv_ruleSingleDefinition= ruleSingleDefinition EOF ) 3435 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1335:2: iv_ruleSingleDefinition= ruleSingleDefinition EOF 3436 { 3437 newCompositeNode(grammarAccess.getSingleDefinitionRule()); 3438 pushFollow(FOLLOW_ruleSingleDefinition_in_entryRuleSingleDefinition2794); 3888 if ( state.backtracking>0 && alreadyParsedRule(input, 29) ) { return current; } 3889 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1353:2: (iv_ruleSingleDefinition= ruleSingleDefinition EOF ) 3890 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1354:2: iv_ruleSingleDefinition= ruleSingleDefinition EOF 3891 { 3892 if ( state.backtracking==0 ) { 3893 newCompositeNode(grammarAccess.getSingleDefinitionRule()); 3894 } 3895 pushFollow(FOLLOW_ruleSingleDefinition_in_entryRuleSingleDefinition2819); 3439 3896 iv_ruleSingleDefinition=ruleSingleDefinition(); 3440 3897 3441 3898 state._fsp--; 3442 3443 current =iv_ruleSingleDefinition; 3444 match(input,EOF,FOLLOW_EOF_in_entryRuleSingleDefinition2804); 3899 if (state.failed) return current; 3900 if ( state.backtracking==0 ) { 3901 current =iv_ruleSingleDefinition; 3902 } 3903 match(input,EOF,FOLLOW_EOF_in_entryRuleSingleDefinition2829); if (state.failed) return current; 3445 3904 3446 3905 } … … 3453 3912 } 3454 3913 finally { 3914 if ( state.backtracking>0 ) { memoize(input, 29, entryRuleSingleDefinition_StartIndex); } 3455 3915 } 3456 3916 return current; … … 3460 3920 3461 3921 // $ANTLR start "ruleSingleDefinition" 3462 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 42:1: ruleSingleDefinition returns [EObject current=null] : ( (lv_terms_0_0= ruleTerm ) )+ ;3922 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1361:1: ruleSingleDefinition returns [EObject current=null] : ( (lv_terms_0_0= ruleTerm ) )+ ; 3463 3923 public final EObject ruleSingleDefinition() throws RecognitionException { 3464 3924 EObject current = null; 3465 3925 int ruleSingleDefinition_StartIndex = input.index(); 3466 3926 EObject lv_terms_0_0 = null; 3467 3927 … … 3470 3930 3471 3931 try { 3472 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1345:28: ( ( (lv_terms_0_0= ruleTerm ) )+ ) 3473 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1346:1: ( (lv_terms_0_0= ruleTerm ) )+ 3474 { 3475 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1346:1: ( (lv_terms_0_0= ruleTerm ) )+ 3932 if ( state.backtracking>0 && alreadyParsedRule(input, 30) ) { return current; } 3933 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1364:28: ( ( (lv_terms_0_0= ruleTerm ) )+ ) 3934 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1365:1: ( (lv_terms_0_0= ruleTerm ) )+ 3935 { 3936 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1365:1: ( (lv_terms_0_0= ruleTerm ) )+ 3476 3937 int cnt32=0; 3477 3938 loop32: … … 3505 3966 switch (alt32) { 3506 3967 case 1 : 3507 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 47:1: (lv_terms_0_0= ruleTerm )3968 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1366:1: (lv_terms_0_0= ruleTerm ) 3508 3969 { 3509 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 47:1: (lv_terms_0_0= ruleTerm )3510 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 48:3: lv_terms_0_0= ruleTerm3970 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1366:1: (lv_terms_0_0= ruleTerm ) 3971 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1367:3: lv_terms_0_0= ruleTerm 3511 3972 { 3512 3513 newCompositeNode(grammarAccess.getSingleDefinitionAccess().getTermsTermParserRuleCall_0()); 3514 3515 pushFollow(FOLLOW_ruleTerm_in_ruleSingleDefinition2849); 3973 if ( state.backtracking==0 ) { 3974 3975 newCompositeNode(grammarAccess.getSingleDefinitionAccess().getTermsTermParserRuleCall_0()); 3976 3977 } 3978 pushFollow(FOLLOW_ruleTerm_in_ruleSingleDefinition2874); 3516 3979 lv_terms_0_0=ruleTerm(); 3517 3980 3518 3981 state._fsp--; 3519 3520 3521 if (current==null) { 3522 current = createModelElementForParent(grammarAccess.getSingleDefinitionRule()); 3523 } 3524 add( 3525 current, 3526 "terms", 3527 lv_terms_0_0, 3528 "Term"); 3529 afterParserOrEnumRuleCall(); 3530 3982 if (state.failed) return current; 3983 if ( state.backtracking==0 ) { 3984 3985 if (current==null) { 3986 current = createModelElementForParent(grammarAccess.getSingleDefinitionRule()); 3987 } 3988 add( 3989 current, 3990 "terms", 3991 lv_terms_0_0, 3992 "Term"); 3993 afterParserOrEnumRuleCall(); 3994 3995 } 3531 3996 3532 3997 } … … 3538 4003 default : 3539 4004 if ( cnt32 >= 1 ) break loop32; 4005 if (state.backtracking>0) {state.failed=true; return current;} 3540 4006 EarlyExitException eee = 3541 4007 new EarlyExitException(32, input); … … 3548 4014 } 3549 4015 3550 leaveRule(); 4016 if ( state.backtracking==0 ) { 4017 leaveRule(); 4018 } 3551 4019 } 3552 4020 … … 3556 4024 } 3557 4025 finally { 4026 if ( state.backtracking>0 ) { memoize(input, 30, ruleSingleDefinition_StartIndex); } 3558 4027 } 3559 4028 return current; … … 3563 4032 3564 4033 // $ANTLR start "entryRuleTerm" 3565 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:13 72:1: entryRuleTerm returns [EObject current=null] : iv_ruleTerm= ruleTerm EOF ;4034 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1391:1: entryRuleTerm returns [EObject current=null] : iv_ruleTerm= ruleTerm EOF ; 3566 4035 public final EObject entryRuleTerm() throws RecognitionException { 3567 4036 EObject current = null; 3568 4037 int entryRuleTerm_StartIndex = input.index(); 3569 4038 EObject iv_ruleTerm = null; 3570 4039 3571 4040 3572 4041 try { 3573 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1373:2: (iv_ruleTerm= ruleTerm EOF ) 3574 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1374:2: iv_ruleTerm= ruleTerm EOF 3575 { 3576 newCompositeNode(grammarAccess.getTermRule()); 3577 pushFollow(FOLLOW_ruleTerm_in_entryRuleTerm2885); 4042 if ( state.backtracking>0 && alreadyParsedRule(input, 31) ) { return current; } 4043 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1392:2: (iv_ruleTerm= ruleTerm EOF ) 4044 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1393:2: iv_ruleTerm= ruleTerm EOF 4045 { 4046 if ( state.backtracking==0 ) { 4047 newCompositeNode(grammarAccess.getTermRule()); 4048 } 4049 pushFollow(FOLLOW_ruleTerm_in_entryRuleTerm2910); 3578 4050 iv_ruleTerm=ruleTerm(); 3579 4051 3580 4052 state._fsp--; 3581 3582 current =iv_ruleTerm; 3583 match(input,EOF,FOLLOW_EOF_in_entryRuleTerm2895); 4053 if (state.failed) return current; 4054 if ( state.backtracking==0 ) { 4055 current =iv_ruleTerm; 4056 } 4057 match(input,EOF,FOLLOW_EOF_in_entryRuleTerm2920); if (state.failed) return current; 3584 4058 3585 4059 } … … 3592 4066 } 3593 4067 finally { 4068 if ( state.backtracking>0 ) { memoize(input, 31, entryRuleTerm_StartIndex); } 3594 4069 } 3595 4070 return current; … … 3599 4074 3600 4075 // $ANTLR start "ruleTerm" 3601 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1 381:1: ruleTerm returns [EObject current=null] : ( ( (lv_termAtom_0_0= ruleAtom ) ) | ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) | ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) | ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) ) ;4076 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1400:1: ruleTerm returns [EObject current=null] : ( ( (lv_termAtom_0_0= ruleAtom ) ) | ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) | ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) | ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) ) ; 3602 4077 public final EObject ruleTerm() throws RecognitionException { 3603 4078 EObject current = null; 3604 4079 int ruleTerm_StartIndex = input.index(); 3605 4080 EObject lv_termAtom_0_0 = null; 3606 4081 … … 3615 4090 3616 4091 try { 3617 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1384:28: ( ( ( (lv_termAtom_0_0= ruleAtom ) ) | ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) | ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) | ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) ) ) 3618 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1385:1: ( ( (lv_termAtom_0_0= ruleAtom ) ) | ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) | ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) | ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) ) 3619 { 3620 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1385:1: ( ( (lv_termAtom_0_0= ruleAtom ) ) | ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) | ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) | ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) ) 4092 if ( state.backtracking>0 && alreadyParsedRule(input, 32) ) { return current; } 4093 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1403:28: ( ( ( (lv_termAtom_0_0= ruleAtom ) ) | ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) | ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) | ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) ) ) 4094 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1404:1: ( ( (lv_termAtom_0_0= ruleAtom ) ) | ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) | ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) | ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) ) 4095 { 4096 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1404:1: ( ( (lv_termAtom_0_0= ruleAtom ) ) | ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) | ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) | ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) ) 3621 4097 int alt33=4; 3622 4098 switch ( input.LA(1) ) { … … 3644 4120 break; 3645 4121 default: 4122 if (state.backtracking>0) {state.failed=true; return current;} 3646 4123 NoViableAltException nvae = 3647 4124 new NoViableAltException("", 33, 0, input); … … 3652 4129 switch (alt33) { 3653 4130 case 1 : 3654 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1385:2: ( (lv_termAtom_0_0= ruleAtom ) ) 3655 { 3656 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1385:2: ( (lv_termAtom_0_0= ruleAtom ) ) 3657 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1386:1: (lv_termAtom_0_0= ruleAtom ) 3658 { 3659 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1386:1: (lv_termAtom_0_0= ruleAtom ) 3660 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1387:3: lv_termAtom_0_0= ruleAtom 3661 { 3662 3663 newCompositeNode(grammarAccess.getTermAccess().getTermAtomAtomParserRuleCall_0_0()); 3664 3665 pushFollow(FOLLOW_ruleAtom_in_ruleTerm2941); 4131 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1404:2: ( (lv_termAtom_0_0= ruleAtom ) ) 4132 { 4133 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1404:2: ( (lv_termAtom_0_0= ruleAtom ) ) 4134 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1405:1: (lv_termAtom_0_0= ruleAtom ) 4135 { 4136 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1405:1: (lv_termAtom_0_0= ruleAtom ) 4137 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1406:3: lv_termAtom_0_0= ruleAtom 4138 { 4139 if ( state.backtracking==0 ) { 4140 4141 newCompositeNode(grammarAccess.getTermAccess().getTermAtomAtomParserRuleCall_0_0()); 4142 4143 } 4144 pushFollow(FOLLOW_ruleAtom_in_ruleTerm2966); 3666 4145 lv_termAtom_0_0=ruleAtom(); 3667 4146 3668 4147 state._fsp--; 3669 3670 3671 if (current==null) { 3672 current = createModelElementForParent(grammarAccess.getTermRule()); 3673 } 3674 set( 3675 current, 3676 "termAtom", 3677 lv_termAtom_0_0, 3678 "Atom"); 3679 afterParserOrEnumRuleCall(); 3680 4148 if (state.failed) return current; 4149 if ( state.backtracking==0 ) { 4150 4151 if (current==null) { 4152 current = createModelElementForParent(grammarAccess.getTermRule()); 4153 } 4154 set( 4155 current, 4156 "termAtom", 4157 lv_termAtom_0_0, 4158 "Atom"); 4159 afterParserOrEnumRuleCall(); 4160 4161 } 3681 4162 3682 4163 } … … 3689 4170 break; 3690 4171 case 2 : 3691 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1404:6: ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) 3692 { 3693 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1404:6: ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) 3694 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1405:1: (lv_termGroupedSequence_1_0= ruleGroupedSequence ) 3695 { 3696 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1405:1: (lv_termGroupedSequence_1_0= ruleGroupedSequence ) 3697 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1406:3: lv_termGroupedSequence_1_0= ruleGroupedSequence 3698 { 3699 3700 newCompositeNode(grammarAccess.getTermAccess().getTermGroupedSequenceGroupedSequenceParserRuleCall_1_0()); 3701 3702 pushFollow(FOLLOW_ruleGroupedSequence_in_ruleTerm2968); 4172 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1423:6: ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) 4173 { 4174 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1423:6: ( (lv_termGroupedSequence_1_0= ruleGroupedSequence ) ) 4175 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1424:1: (lv_termGroupedSequence_1_0= ruleGroupedSequence ) 4176 { 4177 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1424:1: (lv_termGroupedSequence_1_0= ruleGroupedSequence ) 4178 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1425:3: lv_termGroupedSequence_1_0= ruleGroupedSequence 4179 { 4180 if ( state.backtracking==0 ) { 4181 4182 newCompositeNode(grammarAccess.getTermAccess().getTermGroupedSequenceGroupedSequenceParserRuleCall_1_0()); 4183 4184 } 4185 pushFollow(FOLLOW_ruleGroupedSequence_in_ruleTerm2993); 3703 4186 lv_termGroupedSequence_1_0=ruleGroupedSequence(); 3704 4187 3705 4188 state._fsp--; 3706 3707 3708 if (current==null) { 3709 current = createModelElementForParent(grammarAccess.getTermRule()); 3710 } 3711 set( 3712 current, 3713 "termGroupedSequence", 3714 lv_termGroupedSequence_1_0, 3715 "GroupedSequence"); 3716 afterParserOrEnumRuleCall(); 3717 4189 if (state.failed) return current; 4190 if ( state.backtracking==0 ) { 4191 4192 if (current==null) { 4193 current = createModelElementForParent(grammarAccess.getTermRule()); 4194 } 4195 set( 4196 current, 4197 "termGroupedSequence", 4198 lv_termGroupedSequence_1_0, 4199 "GroupedSequence"); 4200 afterParserOrEnumRuleCall(); 4201 4202 } 3718 4203 3719 4204 } … … 3726 4211 break; 3727 4212 case 3 : 3728 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1423:6: ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) 3729 { 3730 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1423:6: ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) 3731 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1424:1: (lv_termOptionalSequence_2_0= ruleOptionalSequence ) 3732 { 3733 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1424:1: (lv_termOptionalSequence_2_0= ruleOptionalSequence ) 3734 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1425:3: lv_termOptionalSequence_2_0= ruleOptionalSequence 3735 { 3736 3737 newCompositeNode(grammarAccess.getTermAccess().getTermOptionalSequenceOptionalSequenceParserRuleCall_2_0()); 3738 3739 pushFollow(FOLLOW_ruleOptionalSequence_in_ruleTerm2995); 4213 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1442:6: ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) 4214 { 4215 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1442:6: ( (lv_termOptionalSequence_2_0= ruleOptionalSequence ) ) 4216 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1443:1: (lv_termOptionalSequence_2_0= ruleOptionalSequence ) 4217 { 4218 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1443:1: (lv_termOptionalSequence_2_0= ruleOptionalSequence ) 4219 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1444:3: lv_termOptionalSequence_2_0= ruleOptionalSequence 4220 { 4221 if ( state.backtracking==0 ) { 4222 4223 newCompositeNode(grammarAccess.getTermAccess().getTermOptionalSequenceOptionalSequenceParserRuleCall_2_0()); 4224 4225 } 4226 pushFollow(FOLLOW_ruleOptionalSequence_in_ruleTerm3020); 3740 4227 lv_termOptionalSequence_2_0=ruleOptionalSequence(); 3741 4228 3742 4229 state._fsp--; 3743 3744 3745 if (current==null) { 3746 current = createModelElementForParent(grammarAccess.getTermRule()); 3747 } 3748 set( 3749 current, 3750 "termOptionalSequence", 3751 lv_termOptionalSequence_2_0, 3752 "OptionalSequence"); 3753 afterParserOrEnumRuleCall(); 3754 4230 if (state.failed) return current; 4231 if ( state.backtracking==0 ) { 4232 4233 if (current==null) { 4234 current = createModelElementForParent(grammarAccess.getTermRule()); 4235 } 4236 set( 4237 current, 4238 "termOptionalSequence", 4239 lv_termOptionalSequence_2_0, 4240 "OptionalSequence"); 4241 afterParserOrEnumRuleCall(); 4242 4243 } 3755 4244 3756 4245 } … … 3763 4252 break; 3764 4253 case 4 : 3765 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1442:6: ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) 3766 { 3767 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1442:6: ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) 3768 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1443:1: (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) 3769 { 3770 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1443:1: (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) 3771 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1444:3: lv_termRepeatedSequence_3_0= ruleRepeatedSequence 3772 { 3773 3774 newCompositeNode(grammarAccess.getTermAccess().getTermRepeatedSequenceRepeatedSequenceParserRuleCall_3_0()); 3775 3776 pushFollow(FOLLOW_ruleRepeatedSequence_in_ruleTerm3022); 4254 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1461:6: ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) 4255 { 4256 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1461:6: ( (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) ) 4257 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1462:1: (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) 4258 { 4259 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1462:1: (lv_termRepeatedSequence_3_0= ruleRepeatedSequence ) 4260 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1463:3: lv_termRepeatedSequence_3_0= ruleRepeatedSequence 4261 { 4262 if ( state.backtracking==0 ) { 4263 4264 newCompositeNode(grammarAccess.getTermAccess().getTermRepeatedSequenceRepeatedSequenceParserRuleCall_3_0()); 4265 4266 } 4267 pushFollow(FOLLOW_ruleRepeatedSequence_in_ruleTerm3047); 3777 4268 lv_termRepeatedSequence_3_0=ruleRepeatedSequence(); 3778 4269 3779 4270 state._fsp--; 3780 3781 3782 if (current==null) { 3783 current = createModelElementForParent(grammarAccess.getTermRule()); 3784 } 3785 set( 3786 current, 3787 "termRepeatedSequence", 3788 lv_termRepeatedSequence_3_0, 3789 "RepeatedSequence"); 3790 afterParserOrEnumRuleCall(); 3791 4271 if (state.failed) return current; 4272 if ( state.backtracking==0 ) { 4273 4274 if (current==null) { 4275 current = createModelElementForParent(grammarAccess.getTermRule()); 4276 } 4277 set( 4278 current, 4279 "termRepeatedSequence", 4280 lv_termRepeatedSequence_3_0, 4281 "RepeatedSequence"); 4282 afterParserOrEnumRuleCall(); 4283 4284 } 3792 4285 3793 4286 } … … 3805 4298 } 3806 4299 3807 leaveRule(); 4300 if ( state.backtracking==0 ) { 4301 leaveRule(); 4302 } 3808 4303 } 3809 4304 … … 3813 4308 } 3814 4309 finally { 4310 if ( state.backtracking>0 ) { memoize(input, 32, ruleTerm_StartIndex); } 3815 4311 } 3816 4312 return current; … … 3820 4316 3821 4317 // $ANTLR start "entryRuleAtom" 3822 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:14 68:1: entryRuleAtom returns [EObject current=null] : iv_ruleAtom= ruleAtom EOF ;4318 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1487:1: entryRuleAtom returns [EObject current=null] : iv_ruleAtom= ruleAtom EOF ; 3823 4319 public final EObject entryRuleAtom() throws RecognitionException { 3824 4320 EObject current = null; 3825 4321 int entryRuleAtom_StartIndex = input.index(); 3826 4322 EObject iv_ruleAtom = null; 3827 4323 3828 4324 3829 4325 try { 3830 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1469:2: (iv_ruleAtom= ruleAtom EOF ) 3831 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1470:2: iv_ruleAtom= ruleAtom EOF 3832 { 3833 newCompositeNode(grammarAccess.getAtomRule()); 3834 pushFollow(FOLLOW_ruleAtom_in_entryRuleAtom3058); 4326 if ( state.backtracking>0 && alreadyParsedRule(input, 33) ) { return current; } 4327 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1488:2: (iv_ruleAtom= ruleAtom EOF ) 4328 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1489:2: iv_ruleAtom= ruleAtom EOF 4329 { 4330 if ( state.backtracking==0 ) { 4331 newCompositeNode(grammarAccess.getAtomRule()); 4332 } 4333 pushFollow(FOLLOW_ruleAtom_in_entryRuleAtom3083); 3835 4334 iv_ruleAtom=ruleAtom(); 3836 4335 3837 4336 state._fsp--; 3838 3839 current =iv_ruleAtom; 3840 match(input,EOF,FOLLOW_EOF_in_entryRuleAtom3068); 4337 if (state.failed) return current; 4338 if ( state.backtracking==0 ) { 4339 current =iv_ruleAtom; 4340 } 4341 match(input,EOF,FOLLOW_EOF_in_entryRuleAtom3093); if (state.failed) return current; 3841 4342 3842 4343 } … … 3849 4350 } 3850 4351 finally { 4352 if ( state.backtracking>0 ) { memoize(input, 33, entryRuleAtom_StartIndex); } 3851 4353 } 3852 4354 return current; … … 3856 4358 3857 4359 // $ANTLR start "ruleAtom" 3858 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:14 77:1: ruleAtom returns [EObject current=null] : ( ( (lv_atomStringRule_0_0= ruleStringRule ) ) | ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) ) ;4360 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1496:1: ruleAtom returns [EObject current=null] : ( ( (lv_atomStringRule_0_0= ruleStringRule ) ) | ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) ) ; 3859 4361 public final EObject ruleAtom() throws RecognitionException { 3860 4362 EObject current = null; 3861 4363 int ruleAtom_StartIndex = input.index(); 3862 4364 EObject lv_atomStringRule_0_0 = null; 3863 4365 … … 3868 4370 3869 4371 try { 3870 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1480:28: ( ( ( (lv_atomStringRule_0_0= ruleStringRule ) ) | ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) ) ) 3871 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1481:1: ( ( (lv_atomStringRule_0_0= ruleStringRule ) ) | ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) ) 3872 { 3873 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1481:1: ( ( (lv_atomStringRule_0_0= ruleStringRule ) ) | ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) ) 4372 if ( state.backtracking>0 && alreadyParsedRule(input, 34) ) { return current; } 4373 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1499:28: ( ( ( (lv_atomStringRule_0_0= ruleStringRule ) ) | ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) ) ) 4374 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1500:1: ( ( (lv_atomStringRule_0_0= ruleStringRule ) ) | ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) ) 4375 { 4376 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1500:1: ( ( (lv_atomStringRule_0_0= ruleStringRule ) ) | ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) ) 3874 4377 int alt34=2; 3875 4378 int LA34_0 = input.LA(1); … … 3882 4385 } 3883 4386 else { 4387 if (state.backtracking>0) {state.failed=true; return current;} 3884 4388 NoViableAltException nvae = 3885 4389 new NoViableAltException("", 34, 0, input); … … 3889 4393 switch (alt34) { 3890 4394 case 1 : 3891 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1481:2: ( (lv_atomStringRule_0_0= ruleStringRule ) ) 3892 { 3893 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1481:2: ( (lv_atomStringRule_0_0= ruleStringRule ) ) 3894 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1482:1: (lv_atomStringRule_0_0= ruleStringRule ) 3895 { 3896 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1482:1: (lv_atomStringRule_0_0= ruleStringRule ) 3897 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1483:3: lv_atomStringRule_0_0= ruleStringRule 3898 { 3899 3900 newCompositeNode(grammarAccess.getAtomAccess().getAtomStringRuleStringRuleParserRuleCall_0_0()); 3901 3902 pushFollow(FOLLOW_ruleStringRule_in_ruleAtom3114); 4395 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1500:2: ( (lv_atomStringRule_0_0= ruleStringRule ) ) 4396 { 4397 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1500:2: ( (lv_atomStringRule_0_0= ruleStringRule ) ) 4398 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1501:1: (lv_atomStringRule_0_0= ruleStringRule ) 4399 { 4400 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1501:1: (lv_atomStringRule_0_0= ruleStringRule ) 4401 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1502:3: lv_atomStringRule_0_0= ruleStringRule 4402 { 4403 if ( state.backtracking==0 ) { 4404 4405 newCompositeNode(grammarAccess.getAtomAccess().getAtomStringRuleStringRuleParserRuleCall_0_0()); 4406 4407 } 4408 pushFollow(FOLLOW_ruleStringRule_in_ruleAtom3139); 3903 4409 lv_atomStringRule_0_0=ruleStringRule(); 3904 4410 3905 4411 state._fsp--; 3906 3907 3908 if (current==null) { 3909 current = createModelElementForParent(grammarAccess.getAtomRule()); 3910 } 3911 set( 3912 current, 3913 "atomStringRule", 3914 lv_atomStringRule_0_0, 3915 "StringRule"); 3916 afterParserOrEnumRuleCall(); 3917 4412 if (state.failed) return current; 4413 if ( state.backtracking==0 ) { 4414 4415 if (current==null) { 4416 current = createModelElementForParent(grammarAccess.getAtomRule()); 4417 } 4418 set( 4419 current, 4420 "atomStringRule", 4421 lv_atomStringRule_0_0, 4422 "StringRule"); 4423 afterParserOrEnumRuleCall(); 4424 4425 } 3918 4426 3919 4427 } … … 3926 4434 break; 3927 4435 case 2 : 3928 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1500:6: ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) 3929 { 3930 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1500:6: ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) 3931 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1501:1: (lv_atomRuleReference_1_0= ruleRuleReference ) 3932 { 3933 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1501:1: (lv_atomRuleReference_1_0= ruleRuleReference ) 3934 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1502:3: lv_atomRuleReference_1_0= ruleRuleReference 3935 { 3936 3937 newCompositeNode(grammarAccess.getAtomAccess().getAtomRuleReferenceRuleReferenceParserRuleCall_1_0()); 3938 3939 pushFollow(FOLLOW_ruleRuleReference_in_ruleAtom3141); 4436 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1519:6: ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) 4437 { 4438 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1519:6: ( (lv_atomRuleReference_1_0= ruleRuleReference ) ) 4439 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1520:1: (lv_atomRuleReference_1_0= ruleRuleReference ) 4440 { 4441 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1520:1: (lv_atomRuleReference_1_0= ruleRuleReference ) 4442 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1521:3: lv_atomRuleReference_1_0= ruleRuleReference 4443 { 4444 if ( state.backtracking==0 ) { 4445 4446 newCompositeNode(grammarAccess.getAtomAccess().getAtomRuleReferenceRuleReferenceParserRuleCall_1_0()); 4447 4448 } 4449 pushFollow(FOLLOW_ruleRuleReference_in_ruleAtom3166); 3940 4450 lv_atomRuleReference_1_0=ruleRuleReference(); 3941 4451 3942 4452 state._fsp--; 3943 3944 3945 if (current==null) { 3946 current = createModelElementForParent(grammarAccess.getAtomRule()); 3947 } 3948 set( 3949 current, 3950 "atomRuleReference", 3951 lv_atomRuleReference_1_0, 3952 "RuleReference"); 3953 afterParserOrEnumRuleCall(); 3954 4453 if (state.failed) return current; 4454 if ( state.backtracking==0 ) { 4455 4456 if (current==null) { 4457 current = createModelElementForParent(grammarAccess.getAtomRule()); 4458 } 4459 set( 4460 current, 4461 "atomRuleReference", 4462 lv_atomRuleReference_1_0, 4463 "RuleReference"); 4464 afterParserOrEnumRuleCall(); 4465 4466 } 3955 4467 3956 4468 } … … 3968 4480 } 3969 4481 3970 leaveRule(); 4482 if ( state.backtracking==0 ) { 4483 leaveRule(); 4484 } 3971 4485 } 3972 4486 … … 3976 4490 } 3977 4491 finally { 4492 if ( state.backtracking>0 ) { memoize(input, 34, ruleAtom_StartIndex); } 3978 4493 } 3979 4494 return current; … … 3983 4498 3984 4499 // $ANTLR start "entryRuleRuleReference" 3985 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:15 26:1: entryRuleRuleReference returns [EObject current=null] : iv_ruleRuleReference= ruleRuleReference EOF ;4500 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1545:1: entryRuleRuleReference returns [EObject current=null] : iv_ruleRuleReference= ruleRuleReference EOF ; 3986 4501 public final EObject entryRuleRuleReference() throws RecognitionException { 3987 4502 EObject current = null; 3988 4503 int entryRuleRuleReference_StartIndex = input.index(); 3989 4504 EObject iv_ruleRuleReference = null; 3990 4505 3991 4506 3992 4507 try { 3993 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1527:2: (iv_ruleRuleReference= ruleRuleReference EOF ) 3994 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1528:2: iv_ruleRuleReference= ruleRuleReference EOF 3995 { 3996 newCompositeNode(grammarAccess.getRuleReferenceRule()); 3997 pushFollow(FOLLOW_ruleRuleReference_in_entryRuleRuleReference3177); 4508 if ( state.backtracking>0 && alreadyParsedRule(input, 35) ) { return current; } 4509 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1546:2: (iv_ruleRuleReference= ruleRuleReference EOF ) 4510 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1547:2: iv_ruleRuleReference= ruleRuleReference EOF 4511 { 4512 if ( state.backtracking==0 ) { 4513 newCompositeNode(grammarAccess.getRuleReferenceRule()); 4514 } 4515 pushFollow(FOLLOW_ruleRuleReference_in_entryRuleRuleReference3202); 3998 4516 iv_ruleRuleReference=ruleRuleReference(); 3999 4517 4000 4518 state._fsp--; 4001 4002 current =iv_ruleRuleReference; 4003 match(input,EOF,FOLLOW_EOF_in_entryRuleRuleReference3187); 4519 if (state.failed) return current; 4520 if ( state.backtracking==0 ) { 4521 current =iv_ruleRuleReference; 4522 } 4523 match(input,EOF,FOLLOW_EOF_in_entryRuleRuleReference3212); if (state.failed) return current; 4004 4524 4005 4525 } … … 4012 4532 } 4013 4533 finally { 4534 if ( state.backtracking>0 ) { memoize(input, 35, entryRuleRuleReference_StartIndex); } 4014 4535 } 4015 4536 return current; … … 4019 4540 4020 4541 // $ANTLR start "ruleRuleReference" 4021 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:15 35:1: ruleRuleReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ;4542 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1554:1: ruleRuleReference returns [EObject current=null] : ( (otherlv_0= RULE_ID ) ) ; 4022 4543 public final EObject ruleRuleReference() throws RecognitionException { 4023 4544 EObject current = null; 4024 4545 int ruleRuleReference_StartIndex = input.index(); 4025 4546 Token otherlv_0=null; 4026 4547 … … 4028 4549 4029 4550 try { 4030 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1538:28: ( ( (otherlv_0= RULE_ID ) ) ) 4031 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1539:1: ( (otherlv_0= RULE_ID ) ) 4032 { 4033 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1539:1: ( (otherlv_0= RULE_ID ) ) 4034 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1540:1: (otherlv_0= RULE_ID ) 4035 { 4036 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1540:1: (otherlv_0= RULE_ID ) 4037 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1541:3: otherlv_0= RULE_ID 4038 { 4039 4040 if (current==null) { 4041 current = createModelElement(grammarAccess.getRuleReferenceRule()); 4042 } 4043 4044 otherlv_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRuleReference3231); 4045 4046 newLeafNode(otherlv_0, grammarAccess.getRuleReferenceAccess().getRulerefRuleCrossReference_0()); 4047 4048 4049 } 4050 4051 4052 } 4053 4054 4055 } 4056 4057 leaveRule(); 4551 if ( state.backtracking>0 && alreadyParsedRule(input, 36) ) { return current; } 4552 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1557:28: ( ( (otherlv_0= RULE_ID ) ) ) 4553 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1558:1: ( (otherlv_0= RULE_ID ) ) 4554 { 4555 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1558:1: ( (otherlv_0= RULE_ID ) ) 4556 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1559:1: (otherlv_0= RULE_ID ) 4557 { 4558 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1559:1: (otherlv_0= RULE_ID ) 4559 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1560:3: otherlv_0= RULE_ID 4560 { 4561 if ( state.backtracking==0 ) { 4562 4563 /* */ 4564 4565 } 4566 if ( state.backtracking==0 ) { 4567 4568 if (current==null) { 4569 current = createModelElement(grammarAccess.getRuleReferenceRule()); 4570 } 4571 4572 } 4573 otherlv_0=(Token)match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleRuleReference3260); if (state.failed) return current; 4574 if ( state.backtracking==0 ) { 4575 4576 newLeafNode(otherlv_0, grammarAccess.getRuleReferenceAccess().getRulerefRuleCrossReference_0()); 4577 4578 } 4579 4580 } 4581 4582 4583 } 4584 4585 4586 } 4587 4588 if ( state.backtracking==0 ) { 4589 leaveRule(); 4590 } 4058 4591 } 4059 4592 … … 4063 4596 } 4064 4597 finally { 4598 if ( state.backtracking>0 ) { memoize(input, 36, ruleRuleReference_StartIndex); } 4065 4599 } 4066 4600 return current; … … 4070 4604 4071 4605 // $ANTLR start "entryRuleStringRule" 4072 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:15 60:1: entryRuleStringRule returns [EObject current=null] : iv_ruleStringRule= ruleStringRule EOF ;4606 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1582:1: entryRuleStringRule returns [EObject current=null] : iv_ruleStringRule= ruleStringRule EOF ; 4073 4607 public final EObject entryRuleStringRule() throws RecognitionException { 4074 4608 EObject current = null; 4075 4609 int entryRuleStringRule_StartIndex = input.index(); 4076 4610 EObject iv_ruleStringRule = null; 4077 4611 4078 4612 4079 4613 try { 4080 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1561:2: (iv_ruleStringRule= ruleStringRule EOF ) 4081 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1562:2: iv_ruleStringRule= ruleStringRule EOF 4082 { 4083 newCompositeNode(grammarAccess.getStringRuleRule()); 4084 pushFollow(FOLLOW_ruleStringRule_in_entryRuleStringRule3266); 4614 if ( state.backtracking>0 && alreadyParsedRule(input, 37) ) { return current; } 4615 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1583:2: (iv_ruleStringRule= ruleStringRule EOF ) 4616 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1584:2: iv_ruleStringRule= ruleStringRule EOF 4617 { 4618 if ( state.backtracking==0 ) { 4619 newCompositeNode(grammarAccess.getStringRuleRule()); 4620 } 4621 pushFollow(FOLLOW_ruleStringRule_in_entryRuleStringRule3295); 4085 4622 iv_ruleStringRule=ruleStringRule(); 4086 4623 4087 4624 state._fsp--; 4088 4089 current =iv_ruleStringRule; 4090 match(input,EOF,FOLLOW_EOF_in_entryRuleStringRule3276); 4625 if (state.failed) return current; 4626 if ( state.backtracking==0 ) { 4627 current =iv_ruleStringRule; 4628 } 4629 match(input,EOF,FOLLOW_EOF_in_entryRuleStringRule3305); if (state.failed) return current; 4091 4630 4092 4631 } … … 4099 4638 } 4100 4639 finally { 4640 if ( state.backtracking>0 ) { memoize(input, 37, entryRuleStringRule_StartIndex); } 4101 4641 } 4102 4642 return current; … … 4106 4646 4107 4647 // $ANTLR start "ruleStringRule" 4108 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:15 69:1: ruleStringRule returns [EObject current=null] : ( ( (lv_literal_0_0= RULE_STRING ) ) | ( (lv_colon_1_0= RULE_COLON ) ) ) ;4648 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1591:1: ruleStringRule returns [EObject current=null] : ( ( (lv_literal_0_0= RULE_STRING ) ) | ( (lv_colon_1_0= RULE_COLON ) ) ) ; 4109 4649 public final EObject ruleStringRule() throws RecognitionException { 4110 4650 EObject current = null; 4111 4651 int ruleStringRule_StartIndex = input.index(); 4112 4652 Token lv_literal_0_0=null; 4113 4653 Token lv_colon_1_0=null; … … 4116 4656 4117 4657 try { 4118 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1572:28: ( ( ( (lv_literal_0_0= RULE_STRING ) ) | ( (lv_colon_1_0= RULE_COLON ) ) ) ) 4119 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1573:1: ( ( (lv_literal_0_0= RULE_STRING ) ) | ( (lv_colon_1_0= RULE_COLON ) ) ) 4120 { 4121 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1573:1: ( ( (lv_literal_0_0= RULE_STRING ) ) | ( (lv_colon_1_0= RULE_COLON ) ) ) 4658 if ( state.backtracking>0 && alreadyParsedRule(input, 38) ) { return current; } 4659 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1594:28: ( ( ( (lv_literal_0_0= RULE_STRING ) ) | ( (lv_colon_1_0= RULE_COLON ) ) ) ) 4660 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1595:1: ( ( (lv_literal_0_0= RULE_STRING ) ) | ( (lv_colon_1_0= RULE_COLON ) ) ) 4661 { 4662 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1595:1: ( ( (lv_literal_0_0= RULE_STRING ) ) | ( (lv_colon_1_0= RULE_COLON ) ) ) 4122 4663 int alt35=2; 4123 4664 int LA35_0 = input.LA(1); … … 4130 4671 } 4131 4672 else { 4673 if (state.backtracking>0) {state.failed=true; return current;} 4132 4674 NoViableAltException nvae = 4133 4675 new NoViableAltException("", 35, 0, input); … … 4137 4679 switch (alt35) { 4138 4680 case 1 : 4139 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1573:2: ( (lv_literal_0_0= RULE_STRING ) ) 4140 { 4141 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1573:2: ( (lv_literal_0_0= RULE_STRING ) ) 4142 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1574:1: (lv_literal_0_0= RULE_STRING ) 4143 { 4144 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1574:1: (lv_literal_0_0= RULE_STRING ) 4145 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1575:3: lv_literal_0_0= RULE_STRING 4146 { 4147 lv_literal_0_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleStringRule3318); 4148 4149 newLeafNode(lv_literal_0_0, grammarAccess.getStringRuleAccess().getLiteralSTRINGTerminalRuleCall_0_0()); 4150 4151 4152 if (current==null) { 4153 current = createModelElement(grammarAccess.getStringRuleRule()); 4154 } 4155 setWithLastConsumed( 4156 current, 4157 "literal", 4158 lv_literal_0_0, 4159 "STRING"); 4160 4681 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1595:2: ( (lv_literal_0_0= RULE_STRING ) ) 4682 { 4683 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1595:2: ( (lv_literal_0_0= RULE_STRING ) ) 4684 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1596:1: (lv_literal_0_0= RULE_STRING ) 4685 { 4686 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1596:1: (lv_literal_0_0= RULE_STRING ) 4687 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1597:3: lv_literal_0_0= RULE_STRING 4688 { 4689 lv_literal_0_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleStringRule3347); if (state.failed) return current; 4690 if ( state.backtracking==0 ) { 4691 4692 newLeafNode(lv_literal_0_0, grammarAccess.getStringRuleAccess().getLiteralSTRINGTerminalRuleCall_0_0()); 4693 4694 } 4695 if ( state.backtracking==0 ) { 4696 4697 if (current==null) { 4698 current = createModelElement(grammarAccess.getStringRuleRule()); 4699 } 4700 setWithLastConsumed( 4701 current, 4702 "literal", 4703 lv_literal_0_0, 4704 "STRING"); 4705 4706 } 4161 4707 4162 4708 } … … 4169 4715 break; 4170 4716 case 2 : 4171 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1592:6: ( (lv_colon_1_0= RULE_COLON ) ) 4172 { 4173 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1592:6: ( (lv_colon_1_0= RULE_COLON ) ) 4174 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1593:1: (lv_colon_1_0= RULE_COLON ) 4175 { 4176 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1593:1: (lv_colon_1_0= RULE_COLON ) 4177 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1594:3: lv_colon_1_0= RULE_COLON 4178 { 4179 lv_colon_1_0=(Token)match(input,RULE_COLON,FOLLOW_RULE_COLON_in_ruleStringRule3346); 4180 4181 newLeafNode(lv_colon_1_0, grammarAccess.getStringRuleAccess().getColonCOLONTerminalRuleCall_1_0()); 4182 4183 4184 if (current==null) { 4185 current = createModelElement(grammarAccess.getStringRuleRule()); 4186 } 4187 setWithLastConsumed( 4188 current, 4189 "colon", 4190 lv_colon_1_0, 4191 "COLON"); 4192 4717 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1614:6: ( (lv_colon_1_0= RULE_COLON ) ) 4718 { 4719 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1614:6: ( (lv_colon_1_0= RULE_COLON ) ) 4720 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1615:1: (lv_colon_1_0= RULE_COLON ) 4721 { 4722 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1615:1: (lv_colon_1_0= RULE_COLON ) 4723 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1616:3: lv_colon_1_0= RULE_COLON 4724 { 4725 lv_colon_1_0=(Token)match(input,RULE_COLON,FOLLOW_RULE_COLON_in_ruleStringRule3375); if (state.failed) return current; 4726 if ( state.backtracking==0 ) { 4727 4728 newLeafNode(lv_colon_1_0, grammarAccess.getStringRuleAccess().getColonCOLONTerminalRuleCall_1_0()); 4729 4730 } 4731 if ( state.backtracking==0 ) { 4732 4733 if (current==null) { 4734 current = createModelElement(grammarAccess.getStringRuleRule()); 4735 } 4736 setWithLastConsumed( 4737 current, 4738 "colon", 4739 lv_colon_1_0, 4740 "COLON"); 4741 4742 } 4193 4743 4194 4744 } … … 4206 4756 } 4207 4757 4208 leaveRule(); 4758 if ( state.backtracking==0 ) { 4759 leaveRule(); 4760 } 4209 4761 } 4210 4762 … … 4214 4766 } 4215 4767 finally { 4768 if ( state.backtracking>0 ) { memoize(input, 38, ruleStringRule_StartIndex); } 4216 4769 } 4217 4770 return current; … … 4221 4774 4222 4775 // $ANTLR start "entryRuleGroupedSequence" 4223 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:16 18:1: entryRuleGroupedSequence returns [EObject current=null] : iv_ruleGroupedSequence= ruleGroupedSequence EOF ;4776 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1640:1: entryRuleGroupedSequence returns [EObject current=null] : iv_ruleGroupedSequence= ruleGroupedSequence EOF ; 4224 4777 public final EObject entryRuleGroupedSequence() throws RecognitionException { 4225 4778 EObject current = null; 4226 4779 int entryRuleGroupedSequence_StartIndex = input.index(); 4227 4780 EObject iv_ruleGroupedSequence = null; 4228 4781 4229 4782 4230 4783 try { 4231 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1619:2: (iv_ruleGroupedSequence= ruleGroupedSequence EOF ) 4232 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1620:2: iv_ruleGroupedSequence= ruleGroupedSequence EOF 4233 { 4234 newCompositeNode(grammarAccess.getGroupedSequenceRule()); 4235 pushFollow(FOLLOW_ruleGroupedSequence_in_entryRuleGroupedSequence3387); 4784 if ( state.backtracking>0 && alreadyParsedRule(input, 39) ) { return current; } 4785 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1641:2: (iv_ruleGroupedSequence= ruleGroupedSequence EOF ) 4786 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1642:2: iv_ruleGroupedSequence= ruleGroupedSequence EOF 4787 { 4788 if ( state.backtracking==0 ) { 4789 newCompositeNode(grammarAccess.getGroupedSequenceRule()); 4790 } 4791 pushFollow(FOLLOW_ruleGroupedSequence_in_entryRuleGroupedSequence3416); 4236 4792 iv_ruleGroupedSequence=ruleGroupedSequence(); 4237 4793 4238 4794 state._fsp--; 4239 4240 current =iv_ruleGroupedSequence; 4241 match(input,EOF,FOLLOW_EOF_in_entryRuleGroupedSequence3397); 4795 if (state.failed) return current; 4796 if ( state.backtracking==0 ) { 4797 current =iv_ruleGroupedSequence; 4798 } 4799 match(input,EOF,FOLLOW_EOF_in_entryRuleGroupedSequence3426); if (state.failed) return current; 4242 4800 4243 4801 } … … 4250 4808 } 4251 4809 finally { 4810 if ( state.backtracking>0 ) { memoize(input, 39, entryRuleGroupedSequence_StartIndex); } 4252 4811 } 4253 4812 return current; … … 4257 4816 4258 4817 // $ANTLR start "ruleGroupedSequence" 4259 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:16 27:1: ruleGroupedSequence returns [EObject current=null] : (otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' ) ;4818 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1649:1: ruleGroupedSequence returns [EObject current=null] : (otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' ) ; 4260 4819 public final EObject ruleGroupedSequence() throws RecognitionException { 4261 4820 EObject current = null; 4262 4821 int ruleGroupedSequence_StartIndex = input.index(); 4263 4822 Token otherlv_0=null; 4264 4823 Token otherlv_2=null; … … 4269 4828 4270 4829 try { 4271 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1630:28: ( (otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' ) ) 4272 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1631:1: (otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' ) 4273 { 4274 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1631:1: (otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' ) 4275 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1631:3: otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' 4276 { 4277 otherlv_0=(Token)match(input,26,FOLLOW_26_in_ruleGroupedSequence3434); 4278 4279 newLeafNode(otherlv_0, grammarAccess.getGroupedSequenceAccess().getLeftParenthesisKeyword_0()); 4280 4281 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1635:1: ( (lv_definitionList_1_0= ruleDefinitionList ) ) 4282 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1636:1: (lv_definitionList_1_0= ruleDefinitionList ) 4283 { 4284 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1636:1: (lv_definitionList_1_0= ruleDefinitionList ) 4285 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1637:3: lv_definitionList_1_0= ruleDefinitionList 4286 { 4287 4288 newCompositeNode(grammarAccess.getGroupedSequenceAccess().getDefinitionListDefinitionListParserRuleCall_1_0()); 4289 4290 pushFollow(FOLLOW_ruleDefinitionList_in_ruleGroupedSequence3455); 4830 if ( state.backtracking>0 && alreadyParsedRule(input, 40) ) { return current; } 4831 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1652:28: ( (otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' ) ) 4832 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1653:1: (otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' ) 4833 { 4834 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1653:1: (otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' ) 4835 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1653:3: otherlv_0= '(' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ')' 4836 { 4837 otherlv_0=(Token)match(input,26,FOLLOW_26_in_ruleGroupedSequence3463); if (state.failed) return current; 4838 if ( state.backtracking==0 ) { 4839 4840 newLeafNode(otherlv_0, grammarAccess.getGroupedSequenceAccess().getLeftParenthesisKeyword_0()); 4841 4842 } 4843 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1657:1: ( (lv_definitionList_1_0= ruleDefinitionList ) ) 4844 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1658:1: (lv_definitionList_1_0= ruleDefinitionList ) 4845 { 4846 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1658:1: (lv_definitionList_1_0= ruleDefinitionList ) 4847 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1659:3: lv_definitionList_1_0= ruleDefinitionList 4848 { 4849 if ( state.backtracking==0 ) { 4850 4851 newCompositeNode(grammarAccess.getGroupedSequenceAccess().getDefinitionListDefinitionListParserRuleCall_1_0()); 4852 4853 } 4854 pushFollow(FOLLOW_ruleDefinitionList_in_ruleGroupedSequence3484); 4291 4855 lv_definitionList_1_0=ruleDefinitionList(); 4292 4856 4293 4857 state._fsp--; 4294 4295 4296 if (current==null) { 4297 current = createModelElementForParent(grammarAccess.getGroupedSequenceRule()); 4298 } 4299 add( 4300 current, 4301 "definitionList", 4302 lv_definitionList_1_0, 4303 "DefinitionList"); 4304 afterParserOrEnumRuleCall(); 4305 4306 4307 } 4308 4309 4310 } 4311 4312 otherlv_2=(Token)match(input,27,FOLLOW_27_in_ruleGroupedSequence3467); 4313 4314 newLeafNode(otherlv_2, grammarAccess.getGroupedSequenceAccess().getRightParenthesisKeyword_2()); 4315 4316 4317 } 4318 4319 4320 } 4321 4322 leaveRule(); 4858 if (state.failed) return current; 4859 if ( state.backtracking==0 ) { 4860 4861 if (current==null) { 4862 current = createModelElementForParent(grammarAccess.getGroupedSequenceRule()); 4863 } 4864 add( 4865 current, 4866 "definitionList", 4867 lv_definitionList_1_0, 4868 "DefinitionList"); 4869 afterParserOrEnumRuleCall(); 4870 4871 } 4872 4873 } 4874 4875 4876 } 4877 4878 otherlv_2=(Token)match(input,27,FOLLOW_27_in_ruleGroupedSequence3496); if (state.failed) return current; 4879 if ( state.backtracking==0 ) { 4880 4881 newLeafNode(otherlv_2, grammarAccess.getGroupedSequenceAccess().getRightParenthesisKeyword_2()); 4882 4883 } 4884 4885 } 4886 4887 4888 } 4889 4890 if ( state.backtracking==0 ) { 4891 leaveRule(); 4892 } 4323 4893 } 4324 4894 … … 4328 4898 } 4329 4899 finally { 4900 if ( state.backtracking>0 ) { memoize(input, 40, ruleGroupedSequence_StartIndex); } 4330 4901 } 4331 4902 return current; … … 4335 4906 4336 4907 // $ANTLR start "entryRuleOptionalSequence" 4337 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:16 65:1: entryRuleOptionalSequence returns [EObject current=null] : iv_ruleOptionalSequence= ruleOptionalSequence EOF ;4908 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1687:1: entryRuleOptionalSequence returns [EObject current=null] : iv_ruleOptionalSequence= ruleOptionalSequence EOF ; 4338 4909 public final EObject entryRuleOptionalSequence() throws RecognitionException { 4339 4910 EObject current = null; 4340 4911 int entryRuleOptionalSequence_StartIndex = input.index(); 4341 4912 EObject iv_ruleOptionalSequence = null; 4342 4913 4343 4914 4344 4915 try { 4345 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1666:2: (iv_ruleOptionalSequence= ruleOptionalSequence EOF ) 4346 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1667:2: iv_ruleOptionalSequence= ruleOptionalSequence EOF 4347 { 4348 newCompositeNode(grammarAccess.getOptionalSequenceRule()); 4349 pushFollow(FOLLOW_ruleOptionalSequence_in_entryRuleOptionalSequence3503); 4916 if ( state.backtracking>0 && alreadyParsedRule(input, 41) ) { return current; } 4917 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1688:2: (iv_ruleOptionalSequence= ruleOptionalSequence EOF ) 4918 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1689:2: iv_ruleOptionalSequence= ruleOptionalSequence EOF 4919 { 4920 if ( state.backtracking==0 ) { 4921 newCompositeNode(grammarAccess.getOptionalSequenceRule()); 4922 } 4923 pushFollow(FOLLOW_ruleOptionalSequence_in_entryRuleOptionalSequence3532); 4350 4924 iv_ruleOptionalSequence=ruleOptionalSequence(); 4351 4925 4352 4926 state._fsp--; 4353 4354 current =iv_ruleOptionalSequence; 4355 match(input,EOF,FOLLOW_EOF_in_entryRuleOptionalSequence3513); 4927 if (state.failed) return current; 4928 if ( state.backtracking==0 ) { 4929 current =iv_ruleOptionalSequence; 4930 } 4931 match(input,EOF,FOLLOW_EOF_in_entryRuleOptionalSequence3542); if (state.failed) return current; 4356 4932 4357 4933 } … … 4364 4940 } 4365 4941 finally { 4942 if ( state.backtracking>0 ) { memoize(input, 41, entryRuleOptionalSequence_StartIndex); } 4366 4943 } 4367 4944 return current; … … 4371 4948 4372 4949 // $ANTLR start "ruleOptionalSequence" 4373 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:16 74:1: ruleOptionalSequence returns [EObject current=null] : (otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' ) ;4950 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1696:1: ruleOptionalSequence returns [EObject current=null] : (otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' ) ; 4374 4951 public final EObject ruleOptionalSequence() throws RecognitionException { 4375 4952 EObject current = null; 4376 4953 int ruleOptionalSequence_StartIndex = input.index(); 4377 4954 Token otherlv_0=null; 4378 4955 Token otherlv_2=null; … … 4383 4960 4384 4961 try { 4385 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1677:28: ( (otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' ) ) 4386 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1678:1: (otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' ) 4387 { 4388 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1678:1: (otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' ) 4389 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1678:3: otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' 4390 { 4391 otherlv_0=(Token)match(input,32,FOLLOW_32_in_ruleOptionalSequence3550); 4392 4393 newLeafNode(otherlv_0, grammarAccess.getOptionalSequenceAccess().getLeftSquareBracketKeyword_0()); 4394 4395 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1682:1: ( (lv_definitionList_1_0= ruleDefinitionList ) ) 4396 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1683:1: (lv_definitionList_1_0= ruleDefinitionList ) 4397 { 4398 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1683:1: (lv_definitionList_1_0= ruleDefinitionList ) 4399 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1684:3: lv_definitionList_1_0= ruleDefinitionList 4400 { 4401 4402 newCompositeNode(grammarAccess.getOptionalSequenceAccess().getDefinitionListDefinitionListParserRuleCall_1_0()); 4403 4404 pushFollow(FOLLOW_ruleDefinitionList_in_ruleOptionalSequence3571); 4962 if ( state.backtracking>0 && alreadyParsedRule(input, 42) ) { return current; } 4963 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1699:28: ( (otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' ) ) 4964 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1700:1: (otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' ) 4965 { 4966 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1700:1: (otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' ) 4967 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1700:3: otherlv_0= '[' ( (lv_definitionList_1_0= ruleDefinitionList ) ) otherlv_2= ']' 4968 { 4969 otherlv_0=(Token)match(input,32,FOLLOW_32_in_ruleOptionalSequence3579); if (state.failed) return current; 4970 if ( state.backtracking==0 ) { 4971 4972 newLeafNode(otherlv_0, grammarAccess.getOptionalSequenceAccess().getLeftSquareBracketKeyword_0()); 4973 4974 } 4975 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1704:1: ( (lv_definitionList_1_0= ruleDefinitionList ) ) 4976 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1705:1: (lv_definitionList_1_0= ruleDefinitionList ) 4977 { 4978 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1705:1: (lv_definitionList_1_0= ruleDefinitionList ) 4979 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1706:3: lv_definitionList_1_0= ruleDefinitionList 4980 { 4981 if ( state.backtracking==0 ) { 4982 4983 newCompositeNode(grammarAccess.getOptionalSequenceAccess().getDefinitionListDefinitionListParserRuleCall_1_0()); 4984 4985 } 4986 pushFollow(FOLLOW_ruleDefinitionList_in_ruleOptionalSequence3600); 4405 4987 lv_definitionList_1_0=ruleDefinitionList(); 4406 4988 4407 4989 state._fsp--; 4408 4409 4410 if (current==null) { 4411 current = createModelElementForParent(grammarAccess.getOptionalSequenceRule()); 4412 } 4413 add( 4414 current, 4415 "definitionList", 4416 lv_definitionList_1_0, 4417 "DefinitionList"); 4418 afterParserOrEnumRuleCall(); 4419 4420 4421 } 4422 4423 4424 } 4425 4426 otherlv_2=(Token)match(input,29,FOLLOW_29_in_ruleOptionalSequence3583); 4427 4428 newLeafNode(otherlv_2, grammarAccess.getOptionalSequenceAccess().getRightSquareBracketKeyword_2()); 4429 4430 4431 } 4432 4433 4434 } 4435 4436 leaveRule(); 4990 if (state.failed) return current; 4991 if ( state.backtracking==0 ) { 4992 4993 if (current==null) { 4994 current = createModelElementForParent(grammarAccess.getOptionalSequenceRule()); 4995 } 4996 add( 4997 current, 4998 "definitionList", 4999 lv_definitionList_1_0, 5000 "DefinitionList"); 5001 afterParserOrEnumRuleCall(); 5002 5003 } 5004 5005 } 5006 5007 5008 } 5009 5010 otherlv_2=(Token)match(input,29,FOLLOW_29_in_ruleOptionalSequence3612); if (state.failed) return current; 5011 if ( state.backtracking==0 ) { 5012 5013 newLeafNode(otherlv_2, grammarAccess.getOptionalSequenceAccess().getRightSquareBracketKeyword_2()); 5014 5015 } 5016 5017 } 5018 5019 5020 } 5021 5022 if ( state.backtracking==0 ) { 5023 leaveRule(); 5024 } 4437 5025 } 4438 5026 … … 4442 5030 } 4443 5031 finally { 5032 if ( state.backtracking>0 ) { memoize(input, 42, ruleOptionalSequence_StartIndex); } 4444 5033 } 4445 5034 return current; … … 4449 5038 4450 5039 // $ANTLR start "entryRuleRepeatedSequence" 4451 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:17 12:1: entryRuleRepeatedSequence returns [EObject current=null] : iv_ruleRepeatedSequence= ruleRepeatedSequence EOF ;5040 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1734:1: entryRuleRepeatedSequence returns [EObject current=null] : iv_ruleRepeatedSequence= ruleRepeatedSequence EOF ; 4452 5041 public final EObject entryRuleRepeatedSequence() throws RecognitionException { 4453 5042 EObject current = null; 4454 5043 int entryRuleRepeatedSequence_StartIndex = input.index(); 4455 5044 EObject iv_ruleRepeatedSequence = null; 4456 5045 4457 5046 4458 5047 try { 4459 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1713:2: (iv_ruleRepeatedSequence= ruleRepeatedSequence EOF ) 4460 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1714:2: iv_ruleRepeatedSequence= ruleRepeatedSequence EOF 4461 { 4462 newCompositeNode(grammarAccess.getRepeatedSequenceRule()); 4463 pushFollow(FOLLOW_ruleRepeatedSequence_in_entryRuleRepeatedSequence3619); 5048 if ( state.backtracking>0 && alreadyParsedRule(input, 43) ) { return current; } 5049 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1735:2: (iv_ruleRepeatedSequence= ruleRepeatedSequence EOF ) 5050 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1736:2: iv_ruleRepeatedSequence= ruleRepeatedSequence EOF 5051 { 5052 if ( state.backtracking==0 ) { 5053 newCompositeNode(grammarAccess.getRepeatedSequenceRule()); 5054 } 5055 pushFollow(FOLLOW_ruleRepeatedSequence_in_entryRuleRepeatedSequence3648); 4464 5056 iv_ruleRepeatedSequence=ruleRepeatedSequence(); 4465 5057 4466 5058 state._fsp--; 4467 4468 current =iv_ruleRepeatedSequence; 4469 match(input,EOF,FOLLOW_EOF_in_entryRuleRepeatedSequence3629); 5059 if (state.failed) return current; 5060 if ( state.backtracking==0 ) { 5061 current =iv_ruleRepeatedSequence; 5062 } 5063 match(input,EOF,FOLLOW_EOF_in_entryRuleRepeatedSequence3658); if (state.failed) return current; 4470 5064 4471 5065 } … … 4478 5072 } 4479 5073 finally { 5074 if ( state.backtracking>0 ) { memoize(input, 43, entryRuleRepeatedSequence_StartIndex); } 4480 5075 } 4481 5076 return current; … … 4485 5080 4486 5081 // $ANTLR start "ruleRepeatedSequence" 4487 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:17 21:1: ruleRepeatedSequence returns [EObject current=null] : (otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( (lv_morethanonce_3_0= '+' ) )?) ;5082 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1743:1: ruleRepeatedSequence returns [EObject current=null] : (otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( ( (lv_morethanonce_3_0= '+' ) )? | ( (lv_range_4_0= ruleRepeatRange ) )? ) ) ; 4488 5083 public final EObject ruleRepeatedSequence() throws RecognitionException { 4489 5084 EObject current = null; 4490 5085 int ruleRepeatedSequence_StartIndex = input.index(); 4491 5086 Token otherlv_0=null; 4492 5087 Token otherlv_2=null; … … 4494 5089 EObject lv_definitions_1_0 = null; 4495 5090 5091 EObject lv_range_4_0 = null; 5092 4496 5093 4497 5094 enterRule(); 4498 5095 4499 5096 try { 4500 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1724:28: ( (otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( (lv_morethanonce_3_0= '+' ) )? ) ) 4501 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1725:1: (otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( (lv_morethanonce_3_0= '+' ) )? ) 4502 { 4503 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1725:1: (otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( (lv_morethanonce_3_0= '+' ) )? ) 4504 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1725:3: otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( (lv_morethanonce_3_0= '+' ) )? 4505 { 4506 otherlv_0=(Token)match(input,33,FOLLOW_33_in_ruleRepeatedSequence3666); 4507 4508 newLeafNode(otherlv_0, grammarAccess.getRepeatedSequenceAccess().getLeftCurlyBracketKeyword_0()); 4509 4510 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1729:1: ( (lv_definitions_1_0= ruleDefinitionList ) ) 4511 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1730:1: (lv_definitions_1_0= ruleDefinitionList ) 4512 { 4513 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1730:1: (lv_definitions_1_0= ruleDefinitionList ) 4514 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1731:3: lv_definitions_1_0= ruleDefinitionList 4515 { 4516 4517 newCompositeNode(grammarAccess.getRepeatedSequenceAccess().getDefinitionsDefinitionListParserRuleCall_1_0()); 4518 4519 pushFollow(FOLLOW_ruleDefinitionList_in_ruleRepeatedSequence3687); 5097 if ( state.backtracking>0 && alreadyParsedRule(input, 44) ) { return current; } 5098 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1746:28: ( (otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( ( (lv_morethanonce_3_0= '+' ) )? | ( (lv_range_4_0= ruleRepeatRange ) )? ) ) ) 5099 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1747:1: (otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( ( (lv_morethanonce_3_0= '+' ) )? | ( (lv_range_4_0= ruleRepeatRange ) )? ) ) 5100 { 5101 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1747:1: (otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( ( (lv_morethanonce_3_0= '+' ) )? | ( (lv_range_4_0= ruleRepeatRange ) )? ) ) 5102 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1747:3: otherlv_0= '{' ( (lv_definitions_1_0= ruleDefinitionList ) ) otherlv_2= '}' ( ( (lv_morethanonce_3_0= '+' ) )? | ( (lv_range_4_0= ruleRepeatRange ) )? ) 5103 { 5104 otherlv_0=(Token)match(input,33,FOLLOW_33_in_ruleRepeatedSequence3695); if (state.failed) return current; 5105 if ( state.backtracking==0 ) { 5106 5107 newLeafNode(otherlv_0, grammarAccess.getRepeatedSequenceAccess().getLeftCurlyBracketKeyword_0()); 5108 5109 } 5110 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1751:1: ( (lv_definitions_1_0= ruleDefinitionList ) ) 5111 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1752:1: (lv_definitions_1_0= ruleDefinitionList ) 5112 { 5113 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1752:1: (lv_definitions_1_0= ruleDefinitionList ) 5114 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1753:3: lv_definitions_1_0= ruleDefinitionList 5115 { 5116 if ( state.backtracking==0 ) { 5117 5118 newCompositeNode(grammarAccess.getRepeatedSequenceAccess().getDefinitionsDefinitionListParserRuleCall_1_0()); 5119 5120 } 5121 pushFollow(FOLLOW_ruleDefinitionList_in_ruleRepeatedSequence3716); 4520 5122 lv_definitions_1_0=ruleDefinitionList(); 4521 5123 4522 5124 state._fsp--; 4523 4524 4525 if (current==null) { 4526 current = createModelElementForParent(grammarAccess.getRepeatedSequenceRule());4527 }4528 add(4529 current,4530 "definitions",4531 lv_definitions_1_0,4532 "DefinitionList");4533 afterParserOrEnumRuleCall();4534 4535 4536 } 4537 4538 4539 } 4540 4541 otherlv_2=(Token)match(input,30,FOLLOW_30_in_ruleRepeatedSequence3699);4542 4543 newLeafNode(otherlv_2, grammarAccess.getRepeatedSequenceAccess().getRightCurlyBracketKeyword_2());4544 4545 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1751:1: ( (lv_morethanonce_3_0= '+' ) )? 4546 int alt36=2;4547 int LA36_0 = input.LA(1);4548 4549 if ( (LA36_0==35) ) {4550 alt36=1;4551 }4552 switch (alt3 6) {5125 if (state.failed) return current; 5126 if ( state.backtracking==0 ) { 5127 5128 if (current==null) { 5129 current = createModelElementForParent(grammarAccess.getRepeatedSequenceRule()); 5130 } 5131 add( 5132 current, 5133 "definitions", 5134 lv_definitions_1_0, 5135 "DefinitionList"); 5136 afterParserOrEnumRuleCall(); 5137 5138 } 5139 5140 } 5141 5142 5143 } 5144 5145 otherlv_2=(Token)match(input,30,FOLLOW_30_in_ruleRepeatedSequence3728); if (state.failed) return current; 5146 if ( state.backtracking==0 ) { 5147 5148 newLeafNode(otherlv_2, grammarAccess.getRepeatedSequenceAccess().getRightCurlyBracketKeyword_2()); 5149 5150 } 5151 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1773:1: ( ( (lv_morethanonce_3_0= '+' ) )? | ( (lv_range_4_0= ruleRepeatRange ) )? ) 5152 int alt38=2; 5153 alt38 = dfa38.predict(input); 5154 switch (alt38) { 4553 5155 case 1 : 4554 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1752:1: (lv_morethanonce_3_0= '+' ) 4555 { 4556 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1752:1: (lv_morethanonce_3_0= '+' ) 4557 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1753:3: lv_morethanonce_3_0= '+' 4558 { 4559 lv_morethanonce_3_0=(Token)match(input,35,FOLLOW_35_in_ruleRepeatedSequence3717); 4560 4561 newLeafNode(lv_morethanonce_3_0, grammarAccess.getRepeatedSequenceAccess().getMorethanoncePlusSignKeyword_3_0()); 4562 4563 4564 if (current==null) { 4565 current = createModelElement(grammarAccess.getRepeatedSequenceRule()); 4566 } 4567 setWithLastConsumed(current, "morethanonce", true, "+"); 4568 5156 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1773:2: ( (lv_morethanonce_3_0= '+' ) )? 5157 { 5158 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1773:2: ( (lv_morethanonce_3_0= '+' ) )? 5159 int alt36=2; 5160 int LA36_0 = input.LA(1); 5161 5162 if ( (LA36_0==35) ) { 5163 alt36=1; 5164 } 5165 switch (alt36) { 5166 case 1 : 5167 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1774:1: (lv_morethanonce_3_0= '+' ) 5168 { 5169 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1774:1: (lv_morethanonce_3_0= '+' ) 5170 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1775:3: lv_morethanonce_3_0= '+' 5171 { 5172 lv_morethanonce_3_0=(Token)match(input,35,FOLLOW_35_in_ruleRepeatedSequence3747); if (state.failed) return current; 5173 if ( state.backtracking==0 ) { 5174 5175 newLeafNode(lv_morethanonce_3_0, grammarAccess.getRepeatedSequenceAccess().getMorethanoncePlusSignKeyword_3_0_0()); 5176 5177 } 5178 if ( state.backtracking==0 ) { 5179 5180 if (current==null) { 5181 current = createModelElement(grammarAccess.getRepeatedSequenceRule()); 5182 } 5183 setWithLastConsumed(current, "morethanonce", true, "+"); 5184 5185 } 5186 5187 } 5188 5189 5190 } 5191 break; 4569 5192 4570 5193 } … … 4573 5196 } 4574 5197 break; 4575 4576 } 4577 4578 4579 } 4580 4581 4582 } 4583 4584 leaveRule(); 5198 case 2 : 5199 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1789:6: ( (lv_range_4_0= ruleRepeatRange ) )? 5200 { 5201 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1789:6: ( (lv_range_4_0= ruleRepeatRange ) )? 5202 int alt37=2; 5203 int LA37_0 = input.LA(1); 5204 5205 if ( (LA37_0==40) ) { 5206 alt37=1; 5207 } 5208 switch (alt37) { 5209 case 1 : 5210 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1790:1: (lv_range_4_0= ruleRepeatRange ) 5211 { 5212 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1790:1: (lv_range_4_0= ruleRepeatRange ) 5213 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1791:3: lv_range_4_0= ruleRepeatRange 5214 { 5215 if ( state.backtracking==0 ) { 5216 5217 newCompositeNode(grammarAccess.getRepeatedSequenceAccess().getRangeRepeatRangeParserRuleCall_3_1_0()); 5218 5219 } 5220 pushFollow(FOLLOW_ruleRepeatRange_in_ruleRepeatedSequence3788); 5221 lv_range_4_0=ruleRepeatRange(); 5222 5223 state._fsp--; 5224 if (state.failed) return current; 5225 if ( state.backtracking==0 ) { 5226 5227 if (current==null) { 5228 current = createModelElementForParent(grammarAccess.getRepeatedSequenceRule()); 5229 } 5230 set( 5231 current, 5232 "range", 5233 lv_range_4_0, 5234 "RepeatRange"); 5235 afterParserOrEnumRuleCall(); 5236 5237 } 5238 5239 } 5240 5241 5242 } 5243 break; 5244 5245 } 5246 5247 5248 } 5249 break; 5250 5251 } 5252 5253 5254 } 5255 5256 5257 } 5258 5259 if ( state.backtracking==0 ) { 5260 leaveRule(); 5261 } 4585 5262 } 4586 5263 … … 4590 5267 } 4591 5268 finally { 5269 if ( state.backtracking>0 ) { memoize(input, 44, ruleRepeatedSequence_StartIndex); } 4592 5270 } 4593 5271 return current; … … 4595 5273 // $ANTLR end "ruleRepeatedSequence" 4596 5274 5275 5276 // $ANTLR start "entryRuleRepeatRange" 5277 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1815:1: entryRuleRepeatRange returns [EObject current=null] : iv_ruleRepeatRange= ruleRepeatRange EOF ; 5278 public final EObject entryRuleRepeatRange() throws RecognitionException { 5279 EObject current = null; 5280 int entryRuleRepeatRange_StartIndex = input.index(); 5281 EObject iv_ruleRepeatRange = null; 5282 5283 5284 try { 5285 if ( state.backtracking>0 && alreadyParsedRule(input, 45) ) { return current; } 5286 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1816:2: (iv_ruleRepeatRange= ruleRepeatRange EOF ) 5287 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1817:2: iv_ruleRepeatRange= ruleRepeatRange EOF 5288 { 5289 if ( state.backtracking==0 ) { 5290 newCompositeNode(grammarAccess.getRepeatRangeRule()); 5291 } 5292 pushFollow(FOLLOW_ruleRepeatRange_in_entryRuleRepeatRange3826); 5293 iv_ruleRepeatRange=ruleRepeatRange(); 5294 5295 state._fsp--; 5296 if (state.failed) return current; 5297 if ( state.backtracking==0 ) { 5298 current =iv_ruleRepeatRange; 5299 } 5300 match(input,EOF,FOLLOW_EOF_in_entryRuleRepeatRange3836); if (state.failed) return current; 5301 5302 } 5303 5304 } 5305 5306 catch (RecognitionException re) { 5307 recover(input,re); 5308 appendSkippedTokens(); 5309 } 5310 finally { 5311 if ( state.backtracking>0 ) { memoize(input, 45, entryRuleRepeatRange_StartIndex); } 5312 } 5313 return current; 5314 } 5315 // $ANTLR end "entryRuleRepeatRange" 5316 5317 5318 // $ANTLR start "ruleRepeatRange" 5319 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1824:1: ruleRepeatRange returns [EObject current=null] : (otherlv_0= '#' otherlv_1= '(' ( (lv_from_2_0= RULE_INT ) ) otherlv_3= ',' ( (lv_to_4_0= RULE_INT ) ) otherlv_5= ')' ) ; 5320 public final EObject ruleRepeatRange() throws RecognitionException { 5321 EObject current = null; 5322 int ruleRepeatRange_StartIndex = input.index(); 5323 Token otherlv_0=null; 5324 Token otherlv_1=null; 5325 Token lv_from_2_0=null; 5326 Token otherlv_3=null; 5327 Token lv_to_4_0=null; 5328 Token otherlv_5=null; 5329 5330 enterRule(); 5331 5332 try { 5333 if ( state.backtracking>0 && alreadyParsedRule(input, 46) ) { return current; } 5334 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1827:28: ( (otherlv_0= '#' otherlv_1= '(' ( (lv_from_2_0= RULE_INT ) ) otherlv_3= ',' ( (lv_to_4_0= RULE_INT ) ) otherlv_5= ')' ) ) 5335 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1828:1: (otherlv_0= '#' otherlv_1= '(' ( (lv_from_2_0= RULE_INT ) ) otherlv_3= ',' ( (lv_to_4_0= RULE_INT ) ) otherlv_5= ')' ) 5336 { 5337 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1828:1: (otherlv_0= '#' otherlv_1= '(' ( (lv_from_2_0= RULE_INT ) ) otherlv_3= ',' ( (lv_to_4_0= RULE_INT ) ) otherlv_5= ')' ) 5338 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1828:3: otherlv_0= '#' otherlv_1= '(' ( (lv_from_2_0= RULE_INT ) ) otherlv_3= ',' ( (lv_to_4_0= RULE_INT ) ) otherlv_5= ')' 5339 { 5340 otherlv_0=(Token)match(input,40,FOLLOW_40_in_ruleRepeatRange3873); if (state.failed) return current; 5341 if ( state.backtracking==0 ) { 5342 5343 newLeafNode(otherlv_0, grammarAccess.getRepeatRangeAccess().getNumberSignKeyword_0()); 5344 5345 } 5346 otherlv_1=(Token)match(input,26,FOLLOW_26_in_ruleRepeatRange3885); if (state.failed) return current; 5347 if ( state.backtracking==0 ) { 5348 5349 newLeafNode(otherlv_1, grammarAccess.getRepeatRangeAccess().getLeftParenthesisKeyword_1()); 5350 5351 } 5352 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1836:1: ( (lv_from_2_0= RULE_INT ) ) 5353 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1837:1: (lv_from_2_0= RULE_INT ) 5354 { 5355 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1837:1: (lv_from_2_0= RULE_INT ) 5356 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1838:3: lv_from_2_0= RULE_INT 5357 { 5358 lv_from_2_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleRepeatRange3902); if (state.failed) return current; 5359 if ( state.backtracking==0 ) { 5360 5361 newLeafNode(lv_from_2_0, grammarAccess.getRepeatRangeAccess().getFromINTTerminalRuleCall_2_0()); 5362 5363 } 5364 if ( state.backtracking==0 ) { 5365 5366 if (current==null) { 5367 current = createModelElement(grammarAccess.getRepeatRangeRule()); 5368 } 5369 setWithLastConsumed( 5370 current, 5371 "from", 5372 lv_from_2_0, 5373 "INT"); 5374 5375 } 5376 5377 } 5378 5379 5380 } 5381 5382 otherlv_3=(Token)match(input,41,FOLLOW_41_in_ruleRepeatRange3919); if (state.failed) return current; 5383 if ( state.backtracking==0 ) { 5384 5385 newLeafNode(otherlv_3, grammarAccess.getRepeatRangeAccess().getCommaKeyword_3()); 5386 5387 } 5388 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1858:1: ( (lv_to_4_0= RULE_INT ) ) 5389 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1859:1: (lv_to_4_0= RULE_INT ) 5390 { 5391 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1859:1: (lv_to_4_0= RULE_INT ) 5392 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1860:3: lv_to_4_0= RULE_INT 5393 { 5394 lv_to_4_0=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleRepeatRange3936); if (state.failed) return current; 5395 if ( state.backtracking==0 ) { 5396 5397 newLeafNode(lv_to_4_0, grammarAccess.getRepeatRangeAccess().getToINTTerminalRuleCall_4_0()); 5398 5399 } 5400 if ( state.backtracking==0 ) { 5401 5402 if (current==null) { 5403 current = createModelElement(grammarAccess.getRepeatRangeRule()); 5404 } 5405 setWithLastConsumed( 5406 current, 5407 "to", 5408 lv_to_4_0, 5409 "INT"); 5410 5411 } 5412 5413 } 5414 5415 5416 } 5417 5418 otherlv_5=(Token)match(input,27,FOLLOW_27_in_ruleRepeatRange3953); if (state.failed) return current; 5419 if ( state.backtracking==0 ) { 5420 5421 newLeafNode(otherlv_5, grammarAccess.getRepeatRangeAccess().getRightParenthesisKeyword_5()); 5422 5423 } 5424 5425 } 5426 5427 5428 } 5429 5430 if ( state.backtracking==0 ) { 5431 leaveRule(); 5432 } 5433 } 5434 5435 catch (RecognitionException re) { 5436 recover(input,re); 5437 appendSkippedTokens(); 5438 } 5439 finally { 5440 if ( state.backtracking>0 ) { memoize(input, 46, ruleRepeatRange_StartIndex); } 5441 } 5442 return current; 5443 } 5444 // $ANTLR end "ruleRepeatRange" 5445 5446 // $ANTLR start synpred52_InternalEbnf 5447 public final void synpred52_InternalEbnf_fragment() throws RecognitionException { 5448 Token lv_morethanonce_3_0=null; 5449 5450 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1773:2: ( ( (lv_morethanonce_3_0= '+' ) )? ) 5451 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1773:2: ( (lv_morethanonce_3_0= '+' ) )? 5452 { 5453 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1773:2: ( (lv_morethanonce_3_0= '+' ) )? 5454 int alt47=2; 5455 int LA47_0 = input.LA(1); 5456 5457 if ( (LA47_0==35) ) { 5458 alt47=1; 5459 } 5460 switch (alt47) { 5461 case 1 : 5462 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1774:1: (lv_morethanonce_3_0= '+' ) 5463 { 5464 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1774:1: (lv_morethanonce_3_0= '+' ) 5465 // ../de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/parser/antlr/internal/InternalEbnf.g:1775:3: lv_morethanonce_3_0= '+' 5466 { 5467 lv_morethanonce_3_0=(Token)match(input,35,FOLLOW_35_in_synpred52_InternalEbnf3747); if (state.failed) return ; 5468 5469 } 5470 5471 5472 } 5473 break; 5474 5475 } 5476 5477 5478 } 5479 } 5480 // $ANTLR end synpred52_InternalEbnf 5481 4597 5482 // Delegated rules 4598 5483 5484 public final boolean synpred52_InternalEbnf() { 5485 state.backtracking++; 5486 int start = input.mark(); 5487 try { 5488 synpred52_InternalEbnf_fragment(); // can never throw exception 5489 } catch (RecognitionException re) { 5490 System.err.println("impossible: "+re); 5491 } 5492 boolean success = !state.failed; 5493 input.rewind(start); 5494 state.backtracking--; 5495 state.failed=false; 5496 return success; 5497 } 5498 4599 5499 4600 5500 protected DFA22 dfa22 = new DFA22(this); 5501 protected DFA38 dfa38 = new DFA38(this); 4601 5502 static final String DFA22_eotS = 4602 5503 "\17\uffff"; … … 4662 5563 } 4663 5564 public String getDescription() { 4664 return "()* loopback of 880:1: ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )*"; 5565 return "()* loopback of 890:1: ( ( (lv_elements_8_0= ruleAtom ) ) | otherlv_9= ')' | otherlv_10= ']' | otherlv_11= '}' | otherlv_12= '|' | otherlv_13= '(' | otherlv_14= '[' | otherlv_15= '{' | otherlv_16= '*' | otherlv_17= '+' )*"; 5566 } 5567 } 5568 static final String DFA38_eotS = 5569 "\21\uffff"; 5570 static final String DFA38_eofS = 5571 "\1\4\20\uffff"; 5572 static final String DFA38_minS = 5573 "\1\4\1\uffff\16\0\1\uffff"; 5574 static final String DFA38_maxS = 5575 "\1\50\1\uffff\16\0\1\uffff"; 5576 static final String DFA38_acceptS = 5577 "\1\uffff\1\1\16\uffff\1\2"; 5578 static final String DFA38_specialS = 5579 "\2\uffff\1\0\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\10\1\11\1\12\1\13\1\14"+ 5580 "\1\15\1\uffff}>"; 5581 static final String[] DFA38_transitionS = { 5582 "\1\7\1\5\1\13\1\6\1\uffff\1\14\5\uffff\1\3\12\uffff\1\15\1\10"+ 5583 "\1\uffff\1\11\1\12\1\2\1\16\1\17\1\uffff\1\1\4\uffff\1\20", 5584 "", 5585 "\1\uffff", 5586 "\1\uffff", 5587 "\1\uffff", 5588 "\1\uffff", 5589 "\1\uffff", 5590 "\1\uffff", 5591 "\1\uffff", 5592 "\1\uffff", 5593 "\1\uffff", 5594 "\1\uffff", 5595 "\1\uffff", 5596 "\1\uffff", 5597 "\1\uffff", 5598 "\1\uffff", 5599 "" 5600 }; 5601 5602 static final short[] DFA38_eot = DFA.unpackEncodedString(DFA38_eotS); 5603 static final short[] DFA38_eof = DFA.unpackEncodedString(DFA38_eofS); 5604 static final char[] DFA38_min = DFA.unpackEncodedStringToUnsignedChars(DFA38_minS); 5605 static final char[] DFA38_max = DFA.unpackEncodedStringToUnsignedChars(DFA38_maxS); 5606 static final short[] DFA38_accept = DFA.unpackEncodedString(DFA38_acceptS); 5607 static final short[] DFA38_special = DFA.unpackEncodedString(DFA38_specialS); 5608 static final short[][] DFA38_transition; 5609 5610 static { 5611 int numStates = DFA38_transitionS.length; 5612 DFA38_transition = new short[numStates][]; 5613 for (int i=0; i<numStates; i++) { 5614 DFA38_transition[i] = DFA.unpackEncodedString(DFA38_transitionS[i]); 5615 } 5616 } 5617 5618 class DFA38 extends DFA { 5619 5620 public DFA38(BaseRecognizer recognizer) { 5621 this.recognizer = recognizer; 5622 this.decisionNumber = 38; 5623 this.eot = DFA38_eot; 5624 this.eof = DFA38_eof; 5625 this.min = DFA38_min; 5626 this.max = DFA38_max; 5627 this.accept = DFA38_accept; 5628 this.special = DFA38_special; 5629 this.transition = DFA38_transition; 5630 } 5631 public String getDescription() { 5632 return "1773:1: ( ( (lv_morethanonce_3_0= '+' ) )? | ( (lv_range_4_0= ruleRepeatRange ) )? )"; 5633 } 5634 public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { 5635 TokenStream input = (TokenStream)_input; 5636 int _s = s; 5637 switch ( s ) { 5638 case 0 : 5639 int LA38_2 = input.LA(1); 5640 5641 5642 int index38_2 = input.index(); 5643 input.rewind(); 5644 s = -1; 5645 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5646 5647 else if ( (true) ) {s = 16;} 5648 5649 5650 input.seek(index38_2); 5651 if ( s>=0 ) return s; 5652 break; 5653 case 1 : 5654 int LA38_3 = input.LA(1); 5655 5656 5657 int index38_3 = input.index(); 5658 input.rewind(); 5659 s = -1; 5660 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5661 5662 else if ( (true) ) {s = 16;} 5663 5664 5665 input.seek(index38_3); 5666 if ( s>=0 ) return s; 5667 break; 5668 case 2 : 5669 int LA38_4 = input.LA(1); 5670 5671 5672 int index38_4 = input.index(); 5673 input.rewind(); 5674 s = -1; 5675 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5676 5677 else if ( (true) ) {s = 16;} 5678 5679 5680 input.seek(index38_4); 5681 if ( s>=0 ) return s; 5682 break; 5683 case 3 : 5684 int LA38_5 = input.LA(1); 5685 5686 5687 int index38_5 = input.index(); 5688 input.rewind(); 5689 s = -1; 5690 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5691 5692 else if ( (true) ) {s = 16;} 5693 5694 5695 input.seek(index38_5); 5696 if ( s>=0 ) return s; 5697 break; 5698 case 4 : 5699 int LA38_6 = input.LA(1); 5700 5701 5702 int index38_6 = input.index(); 5703 input.rewind(); 5704 s = -1; 5705 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5706 5707 else if ( (true) ) {s = 16;} 5708 5709 5710 input.seek(index38_6); 5711 if ( s>=0 ) return s; 5712 break; 5713 case 5 : 5714 int LA38_7 = input.LA(1); 5715 5716 5717 int index38_7 = input.index(); 5718 input.rewind(); 5719 s = -1; 5720 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5721 5722 else if ( (true) ) {s = 16;} 5723 5724 5725 input.seek(index38_7); 5726 if ( s>=0 ) return s; 5727 break; 5728 case 6 : 5729 int LA38_8 = input.LA(1); 5730 5731 5732 int index38_8 = input.index(); 5733 input.rewind(); 5734 s = -1; 5735 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5736 5737 else if ( (true) ) {s = 16;} 5738 5739 5740 input.seek(index38_8); 5741 if ( s>=0 ) return s; 5742 break; 5743 case 7 : 5744 int LA38_9 = input.LA(1); 5745 5746 5747 int index38_9 = input.index(); 5748 input.rewind(); 5749 s = -1; 5750 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5751 5752 else if ( (true) ) {s = 16;} 5753 5754 5755 input.seek(index38_9); 5756 if ( s>=0 ) return s; 5757 break; 5758 case 8 : 5759 int LA38_10 = input.LA(1); 5760 5761 5762 int index38_10 = input.index(); 5763 input.rewind(); 5764 s = -1; 5765 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5766 5767 else if ( (true) ) {s = 16;} 5768 5769 5770 input.seek(index38_10); 5771 if ( s>=0 ) return s; 5772 break; 5773 case 9 : 5774 int LA38_11 = input.LA(1); 5775 5776 5777 int index38_11 = input.index(); 5778 input.rewind(); 5779 s = -1; 5780 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5781 5782 else if ( (true) ) {s = 16;} 5783 5784 5785 input.seek(index38_11); 5786 if ( s>=0 ) return s; 5787 break; 5788 case 10 : 5789 int LA38_12 = input.LA(1); 5790 5791 5792 int index38_12 = input.index(); 5793 input.rewind(); 5794 s = -1; 5795 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5796 5797 else if ( (true) ) {s = 16;} 5798 5799 5800 input.seek(index38_12); 5801 if ( s>=0 ) return s; 5802 break; 5803 case 11 : 5804 int LA38_13 = input.LA(1); 5805 5806 5807 int index38_13 = input.index(); 5808 input.rewind(); 5809 s = -1; 5810 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5811 5812 else if ( (true) ) {s = 16;} 5813 5814 5815 input.seek(index38_13); 5816 if ( s>=0 ) return s; 5817 break; 5818 case 12 : 5819 int LA38_14 = input.LA(1); 5820 5821 5822 int index38_14 = input.index(); 5823 input.rewind(); 5824 s = -1; 5825 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5826 5827 else if ( (true) ) {s = 16;} 5828 5829 5830 input.seek(index38_14); 5831 if ( s>=0 ) return s; 5832 break; 5833 case 13 : 5834 int LA38_15 = input.LA(1); 5835 5836 5837 int index38_15 = input.index(); 5838 input.rewind(); 5839 s = -1; 5840 if ( (synpred52_InternalEbnf()) ) {s = 1;} 5841 5842 else if ( (true) ) {s = 16;} 5843 5844 5845 input.seek(index38_15); 5846 if ( s>=0 ) return s; 5847 break; 5848 } 5849 if (state.backtracking>0) {state.failed=true; return -1;} 5850 NoViableAltException nvae = 5851 new NoViableAltException(getDescription(), 38, _s, input); 5852 error(nvae); 5853 throw nvae; 4665 5854 } 4666 5855 } 4667 5856 4668 5857 4669 public static final BitSet FOLLOW_ruleEtsiBnf_in_entryRuleEtsiBnf75 = new BitSet(new long[]{0x0000000000000000L}); 4670 public static final BitSet FOLLOW_EOF_in_entryRuleEtsiBnf85 = new BitSet(new long[]{0x0000000000000002L}); 4671 public static final BitSet FOLLOW_13_in_ruleEtsiBnf123 = new BitSet(new long[]{0x0000000000000010L}); 4672 public static final BitSet FOLLOW_RULE_ID_in_ruleEtsiBnf140 = new BitSet(new long[]{0x000000000000C000L}); 4673 public static final BitSet FOLLOW_14_in_ruleEtsiBnf164 = new BitSet(new long[]{0x0000000000008000L}); 4674 public static final BitSet FOLLOW_15_in_ruleEtsiBnf190 = new BitSet(new long[]{0x00000000000400B0L}); 4675 public static final BitSet FOLLOW_ruleImportSection_in_ruleEtsiBnf211 = new BitSet(new long[]{0x00000000000400B0L}); 4676 public static final BitSet FOLLOW_ruleBnfEntry_in_ruleEtsiBnf233 = new BitSet(new long[]{0x00000000000400B2L}); 4677 public static final BitSet FOLLOW_16_in_ruleEtsiBnf261 = new BitSet(new long[]{0x0000000000008000L}); 4678 public static final BitSet FOLLOW_15_in_ruleEtsiBnf286 = new BitSet(new long[]{0x00000000000400B2L}); 4679 public static final BitSet FOLLOW_ruleImportSection_in_ruleEtsiBnf307 = new BitSet(new long[]{0x00000000000400B2L}); 4680 public static final BitSet FOLLOW_ruleDeltaEntry_in_ruleEtsiBnf329 = new BitSet(new long[]{0x00000000000400B2L}); 4681 public static final BitSet FOLLOW_17_in_ruleEtsiBnf356 = new BitSet(new long[]{0x0000000000008000L}); 4682 public static final BitSet FOLLOW_15_in_ruleEtsiBnf381 = new BitSet(new long[]{0x000000D000040022L}); 4683 public static final BitSet FOLLOW_ruleImportSection_in_ruleEtsiBnf402 = new BitSet(new long[]{0x000000D000000022L}); 4684 public static final BitSet FOLLOW_ruleMergeEntry_in_ruleEtsiBnf424 = new BitSet(new long[]{0x000000D000000022L}); 4685 public static final BitSet FOLLOW_ruleImportSection_in_entryRuleImportSection462 = new BitSet(new long[]{0x0000000000000000L}); 4686 public static final BitSet FOLLOW_EOF_in_entryRuleImportSection472 = new BitSet(new long[]{0x0000000000000002L}); 4687 public static final BitSet FOLLOW_ruleImport_in_ruleImportSection517 = new BitSet(new long[]{0x0000000000040002L}); 4688 public static final BitSet FOLLOW_ruleBnfEntry_in_entryRuleBnfEntry553 = new BitSet(new long[]{0x0000000000000000L}); 4689 public static final BitSet FOLLOW_EOF_in_entryRuleBnfEntry563 = new BitSet(new long[]{0x0000000000000002L}); 4690 public static final BitSet FOLLOW_ruleSectionHeading_in_ruleBnfEntry609 = new BitSet(new long[]{0x0000000000000002L}); 4691 public static final BitSet FOLLOW_ruleRule_in_ruleBnfEntry636 = new BitSet(new long[]{0x0000000000000002L}); 4692 public static final BitSet FOLLOW_ruleDeltaEntry_in_entryRuleDeltaEntry672 = new BitSet(new long[]{0x0000000000000000L}); 4693 public static final BitSet FOLLOW_EOF_in_entryRuleDeltaEntry682 = new BitSet(new long[]{0x0000000000000002L}); 4694 public static final BitSet FOLLOW_ruleRule_in_ruleDeltaEntry728 = new BitSet(new long[]{0x0000000000000002L}); 4695 public static final BitSet FOLLOW_ruleSectionHeading_in_ruleDeltaEntry755 = new BitSet(new long[]{0x0000000000000002L}); 4696 public static final BitSet FOLLOW_ruleExtRule_in_ruleDeltaEntry782 = new BitSet(new long[]{0x0000000000000002L}); 4697 public static final BitSet FOLLOW_ruleMergeEntry_in_entryRuleMergeEntry818 = new BitSet(new long[]{0x0000000000000000L}); 4698 public static final BitSet FOLLOW_EOF_in_entryRuleMergeEntry828 = new BitSet(new long[]{0x0000000000000002L}); 4699 public static final BitSet FOLLOW_ruleSectionHeading_in_ruleMergeEntry874 = new BitSet(new long[]{0x0000000000000002L}); 4700 public static final BitSet FOLLOW_ruleMergeRule_in_ruleMergeEntry901 = new BitSet(new long[]{0x0000000000000002L}); 4701 public static final BitSet FOLLOW_ruleSectionHeading_in_entryRuleSectionHeading937 = new BitSet(new long[]{0x0000000000000000L}); 4702 public static final BitSet FOLLOW_EOF_in_entryRuleSectionHeading947 = new BitSet(new long[]{0x0000000000000002L}); 4703 public static final BitSet FOLLOW_RULE_SECTIONHEADER_in_ruleSectionHeading998 = new BitSet(new long[]{0x0000000000000002L}); 4704 public static final BitSet FOLLOW_ruleImport_in_entryRuleImport1039 = new BitSet(new long[]{0x0000000000000000L}); 4705 public static final BitSet FOLLOW_EOF_in_entryRuleImport1049 = new BitSet(new long[]{0x0000000000000002L}); 4706 public static final BitSet FOLLOW_18_in_ruleImport1086 = new BitSet(new long[]{0x0000000000000040L}); 4707 public static final BitSet FOLLOW_RULE_STRING_in_ruleImport1103 = new BitSet(new long[]{0x0000000000888000L}); 4708 public static final BitSet FOLLOW_19_in_ruleImport1121 = new BitSet(new long[]{0x0000000000700000L}); 4709 public static final BitSet FOLLOW_20_in_ruleImport1140 = new BitSet(new long[]{0x0000000000808000L}); 4710 public static final BitSet FOLLOW_21_in_ruleImport1177 = new BitSet(new long[]{0x0000000000808000L}); 4711 public static final BitSet FOLLOW_22_in_ruleImport1214 = new BitSet(new long[]{0x0000000000808000L}); 4712 public static final BitSet FOLLOW_23_in_ruleImport1243 = new BitSet(new long[]{0x0000000000000010L}); 4713 public static final BitSet FOLLOW_RULE_ID_in_ruleImport1260 = new BitSet(new long[]{0x0000000000008000L}); 4714 public static final BitSet FOLLOW_15_in_ruleImport1279 = new BitSet(new long[]{0x0000000000000002L}); 4715 public static final BitSet FOLLOW_ruleRule_in_entryRuleRule1315 = new BitSet(new long[]{0x0000000000000000L}); 4716 public static final BitSet FOLLOW_EOF_in_entryRuleRule1325 = new BitSet(new long[]{0x0000000000000002L}); 4717 public static final BitSet FOLLOW_RULE_INT_in_ruleRule1368 = new BitSet(new long[]{0x0000000001000010L}); 4718 public static final BitSet FOLLOW_RULE_ID_in_ruleRule1390 = new BitSet(new long[]{0x0000000001000000L}); 4719 public static final BitSet FOLLOW_24_in_ruleRule1408 = new BitSet(new long[]{0x0000000000000010L}); 4720 public static final BitSet FOLLOW_RULE_ID_in_ruleRule1427 = new BitSet(new long[]{0x0000000002000000L}); 4721 public static final BitSet FOLLOW_25_in_ruleRule1444 = new BitSet(new long[]{0x0000000304008252L}); 4722 public static final BitSet FOLLOW_ruleDefinitionList_in_ruleRule1465 = new BitSet(new long[]{0x0000000000008002L}); 4723 public static final BitSet FOLLOW_15_in_ruleRule1479 = new BitSet(new long[]{0x0000000000000002L}); 4724 public static final BitSet FOLLOW_ruleExtRule_in_entryRuleExtRule1517 = new BitSet(new long[]{0x0000000000000000L}); 4725 public static final BitSet FOLLOW_EOF_in_entryRuleExtRule1527 = new BitSet(new long[]{0x0000000000000002L}); 4726 public static final BitSet FOLLOW_RULE_INT_in_ruleExtRule1570 = new BitSet(new long[]{0x0000000001000010L}); 4727 public static final BitSet FOLLOW_RULE_ID_in_ruleExtRule1592 = new BitSet(new long[]{0x0000000001000000L}); 4728 public static final BitSet FOLLOW_24_in_ruleExtRule1610 = new BitSet(new long[]{0x0000000000000010L}); 4729 public static final BitSet FOLLOW_RULE_ID_in_ruleExtRule1629 = new BitSet(new long[]{0x0000000004000000L}); 4730 public static final BitSet FOLLOW_26_in_ruleExtRule1647 = new BitSet(new long[]{0x0000000000000080L}); 4731 public static final BitSet FOLLOW_RULE_INT_in_ruleExtRule1664 = new BitSet(new long[]{0x0000000008000000L}); 4732 public static final BitSet FOLLOW_27_in_ruleExtRule1681 = new BitSet(new long[]{0x0000000010000000L}); 4733 public static final BitSet FOLLOW_28_in_ruleExtRule1694 = new BitSet(new long[]{0x0000000FEC008252L}); 4734 public static final BitSet FOLLOW_ruleAtom_in_ruleExtRule1716 = new BitSet(new long[]{0x0000000FEC008252L}); 4735 public static final BitSet FOLLOW_27_in_ruleExtRule1734 = new BitSet(new long[]{0x0000000FEC008252L}); 4736 public static final BitSet FOLLOW_29_in_ruleExtRule1752 = new BitSet(new long[]{0x0000000FEC008252L}); 4737 public static final BitSet FOLLOW_30_in_ruleExtRule1770 = new BitSet(new long[]{0x0000000FEC008252L}); 4738 public static final BitSet FOLLOW_31_in_ruleExtRule1788 = new BitSet(new long[]{0x0000000FEC008252L}); 4739 public static final BitSet FOLLOW_26_in_ruleExtRule1806 = new BitSet(new long[]{0x0000000FEC008252L}); 4740 public static final BitSet FOLLOW_32_in_ruleExtRule1824 = new BitSet(new long[]{0x0000000FEC008252L}); 4741 public static final BitSet FOLLOW_33_in_ruleExtRule1842 = new BitSet(new long[]{0x0000000FEC008252L}); 4742 public static final BitSet FOLLOW_34_in_ruleExtRule1860 = new BitSet(new long[]{0x0000000FEC008252L}); 4743 public static final BitSet FOLLOW_35_in_ruleExtRule1878 = new BitSet(new long[]{0x0000000FEC008252L}); 4744 public static final BitSet FOLLOW_15_in_ruleExtRule1893 = new BitSet(new long[]{0x0000000000000002L}); 4745 public static final BitSet FOLLOW_ruleMergeRule_in_entryRuleMergeRule1931 = new BitSet(new long[]{0x0000000000000000L}); 4746 public static final BitSet FOLLOW_EOF_in_entryRuleMergeRule1941 = new BitSet(new long[]{0x0000000000000002L}); 4747 public static final BitSet FOLLOW_ruleGlobalCombinator_in_ruleMergeRule1988 = new BitSet(new long[]{0x0000000000000002L}); 4748 public static final BitSet FOLLOW_ruleRuleCombinator_in_ruleMergeRule2015 = new BitSet(new long[]{0x0000000000000002L}); 4749 public static final BitSet FOLLOW_ruleHookCombinator_in_ruleMergeRule2042 = new BitSet(new long[]{0x0000000000000002L}); 4750 public static final BitSet FOLLOW_ruleGlobalCombinator_in_entryRuleGlobalCombinator2077 = new BitSet(new long[]{0x0000000000000000L}); 4751 public static final BitSet FOLLOW_EOF_in_entryRuleGlobalCombinator2087 = new BitSet(new long[]{0x0000000000000002L}); 4752 public static final BitSet FOLLOW_36_in_ruleGlobalCombinator2125 = new BitSet(new long[]{0x0000002000000000L}); 4753 public static final BitSet FOLLOW_37_in_ruleGlobalCombinator2137 = new BitSet(new long[]{0x0000000000000100L}); 4754 public static final BitSet FOLLOW_RULE_LOGIC_in_ruleGlobalCombinator2155 = new BitSet(new long[]{0x0000000000008002L}); 4755 public static final BitSet FOLLOW_15_in_ruleGlobalCombinator2173 = new BitSet(new long[]{0x0000000000000002L}); 4756 public static final BitSet FOLLOW_ruleRuleCombinator_in_entryRuleRuleCombinator2211 = new BitSet(new long[]{0x0000000000000000L}); 4757 public static final BitSet FOLLOW_EOF_in_entryRuleRuleCombinator2221 = new BitSet(new long[]{0x0000000000000002L}); 4758 public static final BitSet FOLLOW_38_in_ruleRuleCombinator2259 = new BitSet(new long[]{0x0000002000000000L}); 4759 public static final BitSet FOLLOW_37_in_ruleRuleCombinator2271 = new BitSet(new long[]{0x0000000000000010L}); 4760 public static final BitSet FOLLOW_RULE_ID_in_ruleRuleCombinator2288 = new BitSet(new long[]{0x0000000000000100L}); 4761 public static final BitSet FOLLOW_RULE_LOGIC_in_ruleRuleCombinator2311 = new BitSet(new long[]{0x0000000004008002L}); 4762 public static final BitSet FOLLOW_26_in_ruleRuleCombinator2329 = new BitSet(new long[]{0x0000000000000040L}); 4763 public static final BitSet FOLLOW_RULE_STRING_in_ruleRuleCombinator2346 = new BitSet(new long[]{0x0000000008000000L}); 4764 public static final BitSet FOLLOW_27_in_ruleRuleCombinator2363 = new BitSet(new long[]{0x0000000004008002L}); 4765 public static final BitSet FOLLOW_15_in_ruleRuleCombinator2378 = new BitSet(new long[]{0x0000000000000002L}); 4766 public static final BitSet FOLLOW_ruleHookCombinator_in_entryRuleHookCombinator2416 = new BitSet(new long[]{0x0000000000000000L}); 4767 public static final BitSet FOLLOW_EOF_in_entryRuleHookCombinator2426 = new BitSet(new long[]{0x0000000000000002L}); 4768 public static final BitSet FOLLOW_39_in_ruleHookCombinator2463 = new BitSet(new long[]{0x0000002000000000L}); 4769 public static final BitSet FOLLOW_37_in_ruleHookCombinator2475 = new BitSet(new long[]{0x0000000000000010L}); 4770 public static final BitSet FOLLOW_RULE_ID_in_ruleHookCombinator2492 = new BitSet(new long[]{0x0000000004000000L}); 4771 public static final BitSet FOLLOW_26_in_ruleHookCombinator2509 = new BitSet(new long[]{0x0000000000000080L}); 4772 public static final BitSet FOLLOW_RULE_INT_in_ruleHookCombinator2526 = new BitSet(new long[]{0x0000000008000000L}); 4773 public static final BitSet FOLLOW_27_in_ruleHookCombinator2543 = new BitSet(new long[]{0x0000000004000100L}); 4774 public static final BitSet FOLLOW_RULE_LOGIC_in_ruleHookCombinator2560 = new BitSet(new long[]{0x0000000004000000L}); 4775 public static final BitSet FOLLOW_26_in_ruleHookCombinator2579 = new BitSet(new long[]{0x0000000000000040L}); 4776 public static final BitSet FOLLOW_RULE_STRING_in_ruleHookCombinator2596 = new BitSet(new long[]{0x0000000008000000L}); 4777 public static final BitSet FOLLOW_27_in_ruleHookCombinator2613 = new BitSet(new long[]{0x0000000004008002L}); 4778 public static final BitSet FOLLOW_15_in_ruleHookCombinator2628 = new BitSet(new long[]{0x0000000000000002L}); 4779 public static final BitSet FOLLOW_ruleDefinitionList_in_entryRuleDefinitionList2666 = new BitSet(new long[]{0x0000000000000000L}); 4780 public static final BitSet FOLLOW_EOF_in_entryRuleDefinitionList2676 = new BitSet(new long[]{0x0000000000000002L}); 4781 public static final BitSet FOLLOW_ruleSingleDefinition_in_ruleDefinitionList2722 = new BitSet(new long[]{0x0000000080000002L}); 4782 public static final BitSet FOLLOW_31_in_ruleDefinitionList2735 = new BitSet(new long[]{0x0000000304000250L}); 4783 public static final BitSet FOLLOW_ruleSingleDefinition_in_ruleDefinitionList2756 = new BitSet(new long[]{0x0000000080000002L}); 4784 public static final BitSet FOLLOW_ruleSingleDefinition_in_entryRuleSingleDefinition2794 = new BitSet(new long[]{0x0000000000000000L}); 4785 public static final BitSet FOLLOW_EOF_in_entryRuleSingleDefinition2804 = new BitSet(new long[]{0x0000000000000002L}); 4786 public static final BitSet FOLLOW_ruleTerm_in_ruleSingleDefinition2849 = new BitSet(new long[]{0x0000000304000252L}); 4787 public static final BitSet FOLLOW_ruleTerm_in_entryRuleTerm2885 = new BitSet(new long[]{0x0000000000000000L}); 4788 public static final BitSet FOLLOW_EOF_in_entryRuleTerm2895 = new BitSet(new long[]{0x0000000000000002L}); 4789 public static final BitSet FOLLOW_ruleAtom_in_ruleTerm2941 = new BitSet(new long[]{0x0000000000000002L}); 4790 public static final BitSet FOLLOW_ruleGroupedSequence_in_ruleTerm2968 = new BitSet(new long[]{0x0000000000000002L}); 4791 public static final BitSet FOLLOW_ruleOptionalSequence_in_ruleTerm2995 = new BitSet(new long[]{0x0000000000000002L}); 4792 public static final BitSet FOLLOW_ruleRepeatedSequence_in_ruleTerm3022 = new BitSet(new long[]{0x0000000000000002L}); 4793 public static final BitSet FOLLOW_ruleAtom_in_entryRuleAtom3058 = new BitSet(new long[]{0x0000000000000000L}); 4794 public static final BitSet FOLLOW_EOF_in_entryRuleAtom3068 = new BitSet(new long[]{0x0000000000000002L}); 4795 public static final BitSet FOLLOW_ruleStringRule_in_ruleAtom3114 = new BitSet(new long[]{0x0000000000000002L}); 4796 public static final BitSet FOLLOW_ruleRuleReference_in_ruleAtom3141 = new BitSet(new long[]{0x0000000000000002L}); 4797 public static final BitSet FOLLOW_ruleRuleReference_in_entryRuleRuleReference3177 = new BitSet(new long[]{0x0000000000000000L}); 4798 public static final BitSet FOLLOW_EOF_in_entryRuleRuleReference3187 = new BitSet(new long[]{0x0000000000000002L}); 4799 public static final BitSet FOLLOW_RULE_ID_in_ruleRuleReference3231 = new BitSet(new long[]{0x0000000000000002L}); 4800 public static final BitSet FOLLOW_ruleStringRule_in_entryRuleStringRule3266 = new BitSet(new long[]{0x0000000000000000L}); 4801 public static final BitSet FOLLOW_EOF_in_entryRuleStringRule3276 = new BitSet(new long[]{0x0000000000000002L}); 4802 public static final BitSet FOLLOW_RULE_STRING_in_ruleStringRule3318 = new BitSet(new long[]{0x0000000000000002L}); 4803 public static final BitSet FOLLOW_RULE_COLON_in_ruleStringRule3346 = new BitSet(new long[]{0x0000000000000002L}); 4804 public static final BitSet FOLLOW_ruleGroupedSequence_in_entryRuleGroupedSequence3387 = new BitSet(new long[]{0x0000000000000000L}); 4805 public static final BitSet FOLLOW_EOF_in_entryRuleGroupedSequence3397 = new BitSet(new long[]{0x0000000000000002L}); 4806 public static final BitSet FOLLOW_26_in_ruleGroupedSequence3434 = new BitSet(new long[]{0x0000000304000250L}); 4807 public static final BitSet FOLLOW_ruleDefinitionList_in_ruleGroupedSequence3455 = new BitSet(new long[]{0x0000000008000000L}); 4808 public static final BitSet FOLLOW_27_in_ruleGroupedSequence3467 = new BitSet(new long[]{0x0000000000000002L}); 4809 public static final BitSet FOLLOW_ruleOptionalSequence_in_entryRuleOptionalSequence3503 = new BitSet(new long[]{0x0000000000000000L}); 4810 public static final BitSet FOLLOW_EOF_in_entryRuleOptionalSequence3513 = new BitSet(new long[]{0x0000000000000002L}); 4811 public static final BitSet FOLLOW_32_in_ruleOptionalSequence3550 = new BitSet(new long[]{0x0000000304000250L}); 4812 public static final BitSet FOLLOW_ruleDefinitionList_in_ruleOptionalSequence3571 = new BitSet(new long[]{0x0000000020000000L}); 4813 public static final BitSet FOLLOW_29_in_ruleOptionalSequence3583 = new BitSet(new long[]{0x0000000000000002L}); 4814 public static final BitSet FOLLOW_ruleRepeatedSequence_in_entryRuleRepeatedSequence3619 = new BitSet(new long[]{0x0000000000000000L}); 4815 public static final BitSet FOLLOW_EOF_in_entryRuleRepeatedSequence3629 = new BitSet(new long[]{0x0000000000000002L}); 4816 public static final BitSet FOLLOW_33_in_ruleRepeatedSequence3666 = new BitSet(new long[]{0x0000000304000250L}); 4817 public static final BitSet FOLLOW_ruleDefinitionList_in_ruleRepeatedSequence3687 = new BitSet(new long[]{0x0000000040000000L}); 4818 public static final BitSet FOLLOW_30_in_ruleRepeatedSequence3699 = new BitSet(new long[]{0x0000000800000002L}); 4819 public static final BitSet FOLLOW_35_in_ruleRepeatedSequence3717 = new BitSet(new long[]{0x0000000000000002L}); 5858 public static final BitSet FOLLOW_ruleEtsiBnf_in_entryRuleEtsiBnf88 = new BitSet(new long[]{0x0000000000000000L}); 5859 public static final BitSet FOLLOW_EOF_in_entryRuleEtsiBnf98 = new BitSet(new long[]{0x0000000000000002L}); 5860 public static final BitSet FOLLOW_13_in_ruleEtsiBnf136 = new BitSet(new long[]{0x0000000000000010L}); 5861 public static final BitSet FOLLOW_RULE_ID_in_ruleEtsiBnf153 = new BitSet(new long[]{0x000000000000C000L}); 5862 public static final BitSet FOLLOW_14_in_ruleEtsiBnf177 = new BitSet(new long[]{0x0000000000008000L}); 5863 public static final BitSet FOLLOW_15_in_ruleEtsiBnf203 = new BitSet(new long[]{0x00000000000400B0L}); 5864 public static final BitSet FOLLOW_ruleImportSection_in_ruleEtsiBnf224 = new BitSet(new long[]{0x00000000000400B0L}); 5865 public static final BitSet FOLLOW_ruleBnfEntry_in_ruleEtsiBnf246 = new BitSet(new long[]{0x00000000000400B2L}); 5866 public static final BitSet FOLLOW_16_in_ruleEtsiBnf274 = new BitSet(new long[]{0x0000000000008000L}); 5867 public static final BitSet FOLLOW_15_in_ruleEtsiBnf299 = new BitSet(new long[]{0x00000000000400B2L}); 5868 public static final BitSet FOLLOW_ruleImportSection_in_ruleEtsiBnf320 = new BitSet(new long[]{0x00000000000400B2L}); 5869 public static final BitSet FOLLOW_ruleDeltaEntry_in_ruleEtsiBnf342 = new BitSet(new long[]{0x00000000000400B2L}); 5870 public static final BitSet FOLLOW_17_in_ruleEtsiBnf369 = new BitSet(new long[]{0x0000000000008000L}); 5871 public static final BitSet FOLLOW_15_in_ruleEtsiBnf394 = new BitSet(new long[]{0x000000D000040022L}); 5872 public static final BitSet FOLLOW_ruleImportSection_in_ruleEtsiBnf415 = new BitSet(new long[]{0x000000D000000022L}); 5873 public static final BitSet FOLLOW_ruleMergeEntry_in_ruleEtsiBnf437 = new BitSet(new long[]{0x000000D000000022L}); 5874 public static final BitSet FOLLOW_ruleImportSection_in_entryRuleImportSection475 = new BitSet(new long[]{0x0000000000000000L}); 5875 public static final BitSet FOLLOW_EOF_in_entryRuleImportSection485 = new BitSet(new long[]{0x0000000000000002L}); 5876 public static final BitSet FOLLOW_ruleImport_in_ruleImportSection530 = new BitSet(new long[]{0x0000000000040002L}); 5877 public static final BitSet FOLLOW_ruleBnfEntry_in_entryRuleBnfEntry566 = new BitSet(new long[]{0x0000000000000000L}); 5878 public static final BitSet FOLLOW_EOF_in_entryRuleBnfEntry576 = new BitSet(new long[]{0x0000000000000002L}); 5879 public static final BitSet FOLLOW_ruleSectionHeading_in_ruleBnfEntry622 = new BitSet(new long[]{0x0000000000000002L}); 5880 public static final BitSet FOLLOW_ruleRule_in_ruleBnfEntry649 = new BitSet(new long[]{0x0000000000000002L}); 5881 public static final BitSet FOLLOW_ruleDeltaEntry_in_entryRuleDeltaEntry685 = new BitSet(new long[]{0x0000000000000000L}); 5882 public static final BitSet FOLLOW_EOF_in_entryRuleDeltaEntry695 = new BitSet(new long[]{0x0000000000000002L}); 5883 public static final BitSet FOLLOW_ruleRule_in_ruleDeltaEntry741 = new BitSet(new long[]{0x0000000000000002L}); 5884 public static final BitSet FOLLOW_ruleSectionHeading_in_ruleDeltaEntry768 = new BitSet(new long[]{0x0000000000000002L}); 5885 public static final BitSet FOLLOW_ruleExtRule_in_ruleDeltaEntry795 = new BitSet(new long[]{0x0000000000000002L}); 5886 public static final BitSet FOLLOW_ruleMergeEntry_in_entryRuleMergeEntry831 = new BitSet(new long[]{0x0000000000000000L}); 5887 public static final BitSet FOLLOW_EOF_in_entryRuleMergeEntry841 = new BitSet(new long[]{0x0000000000000002L}); 5888 public static final BitSet FOLLOW_ruleSectionHeading_in_ruleMergeEntry887 = new BitSet(new long[]{0x0000000000000002L}); 5889 public static final BitSet FOLLOW_ruleMergeRule_in_ruleMergeEntry914 = new BitSet(new long[]{0x0000000000000002L}); 5890 public static final BitSet FOLLOW_ruleSectionHeading_in_entryRuleSectionHeading950 = new BitSet(new long[]{0x0000000000000000L}); 5891 public static final BitSet FOLLOW_EOF_in_entryRuleSectionHeading960 = new BitSet(new long[]{0x0000000000000002L}); 5892 public static final BitSet FOLLOW_RULE_SECTIONHEADER_in_ruleSectionHeading1014 = new BitSet(new long[]{0x0000000000000002L}); 5893 public static final BitSet FOLLOW_ruleImport_in_entryRuleImport1055 = new BitSet(new long[]{0x0000000000000000L}); 5894 public static final BitSet FOLLOW_EOF_in_entryRuleImport1065 = new BitSet(new long[]{0x0000000000000002L}); 5895 public static final BitSet FOLLOW_18_in_ruleImport1102 = new BitSet(new long[]{0x0000000000000040L}); 5896 public static final BitSet FOLLOW_RULE_STRING_in_ruleImport1119 = new BitSet(new long[]{0x0000000000888000L}); 5897 public static final BitSet FOLLOW_19_in_ruleImport1137 = new BitSet(new long[]{0x0000000000700000L}); 5898 public static final BitSet FOLLOW_20_in_ruleImport1156 = new BitSet(new long[]{0x0000000000808000L}); 5899 public static final BitSet FOLLOW_21_in_ruleImport1193 = new BitSet(new long[]{0x0000000000808000L}); 5900 public static final BitSet FOLLOW_22_in_ruleImport1230 = new BitSet(new long[]{0x0000000000808000L}); 5901 public static final BitSet FOLLOW_23_in_ruleImport1259 = new BitSet(new long[]{0x0000000000000010L}); 5902 public static final BitSet FOLLOW_RULE_ID_in_ruleImport1276 = new BitSet(new long[]{0x0000000000008000L}); 5903 public static final BitSet FOLLOW_15_in_ruleImport1295 = new BitSet(new long[]{0x0000000000000002L}); 5904 public static final BitSet FOLLOW_ruleRule_in_entryRuleRule1331 = new BitSet(new long[]{0x0000000000000000L}); 5905 public static final BitSet FOLLOW_EOF_in_entryRuleRule1341 = new BitSet(new long[]{0x0000000000000002L}); 5906 public static final BitSet FOLLOW_RULE_INT_in_ruleRule1384 = new BitSet(new long[]{0x0000000001000010L}); 5907 public static final BitSet FOLLOW_RULE_ID_in_ruleRule1406 = new BitSet(new long[]{0x0000000001000000L}); 5908 public static final BitSet FOLLOW_24_in_ruleRule1424 = new BitSet(new long[]{0x0000000000000010L}); 5909 public static final BitSet FOLLOW_RULE_ID_in_ruleRule1443 = new BitSet(new long[]{0x0000000002000000L}); 5910 public static final BitSet FOLLOW_25_in_ruleRule1460 = new BitSet(new long[]{0x0000000304008252L}); 5911 public static final BitSet FOLLOW_ruleDefinitionList_in_ruleRule1481 = new BitSet(new long[]{0x0000000000008002L}); 5912 public static final BitSet FOLLOW_15_in_ruleRule1495 = new BitSet(new long[]{0x0000000000000002L}); 5913 public static final BitSet FOLLOW_ruleExtRule_in_entryRuleExtRule1533 = new BitSet(new long[]{0x0000000000000000L}); 5914 public static final BitSet FOLLOW_EOF_in_entryRuleExtRule1543 = new BitSet(new long[]{0x0000000000000002L}); 5915 public static final BitSet FOLLOW_RULE_INT_in_ruleExtRule1586 = new BitSet(new long[]{0x0000000001000010L}); 5916 public static final BitSet FOLLOW_RULE_ID_in_ruleExtRule1608 = new BitSet(new long[]{0x0000000001000000L}); 5917 public static final BitSet FOLLOW_24_in_ruleExtRule1626 = new BitSet(new long[]{0x0000000000000010L}); 5918 public static final BitSet FOLLOW_RULE_ID_in_ruleExtRule1645 = new BitSet(new long[]{0x0000000004000000L}); 5919 public static final BitSet FOLLOW_26_in_ruleExtRule1663 = new BitSet(new long[]{0x0000000000000080L}); 5920 public static final BitSet FOLLOW_RULE_INT_in_ruleExtRule1680 = new BitSet(new long[]{0x0000000008000000L}); 5921 public static final BitSet FOLLOW_27_in_ruleExtRule1697 = new BitSet(new long[]{0x0000000010000000L}); 5922 public static final BitSet FOLLOW_28_in_ruleExtRule1710 = new BitSet(new long[]{0x0000000FEC008252L}); 5923 public static final BitSet FOLLOW_ruleAtom_in_ruleExtRule1732 = new BitSet(new long[]{0x0000000FEC008252L}); 5924 public static final BitSet FOLLOW_27_in_ruleExtRule1750 = new BitSet(new long[]{0x0000000FEC008252L}); 5925 public static final BitSet FOLLOW_29_in_ruleExtRule1768 = new BitSet(new long[]{0x0000000FEC008252L}); 5926 public static final BitSet FOLLOW_30_in_ruleExtRule1786 = new BitSet(new long[]{0x0000000FEC008252L}); 5927 public static final BitSet FOLLOW_31_in_ruleExtRule1804 = new BitSet(new long[]{0x0000000FEC008252L}); 5928 public static final BitSet FOLLOW_26_in_ruleExtRule1822 = new BitSet(new long[]{0x0000000FEC008252L}); 5929 public static final BitSet FOLLOW_32_in_ruleExtRule1840 = new BitSet(new long[]{0x0000000FEC008252L}); 5930 public static final BitSet FOLLOW_33_in_ruleExtRule1858 = new BitSet(new long[]{0x0000000FEC008252L}); 5931 public static final BitSet FOLLOW_34_in_ruleExtRule1876 = new BitSet(new long[]{0x0000000FEC008252L}); 5932 public static final BitSet FOLLOW_35_in_ruleExtRule1894 = new BitSet(new long[]{0x0000000FEC008252L}); 5933 public static final BitSet FOLLOW_15_in_ruleExtRule1909 = new BitSet(new long[]{0x0000000000000002L}); 5934 public static final BitSet FOLLOW_ruleMergeRule_in_entryRuleMergeRule1947 = new BitSet(new long[]{0x0000000000000000L}); 5935 public static final BitSet FOLLOW_EOF_in_entryRuleMergeRule1957 = new BitSet(new long[]{0x0000000000000002L}); 5936 public static final BitSet FOLLOW_ruleGlobalCombinator_in_ruleMergeRule2007 = new BitSet(new long[]{0x0000000000000002L}); 5937 public static final BitSet FOLLOW_ruleRuleCombinator_in_ruleMergeRule2037 = new BitSet(new long[]{0x0000000000000002L}); 5938 public static final BitSet FOLLOW_ruleHookCombinator_in_ruleMergeRule2067 = new BitSet(new long[]{0x0000000000000002L}); 5939 public static final BitSet FOLLOW_ruleGlobalCombinator_in_entryRuleGlobalCombinator2102 = new BitSet(new long[]{0x0000000000000000L}); 5940 public static final BitSet FOLLOW_EOF_in_entryRuleGlobalCombinator2112 = new BitSet(new long[]{0x0000000000000002L}); 5941 public static final BitSet FOLLOW_36_in_ruleGlobalCombinator2150 = new BitSet(new long[]{0x0000002000000000L}); 5942 public static final BitSet FOLLOW_37_in_ruleGlobalCombinator2162 = new BitSet(new long[]{0x0000000000000100L}); 5943 public static final BitSet FOLLOW_RULE_LOGIC_in_ruleGlobalCombinator2180 = new BitSet(new long[]{0x0000000000008002L}); 5944 public static final BitSet FOLLOW_15_in_ruleGlobalCombinator2198 = new BitSet(new long[]{0x0000000000000002L}); 5945 public static final BitSet FOLLOW_ruleRuleCombinator_in_entryRuleRuleCombinator2236 = new BitSet(new long[]{0x0000000000000000L}); 5946 public static final BitSet FOLLOW_EOF_in_entryRuleRuleCombinator2246 = new BitSet(new long[]{0x0000000000000002L}); 5947 public static final BitSet FOLLOW_38_in_ruleRuleCombinator2284 = new BitSet(new long[]{0x0000002000000000L}); 5948 public static final BitSet FOLLOW_37_in_ruleRuleCombinator2296 = new BitSet(new long[]{0x0000000000000010L}); 5949 public static final BitSet FOLLOW_RULE_ID_in_ruleRuleCombinator2313 = new BitSet(new long[]{0x0000000000000100L}); 5950 public static final BitSet FOLLOW_RULE_LOGIC_in_ruleRuleCombinator2336 = new BitSet(new long[]{0x0000000004008002L}); 5951 public static final BitSet FOLLOW_26_in_ruleRuleCombinator2354 = new BitSet(new long[]{0x0000000000000040L}); 5952 public static final BitSet FOLLOW_RULE_STRING_in_ruleRuleCombinator2371 = new BitSet(new long[]{0x0000000008000000L}); 5953 public static final BitSet FOLLOW_27_in_ruleRuleCombinator2388 = new BitSet(new long[]{0x0000000004008002L}); 5954 public static final BitSet FOLLOW_15_in_ruleRuleCombinator2403 = new BitSet(new long[]{0x0000000000000002L}); 5955 public static final BitSet FOLLOW_ruleHookCombinator_in_entryRuleHookCombinator2441 = new BitSet(new long[]{0x0000000000000000L}); 5956 public static final BitSet FOLLOW_EOF_in_entryRuleHookCombinator2451 = new BitSet(new long[]{0x0000000000000002L}); 5957 public static final BitSet FOLLOW_39_in_ruleHookCombinator2488 = new BitSet(new long[]{0x0000002000000000L}); 5958 public static final BitSet FOLLOW_37_in_ruleHookCombinator2500 = new BitSet(new long[]{0x0000000000000010L}); 5959 public static final BitSet FOLLOW_RULE_ID_in_ruleHookCombinator2517 = new BitSet(new long[]{0x0000000004000000L}); 5960 public static final BitSet FOLLOW_26_in_ruleHookCombinator2534 = new BitSet(new long[]{0x0000000000000080L}); 5961 public static final BitSet FOLLOW_RULE_INT_in_ruleHookCombinator2551 = new BitSet(new long[]{0x0000000008000000L}); 5962 public static final BitSet FOLLOW_27_in_ruleHookCombinator2568 = new BitSet(new long[]{0x0000000004000100L}); 5963 public static final BitSet FOLLOW_RULE_LOGIC_in_ruleHookCombinator2585 = new BitSet(new long[]{0x0000000004000000L}); 5964 public static final BitSet FOLLOW_26_in_ruleHookCombinator2604 = new BitSet(new long[]{0x0000000000000040L}); 5965 public static final BitSet FOLLOW_RULE_STRING_in_ruleHookCombinator2621 = new BitSet(new long[]{0x0000000008000000L}); 5966 public static final BitSet FOLLOW_27_in_ruleHookCombinator2638 = new BitSet(new long[]{0x0000000004008002L}); 5967 public static final BitSet FOLLOW_15_in_ruleHookCombinator2653 = new BitSet(new long[]{0x0000000000000002L}); 5968 public static final BitSet FOLLOW_ruleDefinitionList_in_entryRuleDefinitionList2691 = new BitSet(new long[]{0x0000000000000000L}); 5969 public static final BitSet FOLLOW_EOF_in_entryRuleDefinitionList2701 = new BitSet(new long[]{0x0000000000000002L}); 5970 public static final BitSet FOLLOW_ruleSingleDefinition_in_ruleDefinitionList2747 = new BitSet(new long[]{0x0000000080000002L}); 5971 public static final BitSet FOLLOW_31_in_ruleDefinitionList2760 = new BitSet(new long[]{0x0000000304000250L}); 5972 public static final BitSet FOLLOW_ruleSingleDefinition_in_ruleDefinitionList2781 = new BitSet(new long[]{0x0000000080000002L}); 5973 public static final BitSet FOLLOW_ruleSingleDefinition_in_entryRuleSingleDefinition2819 = new BitSet(new long[]{0x0000000000000000L}); 5974 public static final BitSet FOLLOW_EOF_in_entryRuleSingleDefinition2829 = new BitSet(new long[]{0x0000000000000002L}); 5975 public static final BitSet FOLLOW_ruleTerm_in_ruleSingleDefinition2874 = new BitSet(new long[]{0x0000000304000252L}); 5976 public static final BitSet FOLLOW_ruleTerm_in_entryRuleTerm2910 = new BitSet(new long[]{0x0000000000000000L}); 5977 public static final BitSet FOLLOW_EOF_in_entryRuleTerm2920 = new BitSet(new long[]{0x0000000000000002L}); 5978 public static final BitSet FOLLOW_ruleAtom_in_ruleTerm2966 = new BitSet(new long[]{0x0000000000000002L}); 5979 public static final BitSet FOLLOW_ruleGroupedSequence_in_ruleTerm2993 = new BitSet(new long[]{0x0000000000000002L}); 5980 public static final BitSet FOLLOW_ruleOptionalSequence_in_ruleTerm3020 = new BitSet(new long[]{0x0000000000000002L}); 5981 public static final BitSet FOLLOW_ruleRepeatedSequence_in_ruleTerm3047 = new BitSet(new long[]{0x0000000000000002L}); 5982 public static final BitSet FOLLOW_ruleAtom_in_entryRuleAtom3083 = new BitSet(new long[]{0x0000000000000000L}); 5983 public static final BitSet FOLLOW_EOF_in_entryRuleAtom3093 = new BitSet(new long[]{0x0000000000000002L}); 5984 public static final BitSet FOLLOW_ruleStringRule_in_ruleAtom3139 = new BitSet(new long[]{0x0000000000000002L}); 5985 public static final BitSet FOLLOW_ruleRuleReference_in_ruleAtom3166 = new BitSet(new long[]{0x0000000000000002L}); 5986 public static final BitSet FOLLOW_ruleRuleReference_in_entryRuleRuleReference3202 = new BitSet(new long[]{0x0000000000000000L}); 5987 public static final BitSet FOLLOW_EOF_in_entryRuleRuleReference3212 = new BitSet(new long[]{0x0000000000000002L}); 5988 public static final BitSet FOLLOW_RULE_ID_in_ruleRuleReference3260 = new BitSet(new long[]{0x0000000000000002L}); 5989 public static final BitSet FOLLOW_ruleStringRule_in_entryRuleStringRule3295 = new BitSet(new long[]{0x0000000000000000L}); 5990 public static final BitSet FOLLOW_EOF_in_entryRuleStringRule3305 = new BitSet(new long[]{0x0000000000000002L}); 5991 public static final BitSet FOLLOW_RULE_STRING_in_ruleStringRule3347 = new BitSet(new long[]{0x0000000000000002L}); 5992 public static final BitSet FOLLOW_RULE_COLON_in_ruleStringRule3375 = new BitSet(new long[]{0x0000000000000002L}); 5993 public static final BitSet FOLLOW_ruleGroupedSequence_in_entryRuleGroupedSequence3416 = new BitSet(new long[]{0x0000000000000000L}); 5994 public static final BitSet FOLLOW_EOF_in_entryRuleGroupedSequence3426 = new BitSet(new long[]{0x0000000000000002L}); 5995 public static final BitSet FOLLOW_26_in_ruleGroupedSequence3463 = new BitSet(new long[]{0x0000000304000250L}); 5996 public static final BitSet FOLLOW_ruleDefinitionList_in_ruleGroupedSequence3484 = new BitSet(new long[]{0x0000000008000000L}); 5997 public static final BitSet FOLLOW_27_in_ruleGroupedSequence3496 = new BitSet(new long[]{0x0000000000000002L}); 5998 public static final BitSet FOLLOW_ruleOptionalSequence_in_entryRuleOptionalSequence3532 = new BitSet(new long[]{0x0000000000000000L}); 5999 public static final BitSet FOLLOW_EOF_in_entryRuleOptionalSequence3542 = new BitSet(new long[]{0x0000000000000002L}); 6000 public static final BitSet FOLLOW_32_in_ruleOptionalSequence3579 = new BitSet(new long[]{0x0000000304000250L}); 6001 public static final BitSet FOLLOW_ruleDefinitionList_in_ruleOptionalSequence3600 = new BitSet(new long[]{0x0000000020000000L}); 6002 public static final BitSet FOLLOW_29_in_ruleOptionalSequence3612 = new BitSet(new long[]{0x0000000000000002L}); 6003 public static final BitSet FOLLOW_ruleRepeatedSequence_in_entryRuleRepeatedSequence3648 = new BitSet(new long[]{0x0000000000000000L}); 6004 public static final BitSet FOLLOW_EOF_in_entryRuleRepeatedSequence3658 = new BitSet(new long[]{0x0000000000000002L}); 6005 public static final BitSet FOLLOW_33_in_ruleRepeatedSequence3695 = new BitSet(new long[]{0x0000000304000250L}); 6006 public static final BitSet FOLLOW_ruleDefinitionList_in_ruleRepeatedSequence3716 = new BitSet(new long[]{0x0000000040000000L}); 6007 public static final BitSet FOLLOW_30_in_ruleRepeatedSequence3728 = new BitSet(new long[]{0x0000010800000002L}); 6008 public static final BitSet FOLLOW_35_in_ruleRepeatedSequence3747 = new BitSet(new long[]{0x0000000000000002L}); 6009 public static final BitSet FOLLOW_ruleRepeatRange_in_ruleRepeatedSequence3788 = new BitSet(new long[]{0x0000000000000002L}); 6010 public static final BitSet FOLLOW_ruleRepeatRange_in_entryRuleRepeatRange3826 = new BitSet(new long[]{0x0000000000000000L}); 6011 public static final BitSet FOLLOW_EOF_in_entryRuleRepeatRange3836 = new BitSet(new long[]{0x0000000000000002L}); 6012 public static final BitSet FOLLOW_40_in_ruleRepeatRange3873 = new BitSet(new long[]{0x0000000004000000L}); 6013 public static final BitSet FOLLOW_26_in_ruleRepeatRange3885 = new BitSet(new long[]{0x0000000000000080L}); 6014 public static final BitSet FOLLOW_RULE_INT_in_ruleRepeatRange3902 = new BitSet(new long[]{0x0000020000000000L}); 6015 public static final BitSet FOLLOW_41_in_ruleRepeatRange3919 = new BitSet(new long[]{0x0000000000000080L}); 6016 public static final BitSet FOLLOW_RULE_INT_in_ruleRepeatRange3936 = new BitSet(new long[]{0x0000000008000000L}); 6017 public static final BitSet FOLLOW_27_in_ruleRepeatRange3953 = new BitSet(new long[]{0x0000000000000002L}); 6018 public static final BitSet FOLLOW_35_in_synpred52_InternalEbnf3747 = new BitSet(new long[]{0x0000000000000002L}); 4820 6019 4821 6020 } -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/serializer/EbnfSemanticSequencer.java
r88 r95 17 17 import de.ugoe.cs.swe.bnftools.ebnf.MergeEntry; 18 18 import de.ugoe.cs.swe.bnftools.ebnf.OptionalSequence; 19 import de.ugoe.cs.swe.bnftools.ebnf.RepeatRange; 19 20 import de.ugoe.cs.swe.bnftools.ebnf.RepeatedSequence; 20 21 import de.ugoe.cs.swe.bnftools.ebnf.Rule; … … 126 127 } 127 128 else break; 129 case EbnfPackage.REPEAT_RANGE: 130 if(context == grammarAccess.getRepeatRangeRule()) { 131 sequence_RepeatRange(context, (RepeatRange) semanticObject); 132 return; 133 } 134 else break; 128 135 case EbnfPackage.REPEATED_SEQUENCE: 129 136 if(context == grammarAccess.getRepeatedSequenceRule()) { … … 309 316 /** 310 317 * Constraint: 311 * (definitions+=DefinitionList morethanonce?='+'?) 318 * (from=INT to=INT) 319 */ 320 protected void sequence_RepeatRange(EObject context, RepeatRange semanticObject) { 321 if(errorAcceptor != null) { 322 if(transientValues.isValueTransient(semanticObject, EbnfPackage.Literals.REPEAT_RANGE__FROM) == ValueTransient.YES) 323 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, EbnfPackage.Literals.REPEAT_RANGE__FROM)); 324 if(transientValues.isValueTransient(semanticObject, EbnfPackage.Literals.REPEAT_RANGE__TO) == ValueTransient.YES) 325 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, EbnfPackage.Literals.REPEAT_RANGE__TO)); 326 } 327 INodesForEObjectProvider nodes = createNodeProvider(semanticObject); 328 SequenceFeeder feeder = createSequencerFeeder(semanticObject, nodes); 329 feeder.accept(grammarAccess.getRepeatRangeAccess().getFromINTTerminalRuleCall_2_0(), semanticObject.getFrom()); 330 feeder.accept(grammarAccess.getRepeatRangeAccess().getToINTTerminalRuleCall_4_0(), semanticObject.getTo()); 331 feeder.finish(); 332 } 333 334 335 /** 336 * Constraint: 337 * (definitions+=DefinitionList (morethanonce?='+'? | range=RepeatRange?)) 312 338 */ 313 339 protected void sequence_RepeatedSequence(EObject context, RepeatedSequence semanticObject) { -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/serializer/EbnfSyntacticSequencer.java
r88 r95 76 76 * Syntax: 77 77 * ( 78 '{' |79 78 '}' | 80 ' [' |79 '*' | 81 80 ']' | 82 '*' |83 '+' |84 81 '|' | 85 82 '(' | 86 ')' 83 '{' | 84 '+' | 85 ')' | 86 '[' 87 87 )* 88 88 */ -
v2/trunk/de.ugoe.cs.swe.bnftools.ebnf/src-gen/de/ugoe/cs/swe/bnftools/services/EbnfGrammarAccess.java
r88 r95 985 985 private final RuleCall cDefinitionsDefinitionListParserRuleCall_1_0 = (RuleCall)cDefinitionsAssignment_1.eContents().get(0); 986 986 private final Keyword cRightCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); 987 private final Assignment cMorethanonceAssignment_3 = (Assignment)cGroup.eContents().get(3); 988 private final Keyword cMorethanoncePlusSignKeyword_3_0 = (Keyword)cMorethanonceAssignment_3.eContents().get(0); 987 private final Alternatives cAlternatives_3 = (Alternatives)cGroup.eContents().get(3); 988 private final Assignment cMorethanonceAssignment_3_0 = (Assignment)cAlternatives_3.eContents().get(0); 989 private final Keyword cMorethanoncePlusSignKeyword_3_0_0 = (Keyword)cMorethanonceAssignment_3_0.eContents().get(0); 990 private final Assignment cRangeAssignment_3_1 = (Assignment)cAlternatives_3.eContents().get(1); 991 private final RuleCall cRangeRepeatRangeParserRuleCall_3_1_0 = (RuleCall)cRangeAssignment_3_1.eContents().get(0); 989 992 990 993 //RepeatedSequence: 991 // "{" definitions+=DefinitionList "}" morethanonce?="+"?;992 public ParserRule getRule() { return rule; } 993 994 //"{" definitions+=DefinitionList "}" morethanonce?="+"?994 // "{" definitions+=DefinitionList "}" (morethanonce?="+"? | range=RepeatRange?); 995 public ParserRule getRule() { return rule; } 996 997 //"{" definitions+=DefinitionList "}" (morethanonce?="+"? | range=RepeatRange?) 995 998 public Group getGroup() { return cGroup; } 996 999 … … 1007 1010 public Keyword getRightCurlyBracketKeyword_2() { return cRightCurlyBracketKeyword_2; } 1008 1011 1012 //morethanonce?="+"? | range=RepeatRange? 1013 public Alternatives getAlternatives_3() { return cAlternatives_3; } 1014 1009 1015 //morethanonce?="+"? 1010 public Assignment getMorethanonceAssignment_3 () { return cMorethanonceAssignment_3; }1016 public Assignment getMorethanonceAssignment_3_0() { return cMorethanonceAssignment_3_0; } 1011 1017 1012 1018 //"+" 1013 public Keyword getMorethanoncePlusSignKeyword_3_0() { return cMorethanoncePlusSignKeyword_3_0; } 1019 public Keyword getMorethanoncePlusSignKeyword_3_0_0() { return cMorethanoncePlusSignKeyword_3_0_0; } 1020 1021 //range=RepeatRange? 1022 public Assignment getRangeAssignment_3_1() { return cRangeAssignment_3_1; } 1023 1024 //RepeatRange 1025 public RuleCall getRangeRepeatRangeParserRuleCall_3_1_0() { return cRangeRepeatRangeParserRuleCall_3_1_0; } 1026 } 1027 1028 public class RepeatRangeElements extends AbstractParserRuleElementFinder { 1029 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RepeatRange"); 1030 private final Group cGroup = (Group)rule.eContents().get(1); 1031 private final Keyword cNumberSignKeyword_0 = (Keyword)cGroup.eContents().get(0); 1032 private final Keyword cLeftParenthesisKeyword_1 = (Keyword)cGroup.eContents().get(1); 1033 private final Assignment cFromAssignment_2 = (Assignment)cGroup.eContents().get(2); 1034 private final RuleCall cFromINTTerminalRuleCall_2_0 = (RuleCall)cFromAssignment_2.eContents().get(0); 1035 private final Keyword cCommaKeyword_3 = (Keyword)cGroup.eContents().get(3); 1036 private final Assignment cToAssignment_4 = (Assignment)cGroup.eContents().get(4); 1037 private final RuleCall cToINTTerminalRuleCall_4_0 = (RuleCall)cToAssignment_4.eContents().get(0); 1038 private final Keyword cRightParenthesisKeyword_5 = (Keyword)cGroup.eContents().get(5); 1039 1040 //RepeatRange: 1041 // "#" "(" from=INT "," to=INT ")"; 1042 public ParserRule getRule() { return rule; } 1043 1044 //"#" "(" from=INT "," to=INT ")" 1045 public Group getGroup() { return cGroup; } 1046 1047 //"#" 1048 public Keyword getNumberSignKeyword_0() { return cNumberSignKeyword_0; } 1049 1050 //"(" 1051 public Keyword getLeftParenthesisKeyword_1() { return cLeftParenthesisKeyword_1; } 1052 1053 //from=INT 1054 public Assignment getFromAssignment_2() { return cFromAssignment_2; } 1055 1056 //INT 1057 public RuleCall getFromINTTerminalRuleCall_2_0() { return cFromINTTerminalRuleCall_2_0; } 1058 1059 //"," 1060 public Keyword getCommaKeyword_3() { return cCommaKeyword_3; } 1061 1062 //to=INT 1063 public Assignment getToAssignment_4() { return cToAssignment_4; } 1064 1065 //INT 1066 public RuleCall getToINTTerminalRuleCall_4_0() { return cToINTTerminalRuleCall_4_0; } 1067 1068 //")" 1069 public Keyword getRightParenthesisKeyword_5() { return cRightParenthesisKeyword_5; } 1014 1070 } 1015 1071 … … 1037 1093 private OptionalSequenceElements pOptionalSequence; 1038 1094 private RepeatedSequenceElements pRepeatedSequence; 1095 private RepeatRangeElements pRepeatRange; 1039 1096 private TerminalRule tID; 1040 1097 private TerminalRule tINT; … … 1299 1356 1300 1357 //RepeatedSequence: 1301 // "{" definitions+=DefinitionList "}" morethanonce?="+"?;1358 // "{" definitions+=DefinitionList "}" (morethanonce?="+"? | range=RepeatRange?); 1302 1359 public RepeatedSequenceElements getRepeatedSequenceAccess() { 1303 1360 return (pRepeatedSequence != null) ? pRepeatedSequence : (pRepeatedSequence = new RepeatedSequenceElements()); … … 1306 1363 public ParserRule getRepeatedSequenceRule() { 1307 1364 return getRepeatedSequenceAccess().getRule(); 1365 } 1366 1367 //RepeatRange: 1368 // "#" "(" from=INT "," to=INT ")"; 1369 public RepeatRangeElements getRepeatRangeAccess() { 1370 return (pRepeatRange != null) ? pRepeatRange : (pRepeatRange = new RepeatRangeElements()); 1371 } 1372 1373 public ParserRule getRepeatRangeRule() { 1374 return getRepeatRangeAccess().getRule(); 1308 1375 } 1309 1376
Note: See TracChangeset
for help on using the changeset viewer.