From 34e40ff1699d1a7c726e326d9939ea361dce4ef2 Mon Sep 17 00:00:00 2001 From: Rene Schneider Date: Mon, 15 Oct 2018 09:27:56 +0200 Subject: [PATCH 1/4] fixed issue #200: unexpected variable assignment This actually undos a change that was done in a fix for issue #192, which was later found to be sub-par and was fixed in a different way in issue #194. However, the change originally done for issue #192 turned out to be causing a bug, issue #200. This now is the fix for that bug. --- .../integrity/runner/DefaultTestRunner.java | 29 ++++++++++--------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/de.gebit.integrity.runner/src/de/gebit/integrity/runner/DefaultTestRunner.java b/de.gebit.integrity.runner/src/de/gebit/integrity/runner/DefaultTestRunner.java index edbb31d70..af2ad9d75 100644 --- a/de.gebit.integrity.runner/src/de/gebit/integrity/runner/DefaultTestRunner.java +++ b/de.gebit.integrity.runner/src/de/gebit/integrity/runner/DefaultTestRunner.java @@ -1738,22 +1738,23 @@ protected void executeVariableAssignment(VariableAssignment anAssignment, SuiteD currentCallback.onCallbackProcessingEnd(); } - // Assignments are very much like variable definitions with default value - we perform them regardless of dry - // run or test run mode. - try { - setVariableValueConverted(anAssignment.getTarget().getName(), anAssignment.getValue(), true); - } catch (UnexecutableException exc) { - // This is expected to happen in some cases during dry run, namely on operations to be executed on - // assignment which use variables that are dynamically assigned from call results. But that is not a - // problem, we can safely ignore this, the variable will then not be assigned. In the real test run - // however it should not happen, so let's print it on stderr in that case. - // This fixes issue #197: Exception thrown before test runs in case of assigns having operations - // with variables filled via call (https://github.com/integrity-tf/integrity/issues/197) - if (shouldExecuteFixtures()) { + if (shouldExecuteFixtures()) { + // Only perform variable assignments if we are not in dry run mode + try { + setVariableValueConverted(anAssignment.getTarget().getName(), anAssignment.getValue(), true); + } catch (UnexecutableException exc) { + // This is expected to happen in some cases during dry run, namely on operations to be executed on + // assignment which use variables that are dynamically assigned from call results. But that is not a + // problem, we can safely ignore this, the variable will then not be assigned. In the real test run + // however it should not happen, so let's print it on stderr in that case. + // This fixes issue #197: Exception thrown before test runs in case of assigns having operations + // with variables filled via call (https://github.com/integrity-tf/integrity/issues/197) + if (shouldExecuteFixtures()) { + exc.printStackTrace(); + } + } catch (InstantiationException | ClassNotFoundException exc) { exc.printStackTrace(); } - } catch (InstantiationException | ClassNotFoundException exc) { - exc.printStackTrace(); } } From a3e46d0d5c2bd12bfedec5a18cdd6d8464ce7bef Mon Sep 17 00:00:00 2001 From: Rene Schneider Date: Mon, 15 Oct 2018 10:00:49 +0200 Subject: [PATCH 2/4] fixed #201: possible NPE in zombie thread detection --- .../runner/console/ConsoleTestExecutor.java | 30 ++++++++++++++----- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/de.gebit.integrity.runner/src/de/gebit/integrity/runner/console/ConsoleTestExecutor.java b/de.gebit.integrity.runner/src/de/gebit/integrity/runner/console/ConsoleTestExecutor.java index 885be0a97..ef9243f60 100644 --- a/de.gebit.integrity.runner/src/de/gebit/integrity/runner/console/ConsoleTestExecutor.java +++ b/de.gebit.integrity.runner/src/de/gebit/integrity/runner/console/ConsoleTestExecutor.java @@ -126,27 +126,41 @@ public static void main(String[] someArgs) { * map. This is used in conjunction with {@link #checkForZombieThreads()}. */ public void prepareZombieThreadCheck() { - Thread[] tempArray = new Thread[Thread.activeCount()]; - Thread.enumerate(tempArray); - threadsRunningBeforeTestExecution.clear(); - for (Thread tempThread : tempArray) { + for (Thread tempThread : retrieveListOfAllThreads()) { if (tempThread.isAlive() && !tempThread.isDaemon()) { threadsRunningBeforeTestExecution.put(tempThread, true); } } } + /** + * Gets a list of all threads known to the JVM. Due to the Thread API it is non-trivial to get such a list reliably, + * which is why that is encapsulated here. The returned list is guaranteed to not contain null items. + * + * @return a list of threads + */ + protected List retrieveListOfAllThreads() { + List tempList = new ArrayList<>(); + Thread[] tempArray = new Thread[Thread.activeCount() + 10]; + Thread.enumerate(tempArray); + + for (Thread tempThread : tempArray) { + if (tempThread != null) { + tempList.add(tempThread); + } + } + + return tempList; + } + /** * Searches for any threads still running which were not running when {@link #prepareZombieThreadCheck()} was * executed and prints them on the console. This mechanism is designed to find */ public void checkForZombieThreads() { - Thread[] tempArray = new Thread[Thread.activeCount()]; - Thread.enumerate(tempArray); - List tempZombieThreads = new LinkedList(); - for (Thread tempThread : tempArray) { + for (Thread tempThread : retrieveListOfAllThreads()) { if ((tempThread.getName() != null && !tempThread.getName().startsWith("Integrity - ")) && !threadsRunningBeforeTestExecution.containsKey(tempThread) && tempThread.isAlive() && !tempThread.isDaemon()) { From 1745a0e68892e82289537959e886894ee1404d77 Mon Sep 17 00:00:00 2001 From: Rene Schneider Date: Mon, 15 Oct 2018 10:06:12 +0200 Subject: [PATCH 3/4] fixed obscure Eclipse compiler issue in docgen class --- .../src/de/gebit/integrity/docgen/html/PackageIndexView.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/de.gebit.integrity.docgen/src/de/gebit/integrity/docgen/html/PackageIndexView.java b/de.gebit.integrity.docgen/src/de/gebit/integrity/docgen/html/PackageIndexView.java index 914c03ef7..0765e949e 100644 --- a/de.gebit.integrity.docgen/src/de/gebit/integrity/docgen/html/PackageIndexView.java +++ b/de.gebit.integrity.docgen/src/de/gebit/integrity/docgen/html/PackageIndexView.java @@ -10,6 +10,7 @@ import java.util.Collection; import de.gebit.integrity.docgen.IntegrityPackage; +import htmlflow.HtmlWriter; import htmlflow.elements.HtmlA; import htmlflow.elements.HtmlBody; import htmlflow.elements.HtmlDiv; @@ -58,7 +59,7 @@ public PackageIndexView(Collection somePackages, boolean aRela tempSearchFormButton.addAttr("id", "searchbutton"); tempSearchFormButton.addAttr("type", "button"); tempSearchFormButton.addAttr("value", "Search"); - tempSearchForm.addChild(tempSearchFormInput); + tempSearchForm.addChild((HtmlWriter) tempSearchFormInput); tempSearchForm.addChild(tempSearchFormButton); tempMainContainerDiv.div().idAttr("searchresults"); From 0151eb49e5968c68dcb4596436ce8481f25d7287 Mon Sep 17 00:00:00 2001 From: Rene Schneider Date: Mon, 15 Oct 2018 16:15:44 +0200 Subject: [PATCH 4/4] fixed issue #202: Line end comments can deactivate parts of a table test --- .../antlr/internal/InternalDSL.g | 2 +- .../antlr/internal/InternalDSLLexer.java | 548 ++++++++---------- .../src-gen/de/gebit/integrity/DSL.xtextbin | Bin 17740 -> 17682 bytes .../parser/antlr/internal/InternalDSL.g | 2 +- .../antlr/internal/InternalDSLLexer.java | 538 ++++++++--------- .../integrity/services/DSLGrammarAccess.java | 2 +- .../src/integrity/integrity.xtext | 2 +- .../generator/.DSLGenerator.xtendbin | Bin 2050 -> 2050 bytes 8 files changed, 511 insertions(+), 583 deletions(-) diff --git a/de.gebit.integrity.dsl.ui/src-gen/de/gebit/integrity/ui/contentassist/antlr/internal/InternalDSL.g b/de.gebit.integrity.dsl.ui/src-gen/de/gebit/integrity/ui/contentassist/antlr/internal/InternalDSL.g index e0c1cf804..2731e2b7a 100644 --- a/de.gebit.integrity.dsl.ui/src-gen/de/gebit/integrity/ui/contentassist/antlr/internal/InternalDSL.g +++ b/de.gebit.integrity.dsl.ui/src-gen/de/gebit/integrity/ui/contentassist/antlr/internal/InternalDSL.g @@ -18251,7 +18251,7 @@ RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'"')))* RULE_ML_COMMENT : '/*' ~('*') ( options {greedy=false;} : . )*'*/'; -RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?; +RULE_SL_COMMENT : '//' ~(('\n'|'\r'))*; RULE_SL_VISIBLE_COMMENT : '-- ' ~(('\n'|'\r'))*; diff --git a/de.gebit.integrity.dsl.ui/src-gen/de/gebit/integrity/ui/contentassist/antlr/internal/InternalDSLLexer.java b/de.gebit.integrity.dsl.ui/src-gen/de/gebit/integrity/ui/contentassist/antlr/internal/InternalDSLLexer.java index b8a65077c..e155601d9 100644 --- a/de.gebit.integrity.dsl.ui/src-gen/de/gebit/integrity/ui/contentassist/antlr/internal/InternalDSLLexer.java +++ b/de.gebit.integrity.dsl.ui/src-gen/de/gebit/integrity/ui/contentassist/antlr/internal/InternalDSLLexer.java @@ -1946,8 +1946,8 @@ public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalDSL.g:18254:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) - // InternalDSL.g:18254:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? + // InternalDSL.g:18254:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ) + // InternalDSL.g:18254:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* { match("//"); @@ -1984,42 +1984,6 @@ public final void mRULE_SL_COMMENT() throws RecognitionException { } } while (true); - // InternalDSL.g:18254:40: ( ( '\\r' )? '\\n' )? - int alt15=2; - int LA15_0 = input.LA(1); - - if ( (LA15_0=='\n'||LA15_0=='\r') ) { - alt15=1; - } - switch (alt15) { - case 1 : - // InternalDSL.g:18254:41: ( '\\r' )? '\\n' - { - // InternalDSL.g:18254:41: ( '\\r' )? - int alt14=2; - int LA14_0 = input.LA(1); - - if ( (LA14_0=='\r') ) { - alt14=1; - } - switch (alt14) { - case 1 : - // InternalDSL.g:18254:41: '\\r' - { - match('\r'); - - } - break; - - } - - match('\n'); - - } - break; - - } - } @@ -2042,17 +2006,17 @@ public final void mRULE_SL_VISIBLE_COMMENT() throws RecognitionException { match("-- "); // InternalDSL.g:18256:33: (~ ( ( '\\n' | '\\r' ) ) )* - loop16: + loop14: do { - int alt16=2; - int LA16_0 = input.LA(1); + int alt14=2; + int LA14_0 = input.LA(1); - if ( ((LA16_0>='\u0000' && LA16_0<='\t')||(LA16_0>='\u000B' && LA16_0<='\f')||(LA16_0>='\u000E' && LA16_0<='\uFFFF')) ) { - alt16=1; + if ( ((LA14_0>='\u0000' && LA14_0<='\t')||(LA14_0>='\u000B' && LA14_0<='\f')||(LA14_0>='\u000E' && LA14_0<='\uFFFF')) ) { + alt14=1; } - switch (alt16) { + switch (alt14) { case 1 : // InternalDSL.g:18256:33: ~ ( ( '\\n' | '\\r' ) ) { @@ -2070,7 +2034,7 @@ public final void mRULE_SL_VISIBLE_COMMENT() throws RecognitionException { break; default : - break loop16; + break loop14; } } while (true); @@ -2096,17 +2060,17 @@ public final void mRULE_SL_VISIBLE_TITLE_COMMENT() throws RecognitionException { match("--- "); // InternalDSL.g:18258:40: (~ ( ( '\\n' | '\\r' ) ) )* - loop17: + loop15: do { - int alt17=2; - int LA17_0 = input.LA(1); + int alt15=2; + int LA15_0 = input.LA(1); - if ( ((LA17_0>='\u0000' && LA17_0<='\t')||(LA17_0>='\u000B' && LA17_0<='\f')||(LA17_0>='\u000E' && LA17_0<='\uFFFF')) ) { - alt17=1; + if ( ((LA15_0>='\u0000' && LA15_0<='\t')||(LA15_0>='\u000B' && LA15_0<='\f')||(LA15_0>='\u000E' && LA15_0<='\uFFFF')) ) { + alt15=1; } - switch (alt17) { + switch (alt15) { case 1 : // InternalDSL.g:18258:40: ~ ( ( '\\n' | '\\r' ) ) { @@ -2124,7 +2088,7 @@ public final void mRULE_SL_VISIBLE_TITLE_COMMENT() throws RecognitionException { break; default : - break loop17; + break loop15; } } while (true); @@ -2150,29 +2114,29 @@ public final void mRULE_ML_VISIBLE_COMMENT() throws RecognitionException { match("/- "); // InternalDSL.g:18260:33: ( options {greedy=false; } : . )* - loop18: + loop16: do { - int alt18=2; - int LA18_0 = input.LA(1); + int alt16=2; + int LA16_0 = input.LA(1); - if ( (LA18_0=='-') ) { - int LA18_1 = input.LA(2); + if ( (LA16_0=='-') ) { + int LA16_1 = input.LA(2); - if ( (LA18_1=='/') ) { - alt18=2; + if ( (LA16_1=='/') ) { + alt16=2; } - else if ( ((LA18_1>='\u0000' && LA18_1<='.')||(LA18_1>='0' && LA18_1<='\uFFFF')) ) { - alt18=1; + else if ( ((LA16_1>='\u0000' && LA16_1<='.')||(LA16_1>='0' && LA16_1<='\uFFFF')) ) { + alt16=1; } } - else if ( ((LA18_0>='\u0000' && LA18_0<=',')||(LA18_0>='.' && LA18_0<='\uFFFF')) ) { - alt18=1; + else if ( ((LA16_0>='\u0000' && LA16_0<=',')||(LA16_0>='.' && LA16_0<='\uFFFF')) ) { + alt16=1; } - switch (alt18) { + switch (alt16) { case 1 : // InternalDSL.g:18260:61: . { @@ -2182,7 +2146,7 @@ else if ( ((LA18_0>='\u0000' && LA18_0<=',')||(LA18_0>='.' && LA18_0<='\uFFFF')) break; default : - break loop18; + break loop16; } } while (true); @@ -2210,38 +2174,38 @@ public final void mRULE_ML_VISIBLE_TITLE_COMMENT() throws RecognitionException { match("/-- "); // InternalDSL.g:18262:40: ( options {greedy=false; } : . )* - loop19: + loop17: do { - int alt19=2; - int LA19_0 = input.LA(1); + int alt17=2; + int LA17_0 = input.LA(1); - if ( (LA19_0=='-') ) { - int LA19_1 = input.LA(2); + if ( (LA17_0=='-') ) { + int LA17_1 = input.LA(2); - if ( (LA19_1=='-') ) { - int LA19_3 = input.LA(3); + if ( (LA17_1=='-') ) { + int LA17_3 = input.LA(3); - if ( (LA19_3=='/') ) { - alt19=2; + if ( (LA17_3=='/') ) { + alt17=2; } - else if ( ((LA19_3>='\u0000' && LA19_3<='.')||(LA19_3>='0' && LA19_3<='\uFFFF')) ) { - alt19=1; + else if ( ((LA17_3>='\u0000' && LA17_3<='.')||(LA17_3>='0' && LA17_3<='\uFFFF')) ) { + alt17=1; } } - else if ( ((LA19_1>='\u0000' && LA19_1<=',')||(LA19_1>='.' && LA19_1<='\uFFFF')) ) { - alt19=1; + else if ( ((LA17_1>='\u0000' && LA17_1<=',')||(LA17_1>='.' && LA17_1<='\uFFFF')) ) { + alt17=1; } } - else if ( ((LA19_0>='\u0000' && LA19_0<=',')||(LA19_0>='.' && LA19_0<='\uFFFF')) ) { - alt19=1; + else if ( ((LA17_0>='\u0000' && LA17_0<=',')||(LA17_0>='.' && LA17_0<='\uFFFF')) ) { + alt17=1; } - switch (alt19) { + switch (alt17) { case 1 : // InternalDSL.g:18262:68: . { @@ -2251,7 +2215,7 @@ else if ( ((LA19_0>='\u0000' && LA19_0<=',')||(LA19_0>='.' && LA19_0<='\uFFFF')) break; default : - break loop19; + break loop17; } } while (true); @@ -2279,29 +2243,29 @@ public final void mRULE_ML_DOC_COMMENT() throws RecognitionException { match("/**"); // InternalDSL.g:18264:29: ( options {greedy=false; } : . )* - loop20: + loop18: do { - int alt20=2; - int LA20_0 = input.LA(1); + int alt18=2; + int LA18_0 = input.LA(1); - if ( (LA20_0=='*') ) { - int LA20_1 = input.LA(2); + if ( (LA18_0=='*') ) { + int LA18_1 = input.LA(2); - if ( (LA20_1=='/') ) { - alt20=2; + if ( (LA18_1=='/') ) { + alt18=2; } - else if ( ((LA20_1>='\u0000' && LA20_1<='.')||(LA20_1>='0' && LA20_1<='\uFFFF')) ) { - alt20=1; + else if ( ((LA18_1>='\u0000' && LA18_1<='.')||(LA18_1>='0' && LA18_1<='\uFFFF')) ) { + alt18=1; } } - else if ( ((LA20_0>='\u0000' && LA20_0<=')')||(LA20_0>='+' && LA20_0<='\uFFFF')) ) { - alt20=1; + else if ( ((LA18_0>='\u0000' && LA18_0<=')')||(LA18_0>='+' && LA18_0<='\uFFFF')) ) { + alt18=1; } - switch (alt20) { + switch (alt18) { case 1 : // InternalDSL.g:18264:57: . { @@ -2311,7 +2275,7 @@ else if ( ((LA20_0>='\u0000' && LA20_0<=')')||(LA20_0>='+' && LA20_0<='\uFFFF')) break; default : - break loop20; + break loop18; } } while (true); @@ -2339,17 +2303,17 @@ public final void mRULE_DIVIDER() throws RecognitionException { match("----"); // InternalDSL.g:18266:23: ( '-' )* - loop21: + loop19: do { - int alt21=2; - int LA21_0 = input.LA(1); + int alt19=2; + int LA19_0 = input.LA(1); - if ( (LA21_0=='-') ) { - alt21=1; + if ( (LA19_0=='-') ) { + alt19=1; } - switch (alt21) { + switch (alt19) { case 1 : // InternalDSL.g:18266:23: '-' { @@ -2359,7 +2323,7 @@ public final void mRULE_DIVIDER() throws RecognitionException { break; default : - break loop21; + break loop19; } } while (true); @@ -2383,18 +2347,18 @@ public final void mRULE_WS() throws RecognitionException { // InternalDSL.g:18268:11: ( ' ' | '\\t' )+ { // InternalDSL.g:18268:11: ( ' ' | '\\t' )+ - int cnt22=0; - loop22: + int cnt20=0; + loop20: do { - int alt22=2; - int LA22_0 = input.LA(1); + int alt20=2; + int LA20_0 = input.LA(1); - if ( (LA22_0=='\t'||LA22_0==' ') ) { - alt22=1; + if ( (LA20_0=='\t'||LA20_0==' ') ) { + alt20=1; } - switch (alt22) { + switch (alt20) { case 1 : // InternalDSL.g: { @@ -2412,12 +2376,12 @@ public final void mRULE_WS() throws RecognitionException { break; default : - if ( cnt22 >= 1 ) break loop22; + if ( cnt20 >= 1 ) break loop20; EarlyExitException eee = - new EarlyExitException(22, input); + new EarlyExitException(20, input); throw eee; } - cnt22++; + cnt20++; } while (true); @@ -2440,18 +2404,18 @@ public final void mRULE_NEWLINE() throws RecognitionException { // InternalDSL.g:18270:16: ( '\\r' | '\\n' )+ { // InternalDSL.g:18270:16: ( '\\r' | '\\n' )+ - int cnt23=0; - loop23: + int cnt21=0; + loop21: do { - int alt23=2; - int LA23_0 = input.LA(1); + int alt21=2; + int LA21_0 = input.LA(1); - if ( (LA23_0=='\n'||LA23_0=='\r') ) { - alt23=1; + if ( (LA21_0=='\n'||LA21_0=='\r') ) { + alt21=1; } - switch (alt23) { + switch (alt21) { case 1 : // InternalDSL.g: { @@ -2469,12 +2433,12 @@ public final void mRULE_NEWLINE() throws RecognitionException { break; default : - if ( cnt23 >= 1 ) break loop23; + if ( cnt21 >= 1 ) break loop21; EarlyExitException eee = - new EarlyExitException(23, input); + new EarlyExitException(21, input); throw eee; } - cnt23++; + cnt21++; } while (true); @@ -2526,35 +2490,35 @@ public final void mRULE_ISOTIME() throws RecognitionException { // InternalDSL.g:18274:16: ( 'T' RULE_TWENTYFOURHRSTIME ( RULE_ISOTIMEZONE )? | RULE_TWENTYFOURHRSTIME RULE_ISOTIMEZONE ) { // InternalDSL.g:18274:16: ( 'T' RULE_TWENTYFOURHRSTIME ( RULE_ISOTIMEZONE )? | RULE_TWENTYFOURHRSTIME RULE_ISOTIMEZONE ) - int alt25=2; - int LA25_0 = input.LA(1); + int alt23=2; + int LA23_0 = input.LA(1); - if ( (LA25_0=='T') ) { - alt25=1; + if ( (LA23_0=='T') ) { + alt23=1; } - else if ( ((LA25_0>='0' && LA25_0<='2')) ) { - alt25=2; + else if ( ((LA23_0>='0' && LA23_0<='2')) ) { + alt23=2; } else { NoViableAltException nvae = - new NoViableAltException("", 25, 0, input); + new NoViableAltException("", 23, 0, input); throw nvae; } - switch (alt25) { + switch (alt23) { case 1 : // InternalDSL.g:18274:17: 'T' RULE_TWENTYFOURHRSTIME ( RULE_ISOTIMEZONE )? { match('T'); mRULE_TWENTYFOURHRSTIME(); // InternalDSL.g:18274:44: ( RULE_ISOTIMEZONE )? - int alt24=2; - int LA24_0 = input.LA(1); + int alt22=2; + int LA22_0 = input.LA(1); - if ( (LA24_0=='+'||LA24_0=='-'||LA24_0=='Z') ) { - alt24=1; + if ( (LA22_0=='+'||LA22_0=='-'||LA22_0=='Z') ) { + alt22=1; } - switch (alt24) { + switch (alt22) { case 1 : // InternalDSL.g:18274:44: RULE_ISOTIMEZONE { @@ -2597,22 +2561,22 @@ public final void mRULE_ISOTIMEZONE() throws RecognitionException { // InternalDSL.g:18276:29: ( 'Z' | ( '+' | '-' ) '0' .. '2' '0' .. '9' ( ':' )? '0' .. '5' '0' .. '9' ) { // InternalDSL.g:18276:29: ( 'Z' | ( '+' | '-' ) '0' .. '2' '0' .. '9' ( ':' )? '0' .. '5' '0' .. '9' ) - int alt27=2; - int LA27_0 = input.LA(1); + int alt25=2; + int LA25_0 = input.LA(1); - if ( (LA27_0=='Z') ) { - alt27=1; + if ( (LA25_0=='Z') ) { + alt25=1; } - else if ( (LA27_0=='+'||LA27_0=='-') ) { - alt27=2; + else if ( (LA25_0=='+'||LA25_0=='-') ) { + alt25=2; } else { NoViableAltException nvae = - new NoViableAltException("", 27, 0, input); + new NoViableAltException("", 25, 0, input); throw nvae; } - switch (alt27) { + switch (alt25) { case 1 : // InternalDSL.g:18276:30: 'Z' { @@ -2635,13 +2599,13 @@ else if ( (LA27_0=='+'||LA27_0=='-') ) { matchRange('0','2'); matchRange('0','9'); // InternalDSL.g:18276:62: ( ':' )? - int alt26=2; - int LA26_0 = input.LA(1); + int alt24=2; + int LA24_0 = input.LA(1); - if ( (LA26_0==':') ) { - alt26=1; + if ( (LA24_0==':') ) { + alt24=1; } - switch (alt26) { + switch (alt24) { case 1 : // InternalDSL.g:18276:62: ':' { @@ -2741,13 +2705,13 @@ public final void mRULE_TWENTYFOURHRSTIME() throws RecognitionException { matchRange('0','5'); matchRange('0','9'); // InternalDSL.g:18282:66: ( ':' '0' .. '6' '0' .. '9' ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? )? - int alt29=2; - int LA29_0 = input.LA(1); + int alt27=2; + int LA27_0 = input.LA(1); - if ( (LA29_0==':') ) { - alt29=1; + if ( (LA27_0==':') ) { + alt27=1; } - switch (alt29) { + switch (alt27) { case 1 : // InternalDSL.g:18282:67: ':' '0' .. '6' '0' .. '9' ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? { @@ -2755,13 +2719,13 @@ public final void mRULE_TWENTYFOURHRSTIME() throws RecognitionException { matchRange('0','6'); matchRange('0','9'); // InternalDSL.g:18282:89: ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? - int alt28=2; - int LA28_0 = input.LA(1); + int alt26=2; + int LA26_0 = input.LA(1); - if ( (LA28_0=='.') ) { - alt28=1; + if ( (LA26_0=='.') ) { + alt26=1; } - switch (alt28) { + switch (alt26) { case 1 : // InternalDSL.g:18282:90: '.' '0' .. '9' '0' .. '9' '0' .. '9' { @@ -2806,13 +2770,13 @@ public final void mRULE_TWELVEHRSTIME() throws RecognitionException { matchRange('0','5'); matchRange('0','9'); // InternalDSL.g:18284:62: ( ':' '0' .. '6' '0' .. '9' ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? )? - int alt31=2; - int LA31_0 = input.LA(1); + int alt29=2; + int LA29_0 = input.LA(1); - if ( (LA31_0==':') ) { - alt31=1; + if ( (LA29_0==':') ) { + alt29=1; } - switch (alt31) { + switch (alt29) { case 1 : // InternalDSL.g:18284:63: ':' '0' .. '6' '0' .. '9' ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? { @@ -2820,13 +2784,13 @@ public final void mRULE_TWELVEHRSTIME() throws RecognitionException { matchRange('0','6'); matchRange('0','9'); // InternalDSL.g:18284:85: ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? - int alt30=2; - int LA30_0 = input.LA(1); + int alt28=2; + int LA28_0 = input.LA(1); - if ( (LA30_0=='.') ) { - alt30=1; + if ( (LA28_0=='.') ) { + alt28=1; } - switch (alt30) { + switch (alt28) { case 1 : // InternalDSL.g:18284:86: '.' '0' .. '9' '0' .. '9' '0' .. '9' { @@ -2847,22 +2811,22 @@ public final void mRULE_TWELVEHRSTIME() throws RecognitionException { } // InternalDSL.g:18284:121: ( 'am' | 'pm' ) - int alt32=2; - int LA32_0 = input.LA(1); + int alt30=2; + int LA30_0 = input.LA(1); - if ( (LA32_0=='a') ) { - alt32=1; + if ( (LA30_0=='a') ) { + alt30=1; } - else if ( (LA32_0=='p') ) { - alt32=2; + else if ( (LA30_0=='p') ) { + alt30=2; } else { NoViableAltException nvae = - new NoViableAltException("", 32, 0, input); + new NoViableAltException("", 30, 0, input); throw nvae; } - switch (alt32) { + switch (alt30) { case 1 : // InternalDSL.g:18284:122: 'am' { @@ -2915,9 +2879,9 @@ public final void mRULE_ANY_OTHER() throws RecognitionException { public void mTokens() throws RecognitionException { // InternalDSL.g:1:8: ( 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 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | T__70 | T__71 | T__72 | T__73 | T__74 | T__75 | T__76 | T__77 | T__78 | T__79 | T__80 | T__81 | T__82 | T__83 | T__84 | T__85 | T__86 | T__87 | T__88 | T__89 | RULE_BOOLEAN_TRUE | RULE_BOOLEAN_FALSE | RULE_UPPERCASE_ID | RULE_ID | RULE_INTEGER | RULE_DECIMAL | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_SL_VISIBLE_COMMENT | RULE_SL_VISIBLE_TITLE_COMMENT | RULE_ML_VISIBLE_COMMENT | RULE_ML_VISIBLE_TITLE_COMMENT | RULE_ML_DOC_COMMENT | RULE_DIVIDER | RULE_WS | RULE_NEWLINE | RULE_ISODATE | RULE_ISOTIME | RULE_EURODATE | RULE_USDATE | RULE_TWENTYFOURHRSTIME | RULE_TWELVEHRSTIME | RULE_ANY_OTHER ) - int alt33=85; - alt33 = dfa33.predict(input); - switch (alt33) { + int alt31=85; + alt31 = dfa31.predict(input); + switch (alt31) { case 1 : // InternalDSL.g:1:10: T__29 { @@ -3519,23 +3483,23 @@ public void mTokens() throws RecognitionException { } - protected DFA33 dfa33 = new DFA33(this); - static final String DFA33_eotS = - "\2\uffff\1\66\1\uffff\1\74\1\uffff\1\100\6\103\1\uffff\10\103\2\uffff\1\136\10\uffff\1\103\2\uffff\2\103\1\155\1\62\1\uffff\1\160\2\62\3\uffff\3\160\5\uffff\1\160\11\uffff\2\103\1\uffff\2\103\1\u0085\5\103\1\uffff\15\103\1\u0099\1\103\13\uffff\1\103\2\uffff\2\103\1\155\1\uffff\1\160\5\uffff\3\160\6\uffff\10\103\1\uffff\4\103\1\uffff\16\103\1\uffff\4\103\1\155\1\160\6\uffff\4\103\1\u00ce\5\103\1\u00d4\2\103\1\u00d8\2\103\1\u00db\1\u00dd\5\103\1\u00e3\4\103\1\u00e8\1\u00e9\1\103\1\uffff\1\160\1\uffff\1\157\1\uffff\4\103\1\uffff\4\103\1\u00f7\1\uffff\3\103\1\uffff\2\103\1\uffff\1\103\1\uffff\3\103\1\u0104\1\103\1\uffff\4\103\2\uffff\1\103\1\uffff\1\u010c\1\157\1\u010c\4\103\1\u0114\3\103\2\uffff\13\103\1\uffff\4\103\1\u0127\1\u0128\5\uffff\2\103\1\u012e\1\103\1\uffff\1\103\1\u0131\1\u0132\2\103\1\u0135\1\103\1\u0137\1\u0138\5\103\1\uffff\1\u013e\2\103\4\uffff\3\103\1\uffff\2\103\2\uffff\1\103\1\u0149\1\uffff\1\103\2\uffff\1\103\1\u014c\1\103\1\u014e\1\u014f\1\uffff\1\u0150\1\103\2\u010c\4\103\1\u0158\1\103\1\uffff\1\u015a\1\103\1\uffff\1\103\3\uffff\1\103\2\uffff\1\u0160\1\u0161\2\103\1\uffff\1\u0164\1\uffff\1\103\1\u0166\1\103\4\uffff\1\103\1\u016b\1\uffff\1\u016c\1\uffff\1\103\2\uffff\1\103\2\uffff\1\u0171\2\u010c\1\u0172\2\uffff"; - static final String DFA33_eofS = + protected DFA31 dfa31 = new DFA31(this); + static final String DFA31_eotS = + "\2\uffff\1\67\1\uffff\1\74\1\uffff\1\100\6\103\1\uffff\10\103\2\uffff\1\136\10\uffff\1\103\2\uffff\2\103\1\154\1\62\1\uffff\1\157\2\62\3\uffff\3\157\4\uffff\1\157\12\uffff\2\103\1\uffff\2\103\1\u0085\5\103\1\uffff\15\103\1\u0099\1\103\13\uffff\1\103\2\uffff\2\103\1\uffff\1\154\1\157\5\uffff\3\157\6\uffff\10\103\1\uffff\4\103\1\uffff\16\103\1\uffff\4\103\1\154\1\157\6\uffff\4\103\1\u00ce\5\103\1\u00d4\2\103\1\u00d8\2\103\1\u00db\1\u00dd\5\103\1\u00e3\4\103\1\u00e8\1\u00e9\1\103\1\uffff\1\157\1\uffff\1\160\1\uffff\4\103\1\uffff\4\103\1\u00f7\1\uffff\3\103\1\uffff\2\103\1\uffff\1\103\1\uffff\3\103\1\u0104\1\103\1\uffff\4\103\2\uffff\1\103\1\uffff\1\u010c\1\160\1\u010c\4\103\1\u0114\3\103\2\uffff\13\103\1\uffff\4\103\1\u0127\1\u0128\5\uffff\2\103\1\u012e\1\103\1\uffff\1\103\1\u0131\1\u0132\2\103\1\u0135\1\103\1\u0137\1\u0138\5\103\1\uffff\1\u013e\2\103\4\uffff\3\103\1\uffff\2\103\2\uffff\1\103\1\u0149\1\uffff\1\103\2\uffff\1\103\1\u014c\1\103\1\u014e\1\u014f\1\uffff\1\u0150\1\103\2\u010c\4\103\1\u0158\1\103\1\uffff\1\u015a\1\103\1\uffff\1\103\3\uffff\1\103\2\uffff\1\u0160\1\u0161\2\103\1\uffff\1\u0164\1\uffff\1\103\1\u0166\1\103\4\uffff\1\103\1\u016b\1\uffff\1\u016c\1\uffff\1\103\2\uffff\1\103\2\uffff\1\u0171\2\u010c\1\u0172\2\uffff"; + static final String DFA31_eofS = "\u0173\uffff"; - static final String DFA33_minS = - "\1\0\1\uffff\1\55\1\uffff\1\52\1\uffff\1\52\1\141\1\151\1\155\1\141\1\163\1\141\1\uffff\3\141\1\151\2\145\1\156\1\163\2\uffff\1\60\10\uffff\1\165\2\uffff\1\151\1\141\1\60\1\137\1\uffff\1\56\2\0\3\uffff\3\56\3\uffff\1\40\1\uffff\1\56\1\uffff\1\0\1\uffff\1\40\5\uffff\1\143\1\151\1\uffff\1\164\1\160\1\60\1\162\1\154\1\145\1\163\1\40\1\uffff\1\162\1\163\1\142\1\155\1\165\1\154\1\156\1\145\1\151\1\156\1\164\1\161\1\145\1\60\1\163\13\uffff\1\154\2\uffff\1\166\1\163\1\60\1\uffff\1\56\5\uffff\3\56\1\uffff\1\40\4\uffff\1\153\1\141\1\166\1\147\1\150\1\157\1\164\1\151\1\uffff\1\153\2\163\1\145\1\uffff\1\151\1\164\1\154\2\145\1\154\2\143\1\164\1\147\1\163\2\165\1\162\1\uffff\1\151\1\154\1\145\1\164\1\72\1\56\2\60\1\uffff\1\60\2\uffff\1\141\1\155\1\141\1\162\1\60\1\162\1\151\1\156\1\144\1\145\1\60\1\144\1\141\1\60\1\145\1\163\2\60\1\154\1\164\1\153\1\145\1\154\1\60\1\162\1\151\1\141\1\147\2\60\1\145\1\uffff\1\55\3\60\1\147\1\145\1\164\1\145\1\uffff\1\164\1\141\2\145\1\60\1\uffff\1\40\1\142\1\145\1\uffff\1\164\1\145\1\uffff\1\145\1\uffff\1\165\1\141\1\160\1\60\1\145\1\uffff\1\156\1\162\1\164\1\156\2\uffff\1\162\1\uffff\1\53\1\56\1\53\1\145\1\164\1\145\1\163\1\60\1\154\1\144\1\146\2\uffff\1\164\1\154\1\146\1\145\1\164\1\146\1\144\1\156\1\157\1\145\1\156\1\uffff\1\55\1\163\1\145\1\151\3\60\3\uffff\1\60\1\144\1\145\1\60\1\163\1\uffff\1\154\2\60\1\144\1\145\1\60\1\163\2\60\1\145\1\164\1\151\1\146\1\144\1\uffff\1\60\1\163\1\157\2\uffff\2\60\1\145\1\156\1\162\1\uffff\1\151\1\171\2\uffff\1\145\1\60\1\uffff\1\164\2\uffff\1\144\1\60\1\156\2\60\1\uffff\1\60\1\156\2\53\1\146\1\144\1\151\1\156\1\60\1\146\1\uffff\1\60\1\142\1\uffff\1\164\3\uffff\1\144\4\60\1\172\1\147\1\uffff\1\60\1\uffff\1\171\1\60\1\145\2\60\2\uffff\1\145\1\60\1\uffff\1\60\1\uffff\1\146\2\60\1\144\2\uffff\1\60\2\53\1\60\2\uffff"; - static final String DFA33_maxS = - "\1\uffff\1\uffff\1\76\1\uffff\1\57\1\uffff\1\56\1\162\1\151\1\156\1\157\1\163\1\171\1\uffff\1\141\1\162\1\157\1\165\2\145\1\160\1\163\2\uffff\1\172\10\uffff\1\165\2\uffff\1\151\1\141\1\62\1\172\1\uffff\1\71\2\uffff\3\uffff\3\71\3\uffff\1\55\1\uffff\1\71\1\uffff\1\uffff\1\uffff\1\55\5\uffff\1\162\1\157\1\uffff\1\164\1\160\1\172\1\162\1\154\1\145\1\163\1\40\1\uffff\1\162\1\163\1\142\1\155\1\165\1\154\1\156\1\145\1\151\1\156\2\164\1\145\1\172\1\163\13\uffff\1\154\2\uffff\1\166\1\163\1\71\1\uffff\1\72\5\uffff\2\71\1\72\1\uffff\1\55\4\uffff\1\153\1\141\1\166\1\147\1\150\1\157\1\164\1\151\1\uffff\1\153\2\163\1\145\1\uffff\1\151\1\164\1\154\2\145\1\154\1\163\1\143\1\164\1\147\1\163\2\165\1\162\1\uffff\1\151\1\154\1\145\1\164\1\72\1\71\1\65\1\71\1\uffff\1\65\2\uffff\1\141\1\155\1\141\1\162\1\172\1\162\1\151\1\156\1\144\1\145\1\172\1\144\1\141\1\172\1\145\1\163\2\172\1\154\1\164\1\153\1\145\1\154\1\172\1\162\1\151\1\141\1\147\2\172\1\145\1\uffff\4\71\1\147\1\145\1\164\1\145\1\uffff\1\164\1\141\2\145\1\172\1\uffff\1\40\1\156\1\145\1\uffff\1\164\1\145\1\uffff\1\145\1\uffff\1\165\1\141\1\160\1\172\1\145\1\uffff\1\156\1\162\1\164\1\156\2\uffff\1\162\1\uffff\1\160\1\56\1\132\1\145\1\164\1\145\1\163\1\172\1\154\1\144\1\146\2\uffff\1\164\1\154\1\146\1\145\1\164\1\146\1\144\1\156\1\157\1\145\1\156\1\uffff\1\55\1\163\1\145\1\151\2\172\1\66\3\uffff\1\66\2\145\1\172\1\163\1\uffff\1\154\2\172\1\144\1\145\1\172\1\163\2\172\1\145\1\164\1\151\1\146\1\144\1\uffff\1\172\1\163\1\157\2\uffff\2\71\1\145\1\156\1\162\1\uffff\1\151\1\171\2\uffff\1\145\1\172\1\uffff\1\164\2\uffff\1\144\1\172\1\156\2\172\1\uffff\1\172\1\156\1\160\1\132\1\146\1\144\1\151\1\156\1\172\1\146\1\uffff\1\172\1\142\1\uffff\1\164\3\uffff\1\144\2\71\3\172\1\147\1\uffff\1\172\1\uffff\1\171\1\172\1\145\2\71\2\uffff\1\145\1\172\1\uffff\1\172\1\uffff\1\146\2\71\1\144\2\uffff\1\172\1\160\1\132\1\172\2\uffff"; - static final String DFA33_acceptS = - "\1\uffff\1\1\1\uffff\1\3\1\uffff\1\5\7\uffff\1\16\10\uffff\1\41\1\43\1\uffff\1\50\1\52\1\53\1\54\1\55\1\56\1\57\1\60\1\uffff\1\62\1\63\4\uffff\1\101\3\uffff\1\115\1\116\1\100\3\uffff\1\125\1\1\1\36\1\uffff\1\2\1\uffff\1\3\1\uffff\1\106\1\uffff\1\4\1\5\1\6\1\65\1\64\2\uffff\1\101\10\uffff\1\16\17\uffff\1\41\1\43\1\46\1\50\1\52\1\53\1\54\1\55\1\56\1\57\1\60\1\uffff\1\62\1\63\3\uffff\1\100\1\uffff\1\103\1\102\1\104\1\115\1\116\3\uffff\1\107\1\uffff\1\105\1\113\1\111\1\112\10\uffff\1\37\4\uffff\1\30\16\uffff\1\47\10\uffff\1\122\1\uffff\1\110\1\114\37\uffff\1\120\10\uffff\1\10\5\uffff\1\14\3\uffff\1\40\2\uffff\1\76\1\uffff\1\44\5\uffff\1\24\4\uffff\1\61\1\73\1\uffff\1\117\13\uffff\1\77\1\15\13\uffff\1\51\7\uffff\1\123\1\124\1\121\5\uffff\1\12\16\uffff\1\67\3\uffff\1\35\1\75\5\uffff\1\66\2\uffff\1\70\1\13\2\uffff\1\20\1\uffff\1\45\1\21\5\uffff\1\25\12\uffff\1\32\2\uffff\1\34\1\uffff\1\22\1\23\1\26\7\uffff\1\33\1\uffff\1\42\5\uffff\1\7\1\11\2\uffff\1\17\1\uffff\1\72\4\uffff\1\74\1\27\4\uffff\1\31\1\71"; - static final String DFA33_specialS = - "\1\1\51\uffff\1\3\1\0\15\uffff\1\2\u0139\uffff}>"; - static final String[] DFA33_transitionS = { + static final String DFA31_minS = + "\1\0\1\uffff\1\55\1\uffff\1\52\1\uffff\1\52\1\141\1\151\1\155\1\141\1\163\1\141\1\uffff\3\141\1\151\2\145\1\156\1\163\2\uffff\1\60\10\uffff\1\165\2\uffff\1\151\1\141\1\60\1\137\1\uffff\1\56\2\0\3\uffff\3\56\3\uffff\1\40\1\56\2\uffff\1\0\1\uffff\1\40\5\uffff\1\143\1\151\1\uffff\1\164\1\160\1\60\1\162\1\154\1\145\1\163\1\40\1\uffff\1\162\1\163\1\142\1\155\1\165\1\154\1\156\1\145\1\151\1\156\1\164\1\161\1\145\1\60\1\163\13\uffff\1\154\2\uffff\1\166\1\163\1\uffff\1\60\1\56\5\uffff\3\56\1\uffff\1\40\4\uffff\1\153\1\141\1\166\1\147\1\150\1\157\1\164\1\151\1\uffff\1\153\2\163\1\145\1\uffff\1\151\1\164\1\154\2\145\1\154\2\143\1\164\1\147\1\163\2\165\1\162\1\uffff\1\151\1\154\1\145\1\164\1\72\1\56\2\60\1\uffff\1\60\2\uffff\1\141\1\155\1\141\1\162\1\60\1\162\1\151\1\156\1\144\1\145\1\60\1\144\1\141\1\60\1\145\1\163\2\60\1\154\1\164\1\153\1\145\1\154\1\60\1\162\1\151\1\141\1\147\2\60\1\145\1\uffff\1\55\3\60\1\147\1\145\1\164\1\145\1\uffff\1\164\1\141\2\145\1\60\1\uffff\1\40\1\142\1\145\1\uffff\1\164\1\145\1\uffff\1\145\1\uffff\1\165\1\141\1\160\1\60\1\145\1\uffff\1\156\1\162\1\164\1\156\2\uffff\1\162\1\uffff\1\53\1\56\1\53\1\145\1\164\1\145\1\163\1\60\1\154\1\144\1\146\2\uffff\1\164\1\154\1\146\1\145\1\164\1\146\1\144\1\156\1\157\1\145\1\156\1\uffff\1\55\1\163\1\145\1\151\3\60\3\uffff\1\60\1\144\1\145\1\60\1\163\1\uffff\1\154\2\60\1\144\1\145\1\60\1\163\2\60\1\145\1\164\1\151\1\146\1\144\1\uffff\1\60\1\163\1\157\2\uffff\2\60\1\145\1\156\1\162\1\uffff\1\151\1\171\2\uffff\1\145\1\60\1\uffff\1\164\2\uffff\1\144\1\60\1\156\2\60\1\uffff\1\60\1\156\2\53\1\146\1\144\1\151\1\156\1\60\1\146\1\uffff\1\60\1\142\1\uffff\1\164\3\uffff\1\144\4\60\1\172\1\147\1\uffff\1\60\1\uffff\1\171\1\60\1\145\2\60\2\uffff\1\145\1\60\1\uffff\1\60\1\uffff\1\146\2\60\1\144\2\uffff\1\60\2\53\1\60\2\uffff"; + static final String DFA31_maxS = + "\1\uffff\1\uffff\1\76\1\uffff\1\57\1\uffff\1\56\1\162\1\151\1\156\1\157\1\163\1\171\1\uffff\1\141\1\162\1\157\1\165\2\145\1\160\1\163\2\uffff\1\172\10\uffff\1\165\2\uffff\1\151\1\141\1\62\1\172\1\uffff\1\71\2\uffff\3\uffff\3\71\3\uffff\1\55\1\71\2\uffff\1\uffff\1\uffff\1\55\5\uffff\1\162\1\157\1\uffff\1\164\1\160\1\172\1\162\1\154\1\145\1\163\1\40\1\uffff\1\162\1\163\1\142\1\155\1\165\1\154\1\156\1\145\1\151\1\156\2\164\1\145\1\172\1\163\13\uffff\1\154\2\uffff\1\166\1\163\1\uffff\1\71\1\72\5\uffff\2\71\1\72\1\uffff\1\55\4\uffff\1\153\1\141\1\166\1\147\1\150\1\157\1\164\1\151\1\uffff\1\153\2\163\1\145\1\uffff\1\151\1\164\1\154\2\145\1\154\1\163\1\143\1\164\1\147\1\163\2\165\1\162\1\uffff\1\151\1\154\1\145\1\164\1\72\1\71\1\65\1\71\1\uffff\1\65\2\uffff\1\141\1\155\1\141\1\162\1\172\1\162\1\151\1\156\1\144\1\145\1\172\1\144\1\141\1\172\1\145\1\163\2\172\1\154\1\164\1\153\1\145\1\154\1\172\1\162\1\151\1\141\1\147\2\172\1\145\1\uffff\4\71\1\147\1\145\1\164\1\145\1\uffff\1\164\1\141\2\145\1\172\1\uffff\1\40\1\156\1\145\1\uffff\1\164\1\145\1\uffff\1\145\1\uffff\1\165\1\141\1\160\1\172\1\145\1\uffff\1\156\1\162\1\164\1\156\2\uffff\1\162\1\uffff\1\160\1\56\1\132\1\145\1\164\1\145\1\163\1\172\1\154\1\144\1\146\2\uffff\1\164\1\154\1\146\1\145\1\164\1\146\1\144\1\156\1\157\1\145\1\156\1\uffff\1\55\1\163\1\145\1\151\2\172\1\66\3\uffff\1\66\2\145\1\172\1\163\1\uffff\1\154\2\172\1\144\1\145\1\172\1\163\2\172\1\145\1\164\1\151\1\146\1\144\1\uffff\1\172\1\163\1\157\2\uffff\2\71\1\145\1\156\1\162\1\uffff\1\151\1\171\2\uffff\1\145\1\172\1\uffff\1\164\2\uffff\1\144\1\172\1\156\2\172\1\uffff\1\172\1\156\1\160\1\132\1\146\1\144\1\151\1\156\1\172\1\146\1\uffff\1\172\1\142\1\uffff\1\164\3\uffff\1\144\2\71\3\172\1\147\1\uffff\1\172\1\uffff\1\171\1\172\1\145\2\71\2\uffff\1\145\1\172\1\uffff\1\172\1\uffff\1\146\2\71\1\144\2\uffff\1\172\1\160\1\132\1\172\2\uffff"; + static final String DFA31_acceptS = + "\1\uffff\1\1\1\uffff\1\3\1\uffff\1\5\7\uffff\1\16\10\uffff\1\41\1\43\1\uffff\1\50\1\52\1\53\1\54\1\55\1\56\1\57\1\60\1\uffff\1\62\1\63\4\uffff\1\101\3\uffff\1\115\1\116\1\100\3\uffff\1\125\1\1\1\36\2\uffff\1\2\1\3\1\uffff\1\106\1\uffff\1\4\1\5\1\6\1\65\1\64\2\uffff\1\101\10\uffff\1\16\17\uffff\1\41\1\43\1\46\1\50\1\52\1\53\1\54\1\55\1\56\1\57\1\60\1\uffff\1\62\1\63\2\uffff\1\100\2\uffff\1\102\1\103\1\104\1\115\1\116\3\uffff\1\107\1\uffff\1\105\1\113\1\111\1\112\10\uffff\1\37\4\uffff\1\30\16\uffff\1\47\10\uffff\1\122\1\uffff\1\110\1\114\37\uffff\1\120\10\uffff\1\10\5\uffff\1\14\3\uffff\1\40\2\uffff\1\76\1\uffff\1\44\5\uffff\1\24\4\uffff\1\61\1\73\1\uffff\1\117\13\uffff\1\77\1\15\13\uffff\1\51\7\uffff\1\123\1\124\1\121\5\uffff\1\12\16\uffff\1\67\3\uffff\1\35\1\75\5\uffff\1\66\2\uffff\1\70\1\13\2\uffff\1\20\1\uffff\1\45\1\21\5\uffff\1\25\12\uffff\1\32\2\uffff\1\34\1\uffff\1\22\1\23\1\26\7\uffff\1\33\1\uffff\1\42\5\uffff\1\7\1\11\2\uffff\1\17\1\uffff\1\72\4\uffff\1\74\1\27\4\uffff\1\31\1\71"; + static final String DFA31_specialS = + "\1\3\51\uffff\1\2\1\0\15\uffff\1\1\u0139\uffff}>"; + static final String[] DFA31_transitionS = { "\11\62\1\54\1\55\2\62\1\55\22\62\1\54\1\62\1\52\1\40\1\62\1\5\1\62\1\53\1\32\1\33\1\3\1\1\1\31\1\2\1\6\1\4\2\51\1\61\1\57\6\60\1\15\1\62\1\36\1\26\1\37\2\62\23\56\1\46\6\56\1\34\1\62\1\35\1\47\1\50\1\62\1\25\1\14\1\20\2\50\1\12\1\22\1\50\1\11\2\50\1\44\1\45\1\41\1\24\1\7\1\50\1\23\1\21\1\17\1\13\1\16\1\10\1\30\2\50\1\42\1\27\1\43\uff82\62", "", - "\1\65\2\uffff\12\67\4\uffff\1\64", + "\1\65\2\uffff\12\66\4\uffff\1\64", "", "\1\71\2\uffff\1\73\1\uffff\1\72", "", @@ -3571,24 +3535,24 @@ public void mTokens() throws RecognitionException { "", "\1\152", "\1\153", - "\3\154", + "\3\155", "\1\103\1\uffff\32\103", "", - "\1\157\1\uffff\12\156", + "\1\160\1\uffff\12\156", "\0\161", "\0\161", "", "", "", - "\1\157\1\uffff\12\164", - "\1\157\1\uffff\12\165", - "\1\157\1\uffff\12\166", + "\1\160\1\uffff\12\164", + "\1\160\1\uffff\12\165", + "\1\160\1\uffff\12\166", "", "", "", "\1\167\14\uffff\1\170", + "\1\160\1\uffff\12\66", "", - "\1\157\1\uffff\12\67", "", "\52\171\1\172\uffd5\171", "", @@ -3641,8 +3605,8 @@ public void mTokens() throws RecognitionException { "", "\1\u009c", "\1\u009d", - "\12\u009e", "", + "\12\u009e", "\1\u00a1\1\u00a2\12\u009f\1\u00a0", "", "", @@ -3650,7 +3614,7 @@ public void mTokens() throws RecognitionException { "", "", "\1\u00a1\1\uffff\12\u009f", - "\1\157\1\uffff\12\u009f", + "\1\160\1\uffff\12\u009f", "\1\u00a1\1\uffff\12\u009f\1\u00a3", "", "\1\u00a4\14\uffff\1\u00a5", @@ -3692,9 +3656,9 @@ public void mTokens() throws RecognitionException { "\1\u00c3", "\1\u00c4", "\1\u00c5", - "\1\157\1\uffff\12\u00c6", + "\1\160\1\uffff\12\u00c6", "\6\u00c7", - "\2\u00c8\10\157", + "\2\u00c8\10\160", "", "\6\u00c9", "", @@ -3731,7 +3695,7 @@ public void mTokens() throws RecognitionException { "\12\103\7\uffff\32\103\4\uffff\1\103\1\uffff\32\103", "\1\u00ea", "", - "\1\u00eb\1\157\1\uffff\12\67", + "\1\u00eb\1\160\1\uffff\12\66", "\12\u00ec", "\12\u00ed", "\12\u00ee", @@ -3906,34 +3870,34 @@ public void mTokens() throws RecognitionException { "" }; - static final short[] DFA33_eot = DFA.unpackEncodedString(DFA33_eotS); - static final short[] DFA33_eof = DFA.unpackEncodedString(DFA33_eofS); - static final char[] DFA33_min = DFA.unpackEncodedStringToUnsignedChars(DFA33_minS); - static final char[] DFA33_max = DFA.unpackEncodedStringToUnsignedChars(DFA33_maxS); - static final short[] DFA33_accept = DFA.unpackEncodedString(DFA33_acceptS); - static final short[] DFA33_special = DFA.unpackEncodedString(DFA33_specialS); - static final short[][] DFA33_transition; + static final short[] DFA31_eot = DFA.unpackEncodedString(DFA31_eotS); + static final short[] DFA31_eof = DFA.unpackEncodedString(DFA31_eofS); + static final char[] DFA31_min = DFA.unpackEncodedStringToUnsignedChars(DFA31_minS); + static final char[] DFA31_max = DFA.unpackEncodedStringToUnsignedChars(DFA31_maxS); + static final short[] DFA31_accept = DFA.unpackEncodedString(DFA31_acceptS); + static final short[] DFA31_special = DFA.unpackEncodedString(DFA31_specialS); + static final short[][] DFA31_transition; static { - int numStates = DFA33_transitionS.length; - DFA33_transition = new short[numStates][]; + int numStates = DFA31_transitionS.length; + DFA31_transition = new short[numStates][]; for (int i=0; i='\u0000' && LA33_43<='\uFFFF')) ) {s = 113;} + if ( ((LA31_43>='\u0000' && LA31_43<='\uFFFF')) ) {s = 113;} else s = 50; if ( s>=0 ) return s; break; case 1 : - int LA33_0 = input.LA(1); + int LA31_57 = input.LA(1); s = -1; - if ( (LA33_0=='+') ) {s = 1;} + if ( ((LA31_57>='\u0000' && LA31_57<=')')||(LA31_57>='+' && LA31_57<='\uFFFF')) ) {s = 121;} - else if ( (LA33_0=='-') ) {s = 2;} + else if ( (LA31_57=='*') ) {s = 122;} - else if ( (LA33_0=='*') ) {s = 3;} + if ( s>=0 ) return s; + break; + case 2 : + int LA31_42 = input.LA(1); - else if ( (LA33_0=='/') ) {s = 4;} + s = -1; + if ( ((LA31_42>='\u0000' && LA31_42<='\uFFFF')) ) {s = 113;} - else if ( (LA33_0=='%') ) {s = 5;} + else s = 50; - else if ( (LA33_0=='.') ) {s = 6;} + if ( s>=0 ) return s; + break; + case 3 : + int LA31_0 = input.LA(1); - else if ( (LA33_0=='p') ) {s = 7;} + s = -1; + if ( (LA31_0=='+') ) {s = 1;} - else if ( (LA33_0=='w') ) {s = 8;} + else if ( (LA31_0=='-') ) {s = 2;} - else if ( (LA33_0=='i') ) {s = 9;} + else if ( (LA31_0=='*') ) {s = 3;} - else if ( (LA33_0=='f') ) {s = 10;} + else if ( (LA31_0=='/') ) {s = 4;} - else if ( (LA33_0=='u') ) {s = 11;} + else if ( (LA31_0=='%') ) {s = 5;} - else if ( (LA33_0=='b') ) {s = 12;} + else if ( (LA31_0=='.') ) {s = 6;} - else if ( (LA33_0==':') ) {s = 13;} + else if ( (LA31_0=='p') ) {s = 7;} - else if ( (LA33_0=='v') ) {s = 14;} + else if ( (LA31_0=='w') ) {s = 8;} - else if ( (LA33_0=='t') ) {s = 15;} + else if ( (LA31_0=='i') ) {s = 9;} - else if ( (LA33_0=='c') ) {s = 16;} + else if ( (LA31_0=='f') ) {s = 10;} - else if ( (LA33_0=='s') ) {s = 17;} + else if ( (LA31_0=='u') ) {s = 11;} - else if ( (LA33_0=='g') ) {s = 18;} + else if ( (LA31_0=='b') ) {s = 12;} - else if ( (LA33_0=='r') ) {s = 19;} + else if ( (LA31_0==':') ) {s = 13;} - else if ( (LA33_0=='o') ) {s = 20;} + else if ( (LA31_0=='v') ) {s = 14;} - else if ( (LA33_0=='a') ) {s = 21;} + else if ( (LA31_0=='t') ) {s = 15;} - else if ( (LA33_0=='=') ) {s = 22;} + else if ( (LA31_0=='c') ) {s = 16;} - else if ( (LA33_0=='|') ) {s = 23;} + else if ( (LA31_0=='s') ) {s = 17;} - else if ( (LA33_0=='x') ) {s = 24;} + else if ( (LA31_0=='g') ) {s = 18;} - else if ( (LA33_0==',') ) {s = 25;} + else if ( (LA31_0=='r') ) {s = 19;} - else if ( (LA33_0=='(') ) {s = 26;} + else if ( (LA31_0=='o') ) {s = 20;} - else if ( (LA33_0==')') ) {s = 27;} + else if ( (LA31_0=='a') ) {s = 21;} - else if ( (LA33_0=='[') ) {s = 28;} + else if ( (LA31_0=='=') ) {s = 22;} - else if ( (LA33_0==']') ) {s = 29;} + else if ( (LA31_0=='|') ) {s = 23;} - else if ( (LA33_0=='<') ) {s = 30;} + else if ( (LA31_0=='x') ) {s = 24;} - else if ( (LA33_0=='>') ) {s = 31;} + else if ( (LA31_0==',') ) {s = 25;} - else if ( (LA33_0=='#') ) {s = 32;} + else if ( (LA31_0=='(') ) {s = 26;} - else if ( (LA33_0=='n') ) {s = 33;} + else if ( (LA31_0==')') ) {s = 27;} - else if ( (LA33_0=='{') ) {s = 34;} + else if ( (LA31_0=='[') ) {s = 28;} - else if ( (LA33_0=='}') ) {s = 35;} + else if ( (LA31_0==']') ) {s = 29;} - else if ( (LA33_0=='l') ) {s = 36;} + else if ( (LA31_0=='<') ) {s = 30;} - else if ( (LA33_0=='m') ) {s = 37;} + else if ( (LA31_0=='>') ) {s = 31;} - else if ( (LA33_0=='T') ) {s = 38;} + else if ( (LA31_0=='#') ) {s = 32;} - else if ( (LA33_0=='^') ) {s = 39;} + else if ( (LA31_0=='n') ) {s = 33;} - else if ( (LA33_0=='_'||(LA33_0>='d' && LA33_0<='e')||LA33_0=='h'||(LA33_0>='j' && LA33_0<='k')||LA33_0=='q'||(LA33_0>='y' && LA33_0<='z')) ) {s = 40;} + else if ( (LA31_0=='{') ) {s = 34;} - else if ( ((LA33_0>='0' && LA33_0<='1')) ) {s = 41;} + else if ( (LA31_0=='}') ) {s = 35;} - else if ( (LA33_0=='\"') ) {s = 42;} + else if ( (LA31_0=='l') ) {s = 36;} - else if ( (LA33_0=='\'') ) {s = 43;} + else if ( (LA31_0=='m') ) {s = 37;} - else if ( (LA33_0=='\t'||LA33_0==' ') ) {s = 44;} + else if ( (LA31_0=='T') ) {s = 38;} - else if ( (LA33_0=='\n'||LA33_0=='\r') ) {s = 45;} + else if ( (LA31_0=='^') ) {s = 39;} - else if ( ((LA33_0>='A' && LA33_0<='S')||(LA33_0>='U' && LA33_0<='Z')) ) {s = 46;} + else if ( (LA31_0=='_'||(LA31_0>='d' && LA31_0<='e')||LA31_0=='h'||(LA31_0>='j' && LA31_0<='k')||LA31_0=='q'||(LA31_0>='y' && LA31_0<='z')) ) {s = 40;} - else if ( (LA33_0=='3') ) {s = 47;} + else if ( ((LA31_0>='0' && LA31_0<='1')) ) {s = 41;} - else if ( ((LA33_0>='4' && LA33_0<='9')) ) {s = 48;} + else if ( (LA31_0=='\"') ) {s = 42;} - else if ( (LA33_0=='2') ) {s = 49;} + else if ( (LA31_0=='\'') ) {s = 43;} - else if ( ((LA33_0>='\u0000' && LA33_0<='\b')||(LA33_0>='\u000B' && LA33_0<='\f')||(LA33_0>='\u000E' && LA33_0<='\u001F')||LA33_0=='!'||LA33_0=='$'||LA33_0=='&'||LA33_0==';'||(LA33_0>='?' && LA33_0<='@')||LA33_0=='\\'||LA33_0=='`'||(LA33_0>='~' && LA33_0<='\uFFFF')) ) {s = 50;} + else if ( (LA31_0=='\t'||LA31_0==' ') ) {s = 44;} - if ( s>=0 ) return s; - break; - case 2 : - int LA33_57 = input.LA(1); + else if ( (LA31_0=='\n'||LA31_0=='\r') ) {s = 45;} - s = -1; - if ( ((LA33_57>='\u0000' && LA33_57<=')')||(LA33_57>='+' && LA33_57<='\uFFFF')) ) {s = 121;} + else if ( ((LA31_0>='A' && LA31_0<='S')||(LA31_0>='U' && LA31_0<='Z')) ) {s = 46;} - else if ( (LA33_57=='*') ) {s = 122;} + else if ( (LA31_0=='3') ) {s = 47;} - if ( s>=0 ) return s; - break; - case 3 : - int LA33_42 = input.LA(1); + else if ( ((LA31_0>='4' && LA31_0<='9')) ) {s = 48;} - s = -1; - if ( ((LA33_42>='\u0000' && LA33_42<='\uFFFF')) ) {s = 113;} + else if ( (LA31_0=='2') ) {s = 49;} - else s = 50; + else if ( ((LA31_0>='\u0000' && LA31_0<='\b')||(LA31_0>='\u000B' && LA31_0<='\f')||(LA31_0>='\u000E' && LA31_0<='\u001F')||LA31_0=='!'||LA31_0=='$'||LA31_0=='&'||LA31_0==';'||(LA31_0>='?' && LA31_0<='@')||LA31_0=='\\'||LA31_0=='`'||(LA31_0>='~' && LA31_0<='\uFFFF')) ) {s = 50;} if ( s>=0 ) return s; break; } NoViableAltException nvae = - new NoViableAltException(getDescription(), 33, _s, input); + new NoViableAltException(getDescription(), 31, _s, input); error(nvae); throw nvae; } diff --git a/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/DSL.xtextbin b/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/DSL.xtextbin index e69282b8ba972d33b9457cd22e0e423cb7d38362..4057b62670f0dbe0eba54812168f42a6cc8288c6 100644 GIT binary patch literal 17682 zcma)Ed7KVY1svhRn{aGqbt4 zZ@CXS#Saigd!nf?Q|zY`;Jn0~RDF;O27-LKAl^aaqS&)wOJy-`VRl3MY|tYDBV0)YdF17KR3gMJ1cT<)mke7E#yS8EnXugMQN} zsd@l2EznB2vxOKd>Kj+&%h}wB`f-#nI}OERJT>5O| zBQl#aE0@vxCA3rhiJJ$^vzR6tCM*f^0mSYwVs?dw9naI5ed7)U8y}pQ?1uW zgHtB#_q5zXd_pwWQ-R9la;X$`&lHUbr?bP^EAsc=qIRTS}sQmzBJ`mTo8!~5qW7q)+XH2p_owkJ{c_4g{JP1%~ ztu%2k*k+1DL`!PCEeZNNG0>C-Gkrl#Vqxu}s9ylFQ;!-#k3q*X)vL1QjjOV`es(42 zlaa-TF&-C!VG$Twsu-NZBO=!&mFt1bm2jNXt{qp!wVD83U(}3p(Hh|{WJ@xAlnn=xm0{btt5`Z$xJO(2Oyx1K zCUJPmnT!4&{<+7ZekK@?6D`%2&Q3L!%IG>~OsZiMyT?=3YWTFFC#rGWHKu*twQS&~ zbULmPN%sV}Dd}d&wGLe4!|_yej>t0f9kDki7XJ0gOXO(q(0h`+kN0_L=Q*$5w?@I1n! z6+^D>Qt`0s7UEDDG_0S3!;|URvxQp}^(nW6*Kpi~cgqk1FXPW0LPaB@nv)i0OW|%d zb?z3ZHlvQwyA_3tK)nsrsV#_d;cmBdC(#i*Xq=N#?VbWRj0>F@w}j)KYF%&|T`(c` za!dg8Pe)VLyJt|wnUK-CxKP|w*-mF!31?HnxOBR@8vN&&MmqN+8|ges-Ux#}ZAt0| zi`mVHE@SNZFfu9t$pw5}4*JixPWuR*64@!N->>vZo zh`*e=uRt5t_VjkQcP??<&%|warRm960e#ZF8hR6Z2=^M>J0160)3DdE_;}%d7NiaC z^?X|=+|Tj1EZqO$Z(g`J@E5IlBY%s+y@|g=!u>pdA@pYc?k(Ie@b`EI!WTtd%Du(t z|B@|qzif$F`<3v~z13j5jjv$8J;HW}!S>aV@oNU#oqPkfuk#n!zQJE$yNkcTb~k^4 z?H>LD+r9h+w)^-C;rH{`V0(brzG<*MXbatkED^DND}Kbw!=?#@`|YR=zGK+FYhZs5 zl&PUoP!jIbx%a{Az%Iopha%y=oX8Vb0x}S0o{~4J$ z#=pb|j`2T_riNdz{^h9tmr?yIEPj=58L<5?A2_xAiVv6?e$DFN@P$*uYkUZ&1~i=g zbAM}KzmB^4b(vDoKcj#cc>}O#3inO;(Uh`>8(+R9#-`lg*(Nv}GT%1lQk469!z0{3 zM3c@R!HuyED}?}4V#&@Lf1*R)fk#^?6B(4Pb=*H&p?_h!jb26>+*egI~K#=jUEQ%q=h zF;yH!u>aqLAVXLF$9TZ~kbYhu-2a+aZwz$U#GRl$fl@C4(9>2jneQt4`JsXEvCE`T zoC-b1p!bqQKRuoP7+R6^Qs`t!uZEIqA-Tp-J6@fYQBN7jK20g88$g}%8cE#*>L!l- z*}jmc+48iIr^Qa-VI4SI!P(%ACFeNH$)!!mIo@(kh&kgra8861no4FRWXO#xc7h-b z#rX3kQRZaGY;NZgGAM>ZceX;OP-rU>#)?WvoeHVVCRq;|jM!Z$Ya04oU3+J*zr^o$ zyj>wC>3Gu#vbU+u<1~uO?bPD*6QqMPRiRO>_y(5RlUeVf}Zl2 zlQ(14k{!t8Lf}l#r#ar@L7~Ko4~cN+Lw79jyJ~w-?svIC<;>A z06gW*9R{8Ta3uF0db{cJ-hLriZ$2O93UB|A;(&va*uy+t4987a$p^ytQ`Out0 ztT~5<=2TV!$O4+Pu7bgs^GOc<-eHuukRzb%>gw>l&b7VWD}2XWWGur<)jJ#zQsv@M zz(8od6$8TjXEGWkH=fTed3LSAekFCk>4qHzs0E;aq7 zom@wlm@5_HYR5a$GIm5US5XPxWw5oOKT=~1?WCYC6L39U+Uo_{s7Lxa^;oqrn64+<1Seh;?5kU*W#I zbzgz*LlQrV0zMoZ?ZZz|WD!2B_g8d>PAtVvEE^{d5!2=f)0PP8Ru(fg<}BxJ521P| z@c|)!GOJICs!!zu-Eta>PmhYv-~-)qCLh3c7OOGCS)u1d)#tMKyr}roQStdKW~OQ& zTo@H!#Nvyi;!DEf(21AQ;>+N~rWHLE?z`N&?+UsPLsdl`9QT>gj=Pd#u7cxgL26>} z>ey}97`I(Z6ee$_e?ChTbinm2Hi;{XP3B4m+`#&@@NQ)FO%e9b^MP@3GmF0v6@QTr zWKD~oTBxb9%F$y!@EH-&7gv5W|T{QV_ zcK6=wK-Asuv3|QZ?Cx<5ymp`I?)Q`Hfv~&B)sFW~%lP1McaJN<`w%@|j?|d${w)f6 zIPC7d?aR>Jza6{W+4UX)!}#7+*rYpVao39OrQJQ2_0gF1F|<~# z_X8ULcx3z&e3%apKFQ)AM#Vqk10DMm9~KDjX;wcIRX@vz15y1Pi%l*{Pd*=Uyb({f|CYr}J53|M5f+Di<4tTvVF~BG1*bK&_jJ)!$97>K%VX|oHaNYv&GhnnG9D{D zWSwx{A5GbxST;v^@9?(`cKn&T{=zpR`zs&l(|1|?x2X6%KG3Is4<}T(^&h18XGHNn zAL!N(Sp2W3_}?L;!S4MBKpgKw+vFZ|Kv)s}$uW3Ewus${9_(x7g82t5EtcYNb7aEA zqI4LG*qzuBkx0tqsF;)~s}Fi4(?H2IFx0W%{AwLGE0iWHjCE8KK}W-A9n2VI6I!GN zVcfCOk3v{7XEbdhTVQ;hY=wK|*w8(493L>?$nh+m5EV}hy(V|!!vY~Ev3hb;Z8nJE zYdM9*Q={TtBCcs+2+LhV_UWYCEux#j2ZXRhE|-!~@+S9;*gp}5u$;+~xkB#65SDwB zdY?$htcZFxi|0heX6qDzBHLIzH!4nt)NF%!j6=B}N}SAqkj%cE!GS0YNU=Yic>r2z z9LIhy-(L|02MXqn@*qY5HfTl?pmh$0{FFR|G7g1|iS0H=sTQ-qiuokPOhWEFng){0 z?xLgSBNpG0#MiL{eAOZE$YmB^=Z^7JQv+X@!MA)gzM~?1 z-4OQD;WWQ)iNt}qWq1ThD)>1(r zQ_NHzvS_y4Nby;SA8+j1mlVM69%PCYhi zjS$Y!vOxKRkUy!CJ6^dv@>5nvkvev+))7-dPs!*hLw>xUB!{p;AUA`bdq<*1Zh&xcE$>hoqjhFQ9bD)gI=^S(0D zX!&U~5{RC?qC5_hIEFK#J4F5{}ur)}0vil^uDh zRec#%V-a6j3B;EJaY|l6*PSHfXCMQe`bw(CF_pXuDjQ>!b`wcnO-0vG5l%);&@9hn zi;le3D!MLIR9Oi{pM|0tdA%8$KS!}yoJyC&V_U?`|3E7Da^wxD9A`Hx+N()!B*_)D z^(KqcRd6v=yF-gus|_E)y6Bk#4Q+(%Q;iAPZY_WhwUZ%T$n@BE+z{>CN^}7Jp5O1zI@_QE0_X!AtS6l-i+=gxl zqJ20c@lp1f$G|exkv{;7!$D&60J(U~iPq}KVplVhLx*{sSZ(i>Pf+!fR6V?zC%Ms# z?#hj3s*Y=*`Y98RPm}8zdJ>y)`F@;V#x#z6)^a}=dU6y6r2H73td-BxRr?6}0;IuJ zFVa=(v&B-`2+Q{y!+wHF6Ba+UR6nylEhS%~6AIxWZWspGe}-I>_|FmYWy)_8(xm;f zg?xqYX(3VdW>__7`NOC{AWw40z#;uhO;f^#q zsgUo4VEzocMw~W<$CActe_=TM)#`tj`jJq@$cB%`5DeUuHlyczcJxfjzZ<#oAAn^K z?51INq(`SLIpNB-B~Rb#@y z8ATzIN-%I#;-gOLlmq!ZsZ&XyZ`{lYC|`zegyM>0rcgC7C7x+iEec`0sZ(?0=3Z+ zEeW_UyJjV z2*KXu*vD|FSb z9cIXA&_WjR(#OQu{7S2M_XC6SyD)&4KkAhSUCo8)2*yB^R;Q|h$lYc_^ljzhVTfFs z0OC?Yj0JJ#;~1j2-^?jZad|S6?pIu#C@xOM_6%VR;nxGB!5$^5CJ zVS^wnO3VcZRi^8U0Y)KQtW-mh%Qiz!tt~c(u8J!ZwH3xpGG6F59F@M>W_`7tJsgS7 z4yj-oZktrJ;>nbXZjC?11q?%4of;W=8snfCd}=6L3;^zQL!i!JHExrsGa(8mV1q#( z8FpVbu$h56i{sbX7ELDxt8>7HND=DXNWpoL0&c!HVbRx@8|n}G*KHH(e5>PvNC%fI zjhM!9MQnR?0Ie>fhKq+aToP&Ee!MZ^G6=R4wYuC&yn-Ucb#WNS{JhB49h49hj{2;XbUh_SVY~xE$ow2+rW98( z>ITTHF-jeEqZM!y1>h9el!E&62>M2K^A0*RclRqgH23&xO6<@=-D3UmCEEs$`Z7H{ z0G!#uoVopqVeTsga4P^z^tT3mLrj&I#T1UZ&BD2zaF9gpfCk|1Fg^0CkY3YQ7_zso z6xS>2P6%#^maKNaKz-ec{02qh>OfU3gx$pyTXC_1^KNwyrQ8cC^%0$;?y~~!rvNOc zqYCgo00_h5);AeD4_e}fNR0j;5l72s^(`o1$l5>kFx{8D}Se~_5o}*0*g!-|4eICrit6s(BM>J}w7Y&I}xaMLz z{!c+%H8}kY6zU~FZ!*~I;N+;ETim}OZeB!S0NOf$#t8&K|FR17D+K+j<=PI={|mXs zfp#sTehtu0+ajU3`oJvx8iABEMa(y5u>CD@ybc`Wq9Hx{b<`VH?3)CG9oeWN`URr5 zs<8ZySl+fwCjtwXBEvBu)E^84q5fz)QcCg2!okfOWfvieYmgK#Mj2>aeJH#7aL)o@kEa`d0Yb%CNR1*udKvfUvr(HCqYI_Olhte>B&~k&Xj|}r>YjR zrf~4lTsFAx3C*i1dK#qc<`wb1L@`s`7Bh4e?T~N9^2W+EM^C5N-P7rhCx;$$iA9@Z zk2yl`ZnW+}XH;);={<=A*}wh-DtEZarDu|an_S_a-U|ir?cQiA^m@IIeVqjX!@XW} zSrPSmq31;H!c_%$+dzy=g;Sc1K0Ox|It^De(cu1Yy3_Nl-TTpQbo+`r7&+fG%>Ixy z+%Q~4=mR0AvC@49SuqDwOmjLtTm>nI80T;~p?QaVthpIBOyOu=9f$7^BQsL(5%rM3 zj=2UulD0&ln(oG zNjO00rIy&-9tW>oLg*vGi@}s`HT|n2V%EzHJ+*e?Nq51}hF)$S+rG>DDKPOUnuzF+ zYhYYAoZO_jKxinF!FJAGtA7O)j_jN(X}&$9Q0$yXgVc0R97mWjUmt6kk0bM7^~|NY z20-To(A9ie1EBSt9gDlVm9HJW7C6n(qCNqzlA4MCETPxg^WlWheMU6d`)!goE>^HK z$n-~PpAIN|J%sNRcQ|9TC35rz>yV9f2u?+JL@bS7rK|nLb7cp>Zm~ zu@4md(>R=<7g}sHRe>syg{KtbZTM9ovL_VUoKRo`brc2Q@N^=jxe6ehA-H$AUu>pq z9H8ngVYuONq7oK%`VH518)1%Sa?dZexE8U>u*W*-k1#KGuhV{K>oz)wz4^)zR+@C#P&p*xdR$#yVx}6C7~xSg#i@<+GS9{j;JrM za-40{E3DCMUoHYP7Xc}5j5yk+{@SGeIR0WGRPicKy}lNzQrrL$`Z}9ABIsAqHL~WVXS$v2jk>-Xcumqk0ya>yzEn}zh^U^Xj8=u$KMB}r~rr` z!K=-|FsuswsKv>Ae%L1_k;kH1KW=NEh^%}P%nfG20Jm=w`iHiji94>q;scuS>Zwuu z6e>;Z@?ZghgFnqAUO!7iqa{nFq0d=Ee;gV*ngoVEZ({fbYv|~2Z}f}Mz#S+3lO6bi zw~H!#@iY3OFFbk_`Xz%?|Gdf0eM9ye+@*&QOy3?!(NX%%^M(W2@~dulQI1!2=!Y4)og+xI<(gIQoMef z4#c=tSqYTCH!<=D7|rZl|IuRm6P0lceTS&>$b-Vc?a%Dff3Zd)HP?Ryz3J1;{0Z}K zki=Z7QeRJ4Q(Nl&=MA8=wAU^>;wHfm%q3|6e-%nN<;HOYZ1N<6WT?-bD48A>B z@asWdF*5iKAXBe{o(ls5*Kfj;-wd>Myjjx|lpVjtLTqId;d_s;9Js~;SIXx_rMfbR zOF>!q2Xw5D?Se3yO9p9FIA2DOu|T7PE0*mzqb{flC8_8O)kK3TJP&T;cgnYgHGm!ac2zrG`<<4XUF?8r4m8JuqrYg;Bljy_Kf* z#-^<>LRJELs?FH8DzxorW7{#b3APPPw~*6__*W4F<+ zsU(I4Ty{7ZFhpgW+2j=#jA-&Lu^n5D5UxT}Y18D}X~;>mt1Y(V}G6m6dnIG+qkE*afio?uo{@pFzR^fP=)y{3OpN_>va3dc8za^{BvT6 z=NcYtfSRam6F!a{*yC^q!l1F|4dxlxE&!c9_`;cn@Gp#@`xoH}8K!?Rf1kCiTyr27 z@8fsBhWyf)oa+vJcI)%(0Z04x&t2{B?;qkX^q2Xo{dNAJf2zCAJ!QUoru&ZkP_?Kw z)uGm@t!k0FQeCGX*3aq>^;>GAe%ZeQ-kK8Sts`%HIX*vr#VP1{aFO}?)xQdAajN5A zjb9{RNCC#^E`6q6uLt!7I;{`X3-p!xHosZjpdME*>9Kl}`<|XApOnwYH{>l|!mCwx zdQIMBZ>BfSJJ|ERBfJ6cGVgBh0V!myJU|{QrRYrKV?=f2=dZ<;sTy`o{fulyc=qrchB`)4O+d0pPa-dkSLyUKe+ iHu=|}6&t+HW7c-{E@eCNGMMc$*NJiU(fIihzBa7g8shWs_x#I-Gz_)&-7Hi)Q zzo?Y$>&uoBsY13d*rqp_y*^l*tIW<7D#7|vuCjHu?pl%@-y5vU6@v2OTyJks=q_#y z3T2UM*--U0nGlJV?x56{D`fMX1Np#8bXIjasmj*=z!6S;H$FRqb&1Blppxw?_6GT+ zNRCHKPznk?LGRM2InfX-&-QH0t`Aa)-9EumID^*C&Gu9TsgSMYHU;H6 z_`$3Co@nmLmU`&~I4?0H)ez)^zMxPkJM|)6e`v6EbFtK$N^i>M2ZF>@(IC>PM1v5b zQ6v&gOP8!s9ZQ$`%etK=;UtnyS|poAU3yWeIM6>RD%k=qCo^4)7WFO5g7w)-&}#-I z)c{~-1X?L~x)5VTL(_^vC6^!4Kb8`vXP{WLQFGUz=5dkc@uDu3oM2RC#6(eFYufbG zHX@aBwxyy*F^L~7kTzM=)zTfDa<&ucp>3eu-g1H`JuwaljbP4};M!uLoJ{T@l8GG? zVw5xI6M|q1BR$ho?CUEQGKXY0Wmhicc$G1-4aaTjGtXj*XdJgFCWaZ9s(fV5W6u3s|92`CwheJ(Ql!igdb^Tfd>=F5%Y`gm9PgVGSOZ zaU`avQf`N6O}WcMa`&)^u#?SQ{N{|9M|SdChieQw+C)Yy1nEIz||Hmwwf=H9HZQE*IDlMrZeo=CkO$WH=!YBQo+xF=h}&(aekjLs=!ITd~w8+tJw z3dcRo`rvf>U|j6xm;m;lfw5|E&!mjAAft6*v9z&zpw6}u&Y^^{nM`dr_|G+?blxY9 z()pCU5e9wElGOK?a+?rd#@f%r$fyA%7x3#k05JZ!(3*WwjejntIQr)j+j}YF9<6UEQ7S%N9BA7vj;o(#++n06*zo4aJF_g?o*ipN@O2 z8QSaEe3Wpn2Wg{w1HY{m?v4Dc2=|NpEC}}|equat=4VN`xA1d7xL@KYgx<=}-G%#Q zejde8_=>1cxwjepU$u?y*DNu6zaBoiw;ODC@GIEwjIiBhu-zRpe#2n9hu?thoBRZ} zZ}Ah@?&T-2-N#R0yPu!H_5eSD?LmG*_(S|O*d8XfZyRin*hcqJOGIqni68OhF*5|h z{cbb{-!p9AH?V&I%G5wPC=2(8cBmfb2yt|Sl6fVX5qg3n^dtgr9N*lgJ%hvbKE%dT`?x*{=tsH zIgt6DwU@HoKN=?C{waF#{2A<6-%v^fcrBLgo8vF!cpp9;O`%AbY_H?~)k^&vM|O-| zR^na^>feDg?S8$w;0ZcNK(A%$M zw%<|m3j=-OV~5F}_&W5`2EA8D^gCuUpF%5=UOlE+(rcjPMo3N@YR6->FvanjDFex- zX$5r)s8il(Qn!M-nTvm}C*&DpdB&1ww0(((ec)^ZXQMZcoZ~GgYoCyFg5{hTbH;t( z+y+i)E}K%xkQ-NQ3qe?n@#jsV%*l}1(#{$)D1}0|vqHD0&{pJ%Rh^K!1EjW?+&pA3 zVt1shDVTKi?aR9TMSiE_O@)}GNU*^__q9A2wPC;*%FsYj*yw8Z%+6-t$ z%G))ZM&52U)5t?Up7NN2x1dPL^=0!RaAxE1{qzucbthELAn@KQ1_OL1Wz8aR?W^{s z-V(=~ZGmU1fQOSip z%TUUC5)e|A(m=pKP$btNA03e|^pOK7cF7?&G5FjeOV(-FY_mMa>01fXn`QMH<`> z&$amjC6s*GLY4cDx9%&^eMsboQNV}g;XbTT;%4K-EyT1n!gN9e z^+Yx^JLYT7J2`~veU=Xh`BT_^YSeuiALy3T*?dOSd?p|0mb3T(uCv*VSDY1kZq$7q zo6nD$KNmHBp3O{F4TKA$=8M>TanyWC*c>|XQd)c&oY=ggtIBVxCH zFx+uhQp{CwTpdVF>|GtZ?Hc2@Yl*^SuJq6KL_r7Kz-E)Wvf1RWbihsQ&j{~kcHa_V zH>oS*;#M|)Icok2AINoE$n{lro79y;P2$S#+u3aLRyN-maoxq{yCY%Wh??(Vvq@Y@ zZ8BE~iT}KNY4UxX?%lb*Xu98T{q{gO-Qym3?Ljl$A0pSo;dGC?9q-$g@sYvl9(RKG zQF^=*sWH?2I~4R-INiJ3mtwkqH+H$ncs-Nxddzqe-NIwK>pc#Jw(eEf#aq3wV@2oU z&MwRPM9lgmMyt;I5siN;^2yVDm?RT27woUH`Ik}iuOjx>!t~xVi6|z^>p-6L-XOI} zLaFRG5jC?=FUmr_H>2j?vzd9PnKEyO&Eed52m4Sc;=Fg^v}P=-bkz|Z*uwIde3~6l z?>+N+`6C&R5FWBlIPcGcMG#YcRgTR&#=f1>99hKvTg90eeb6n4lZb3j-T{z(U4WfCzsp$l7D`C#te zi%aD=+#H!Qu_)7wMeIt!3mM*1xHR`^Teomo6u`=TRzMe zauT~IN8Q*RHolhIvw4T8c}G5AkmQswgymGWfPE*@?HtkV!Uu$~L@t+-QSv5ti`aJ$ zLs(8@%WNU{UfV)N{%+3cDU!yGp688y!hsW}FFF%IS4XmPTALNfbu z`un0VAjQ6P=6)EZv0VGTLT^9C?IAb|jHaj#7eQbij0! z!F2R+Ovez@Rq)vwi|N?mn6iVI7@uqTwFj^omks2@qDJ;wAOV3OrH*@`dL2|da=mCy z$qkk&N2)qY1%XU4Qw7MP*>WSr=OMn$?5N;er;;sHZ00WetbhUqAcGu60d+-VX+Njj zfkGY+a~iN&YlQF}ElZSNhWv@u+;QdZ$coi5KporG>WHbJXOq#h8S>*DCAkF~1ad3* zxqBqi@&xF@HW92kk$83y@}yySPA1Q14UaqpI-Mr7sjx5?eGU(L++y0l;UQaX5#7qkR&2E|s5WSgHuco4F zs0fFrCTx~xb0tS!YZYA=Dyr^;qU)h3EpIT3^Nkdn!@+eWJlRFme37>Ju;V6lj^+-kpm8JvT=J@PAPmA3)sZU*GYyFIFy&%;gJ_mN+<27HYM zO#9S*pFu8I_H{Gtx7RAa1In@0B;=j+B~F>-T^8isboERjzhS@LLs#_StlMA=J^am( z8K&Al`7J{&Sw5Wa63vE-X#Rx0(8pD2uP7@YCw^YBdGc6@wr4x$b32qn$*n);!llspP z@-@nzC8SCGrwjQyzh{JegP*$!$?V^mJ)5EN8!P;`guvJe5rkrY7h!nQkO}#FO4!2$ z)mvziZ^IR1)IhmX?5lFbJJu2J(h+T$%#eP#;SX>_y?l?tjug^vNlUXMjUyq+9qG~i zC7e2LsdfnWq%lc_d_M&9SI{-#$SFLWG+z4~!{P5%{|D5MlqyCxcs_<;Fx%1|eej`O zKa=vGMzH)BaM>d~$(`rc{$jZ@1j|Pu79l^jJf_SznvSXZlmE3y(WJQRtOO&+yao!D zK`@R=7{JO2BWD|+)Z?pA*qgYW4J&#kYDY%@fRzpn_)fhagu`sB$8?(IHnl@|AI9h|F$J%a~!n-Mr zYQiU)GLhP73X6~W3Zxr5xDO3GCe_$6nY6THJKMWG$IcvIsU2*~j-Vfn;o}VmTvFOl zG}B8>L9d$1@U@L`I^n3DEdHIt@Ey_*19pJ{N%a{5i4L&Tt_VD}8#rycp}6C0(hX&5 zmtBO~1N3z`WQh<=C&vuKp=LstgI6wAt~gpnTFs&myy?uJnr#fiv&sucM z9p@2ze-L`%d!Y_CWVFa-6YqSCkL|BEi#I>8Fn<6Gc=e+}Y3OPxMh7tlqi=OCtii}V zXM=IE?QI{#$O;7*4<*J}5?_B@NEEl7`Ce13Qp{BV#TrGiMj6vJfOkqYK3kP2QX4ByMJSdd#_uaENp!kyuy98@Y5<~DmZY(aQ=NR!IbhDr)!`s&vQ4u} z0|n5n4n^e(d0YUrVSfZgg$*D%5?>q2w8psbC}XQ)X)?G}uqrVwTw{BWjh2cmm{aS6 zN?EA2_T}WL9zjv9EU zq%}&iZJz8Xdz(a=+ay?wYP%t=P$Q=p+RBjZ4_^!Fcx!iw4qm%;Dm;}P$XA5o{&;=( z&5RRw$N7dbe`>(6K@h4FbJsy_rt?byRw7)%R9hmSZH1gV+iXr>6-yO$BCMHc+|X$_ zs-1O`b=Jvr7V@1DsbCv!o>YzFDU^z-jX%XohC!`Pi;O&-kx&YbAIOz(_OH$`1nNw7 z3!-oo)*lp*X!qm-n;@vOxrUu%(Hw>a>s+ugR)jh)(r|vHf!pxSDF1r$1HD1- z+O0x;-YU5uQo_2W39ob96FVU~idGj<#l?dvE{RoeYu*@f86?{mwz}Mkyn>-W{LYPH z)uOIsoEV=WMY9*C9Cek|aCNwF)^@{}xMGs3SJ#sNx;T+`Y4sf_FhPsBW#~Qz|MC7UpINXV z#?<%dH_Y{_TvL6Y!fmyp82mgyu)+Vh;ZjdTf&C=8`=eVF;oSKVh}2WC%f@27Dmv_UK1NHwwu63a;Ow@0I+L?8bP%K68wtkaHD%lcVJ7&rKJ%PLhAY-GIJ^FOi+g9#7 zM1u|5s3ZCWq<3q;{DENJvrK&e!@8s@E`<7%!64M1?QBXZ9$`4Rilb~vqF9lncvZ?^ zV=ba=E#jU7c^^db6l)JgRaAK>9A>1P90dK#^r(MR!we*uA3Q>} zAojnJSUpPE8?Q5k7FGjeSSRqT9r!54RNT=?!>d#D3wHk4D3Usj;c3t~wBWm{sb@pb zv$4O3TN^Y**8^Ww8-()mdy2Wa(5xk<3Ec#!L#Bvs23Fl-vEryfn?k}PsMavHH0ua( zk0tkzDWcnmd>oKB#^LYi@fQ9B!bg!F_rQjU3^C1HEb$VcSvKfNkTE)@G&hg*WGiPo z%E2O3(+gSKa}m-kB5-+0^R|kf0x46x5`JS*%9ggq3>_uA^jopK#4^RvJ5lUTnarn? zLyx)FqRmOj452?`wC+l0)b4ue-G~IWfZiRQBkp?XX(ZvUSNNy*Km&X`9b<*5uV>h= zGa+Db>T4Dm(bN}ub~G-mF~B9rYP0dD_e6)D3s*GL;NI}Hr}wgU?@hZg_pAC~ zJToxOoa5OKH!}kZ1 z8EN>Cen{X6N*Z_2^ClbC9>bHh1vZaPL3k>N4(lz=6BCR$|FkVF^g{Y^fzT`};F`s? zer!kUpdSwj*9d*6B{rAJ!E4J2y$rlqQR!AQ!8#&lz1+}K>tT4(oiMbqoBPRj^76_G zOzftKi2k?-#;t&pn>CAt#tIqi>|AB_9}a~>XXk2~Z;ve$XXlY1H4C1`5rtX#_0g95 z7;^X5zQ8o=0nAPyJ(f>dAZ=K-WMN0A^0lMa0;oA|)IGqJ)GPw9Fa`F^I3e^pBbw~% zZMHTxRM%!_!0aYRkPcGVQ{M8_`rxx0rT3}0c7zN<)#3H3x5D?B5 zxOZ@3Y^CgZ(0@W0Z#b~1hILZNb+QdHM>Ego&%9WcSY_CC9_TZ5p+;OYXoWu2vI%W+ ze(c%n)2S#c^chrNDsB!Z_?c|xrSg_Ix;l%S9euWS^f`1i_A077VG%EsJNi5vE$Q<^ zLMZ(lT{t6Ew~4nXL-|bm^#zbWzILo^a;Pt~+!s*|^34%wpzUHaoR@^2xD*Cdt!S4) z0cWDVyvA{MP_M8?b9`A1XjTI$?vps$)&Sbn0C+L75vq7Sr$Ju}RVnU=2z?#cF#T~% zVahsv1GEpxsr8MZK~60+vwOViHP0%B&cB;E|86nnDx6E}FM-z1zgwgE_hqZ=E9CAU zGXI#{+xchGdz5MVYnJ@$Ag^7tZzt^?Fm;Ssm}#1g6i44_{e2hxjYV@vKOAs39FW%E zfXu-dy@&D`qdb6sGrk4)Fi+F>+VA&)x++i8_oG?8Wkvu@4_Mcw^n;fAp@{oo`<+J& z)vMzp5x0KS5Lh{yiMxIbMvaSdx~d{s^R^FG%J0!GTtXjC0@HW{s80XDCOy#>i&>C= z2uM)_5I>HuHV?zXD)bW;C-eG2pO}Om1-5?5_C6h1`3#sFP2~W$Zx#B-wx0<+?#1Gl zHQ{|!qxe~Ln&9PG10n~1n#sI=frduKOSPddT0?&t8akW=hQ4Hi_+@M8@E_&qSD=CW zPx@yg_<~oCs(kSa`l2U1j}-b(Z7u*+V4PLHO=1yk?|CZ0M4SB{Cc#~0KdU@ zH-d$0gKy6o{AQ3>tqpz)$kbb)XLVrU`mK2K#{g|TFWhtm6~`ZIA+~Xh@I#QW9k|8; zSIX!8rTPkp%Rxo>6RhTmOc?!b7)AcJ(3;BQXTO|f{v?o_Z%{kgs`a-6UDDqkbd6<{ zm=&rp#4G}M6z8)Fm?r%2R#VcS3feLKrQ-Th0FPkX1V1D-96LdLbKFr_58jCZGq z&w}_gOHmt@{%l00pD{jUG3w6&mx)S$Pf#}XWpPqlihe=j^OjVdZKKk?;=%Spa6SI%K!jDExC?`H>V9tVrNt~K2v>F;ka&L{r?;GYx{beSFPCD^TwB^_ub zEubV`h_I4|5kjW9$nGCZnJ#2b8AiISSi;T!Sh8m&OG-we_UYu1uS^(ec&qvshdyfq ze8A_?)auWXcYcZ z^e6aRZ2tK?aj+AD^?|<}X6-l(XLqhr<@v*`Rh_g7_qRTk8b);)RNX_3T0wOyVbr85 zqq^I>t4&)Kn|8PnvKr7+vy5#=gti@NY&(iJ!M3AoY~!(lv5khVp}u2b-nJoNvjJHX z2w7{`S{jDyRi8iyllUuE$7i|W^UNV~SS)c!7}$dc-yA#)I&5TWNZ(*=<>^CB6dXr& z8yN-o-RZC>;30&KfRt**kP!(wPSAU z4d2uoQ--^yniv+a^l*G$ma4H}3zcoc5@(lHsdO-Hb@5@W% z{qh?3Ni|iL)$Ok5KDWT#I8A3g*VFFHuJ29pX1P~1w)qSFmHtM5t9!hEPGY9l={@GX p>kW8Ud5_Ch{~8Qqqql7JnvU+p97x^~vvcM;F}5N4Ujg*z{{#MEuDAdI diff --git a/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/parser/antlr/internal/InternalDSL.g b/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/parser/antlr/internal/InternalDSL.g index 76d882ac7..c0ee03b12 100644 --- a/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/parser/antlr/internal/InternalDSL.g +++ b/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/parser/antlr/internal/InternalDSL.g @@ -6736,7 +6736,7 @@ RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'"')))* RULE_ML_COMMENT : '/*' ~('*') ( options {greedy=false;} : . )*'*/'; -RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?; +RULE_SL_COMMENT : '//' ~(('\n'|'\r'))*; RULE_SL_VISIBLE_COMMENT : '-- ' ~(('\n'|'\r'))*; diff --git a/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/parser/antlr/internal/InternalDSLLexer.java b/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/parser/antlr/internal/InternalDSLLexer.java index 6f801ddd8..e0bdc1872 100644 --- a/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/parser/antlr/internal/InternalDSLLexer.java +++ b/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/parser/antlr/internal/InternalDSLLexer.java @@ -1946,8 +1946,8 @@ public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalDSL.g:6739:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) - // InternalDSL.g:6739:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? + // InternalDSL.g:6739:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ) + // InternalDSL.g:6739:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* { match("//"); @@ -1984,42 +1984,6 @@ public final void mRULE_SL_COMMENT() throws RecognitionException { } } while (true); - // InternalDSL.g:6739:40: ( ( '\\r' )? '\\n' )? - int alt15=2; - int LA15_0 = input.LA(1); - - if ( (LA15_0=='\n'||LA15_0=='\r') ) { - alt15=1; - } - switch (alt15) { - case 1 : - // InternalDSL.g:6739:41: ( '\\r' )? '\\n' - { - // InternalDSL.g:6739:41: ( '\\r' )? - int alt14=2; - int LA14_0 = input.LA(1); - - if ( (LA14_0=='\r') ) { - alt14=1; - } - switch (alt14) { - case 1 : - // InternalDSL.g:6739:41: '\\r' - { - match('\r'); - - } - break; - - } - - match('\n'); - - } - break; - - } - } @@ -2042,17 +2006,17 @@ public final void mRULE_SL_VISIBLE_COMMENT() throws RecognitionException { match("-- "); // InternalDSL.g:6741:33: (~ ( ( '\\n' | '\\r' ) ) )* - loop16: + loop14: do { - int alt16=2; - int LA16_0 = input.LA(1); + int alt14=2; + int LA14_0 = input.LA(1); - if ( ((LA16_0>='\u0000' && LA16_0<='\t')||(LA16_0>='\u000B' && LA16_0<='\f')||(LA16_0>='\u000E' && LA16_0<='\uFFFF')) ) { - alt16=1; + if ( ((LA14_0>='\u0000' && LA14_0<='\t')||(LA14_0>='\u000B' && LA14_0<='\f')||(LA14_0>='\u000E' && LA14_0<='\uFFFF')) ) { + alt14=1; } - switch (alt16) { + switch (alt14) { case 1 : // InternalDSL.g:6741:33: ~ ( ( '\\n' | '\\r' ) ) { @@ -2070,7 +2034,7 @@ public final void mRULE_SL_VISIBLE_COMMENT() throws RecognitionException { break; default : - break loop16; + break loop14; } } while (true); @@ -2096,17 +2060,17 @@ public final void mRULE_SL_VISIBLE_TITLE_COMMENT() throws RecognitionException { match("--- "); // InternalDSL.g:6743:40: (~ ( ( '\\n' | '\\r' ) ) )* - loop17: + loop15: do { - int alt17=2; - int LA17_0 = input.LA(1); + int alt15=2; + int LA15_0 = input.LA(1); - if ( ((LA17_0>='\u0000' && LA17_0<='\t')||(LA17_0>='\u000B' && LA17_0<='\f')||(LA17_0>='\u000E' && LA17_0<='\uFFFF')) ) { - alt17=1; + if ( ((LA15_0>='\u0000' && LA15_0<='\t')||(LA15_0>='\u000B' && LA15_0<='\f')||(LA15_0>='\u000E' && LA15_0<='\uFFFF')) ) { + alt15=1; } - switch (alt17) { + switch (alt15) { case 1 : // InternalDSL.g:6743:40: ~ ( ( '\\n' | '\\r' ) ) { @@ -2124,7 +2088,7 @@ public final void mRULE_SL_VISIBLE_TITLE_COMMENT() throws RecognitionException { break; default : - break loop17; + break loop15; } } while (true); @@ -2150,29 +2114,29 @@ public final void mRULE_ML_VISIBLE_COMMENT() throws RecognitionException { match("/- "); // InternalDSL.g:6745:33: ( options {greedy=false; } : . )* - loop18: + loop16: do { - int alt18=2; - int LA18_0 = input.LA(1); + int alt16=2; + int LA16_0 = input.LA(1); - if ( (LA18_0=='-') ) { - int LA18_1 = input.LA(2); + if ( (LA16_0=='-') ) { + int LA16_1 = input.LA(2); - if ( (LA18_1=='/') ) { - alt18=2; + if ( (LA16_1=='/') ) { + alt16=2; } - else if ( ((LA18_1>='\u0000' && LA18_1<='.')||(LA18_1>='0' && LA18_1<='\uFFFF')) ) { - alt18=1; + else if ( ((LA16_1>='\u0000' && LA16_1<='.')||(LA16_1>='0' && LA16_1<='\uFFFF')) ) { + alt16=1; } } - else if ( ((LA18_0>='\u0000' && LA18_0<=',')||(LA18_0>='.' && LA18_0<='\uFFFF')) ) { - alt18=1; + else if ( ((LA16_0>='\u0000' && LA16_0<=',')||(LA16_0>='.' && LA16_0<='\uFFFF')) ) { + alt16=1; } - switch (alt18) { + switch (alt16) { case 1 : // InternalDSL.g:6745:61: . { @@ -2182,7 +2146,7 @@ else if ( ((LA18_0>='\u0000' && LA18_0<=',')||(LA18_0>='.' && LA18_0<='\uFFFF')) break; default : - break loop18; + break loop16; } } while (true); @@ -2210,38 +2174,38 @@ public final void mRULE_ML_VISIBLE_TITLE_COMMENT() throws RecognitionException { match("/-- "); // InternalDSL.g:6747:40: ( options {greedy=false; } : . )* - loop19: + loop17: do { - int alt19=2; - int LA19_0 = input.LA(1); + int alt17=2; + int LA17_0 = input.LA(1); - if ( (LA19_0=='-') ) { - int LA19_1 = input.LA(2); + if ( (LA17_0=='-') ) { + int LA17_1 = input.LA(2); - if ( (LA19_1=='-') ) { - int LA19_3 = input.LA(3); + if ( (LA17_1=='-') ) { + int LA17_3 = input.LA(3); - if ( (LA19_3=='/') ) { - alt19=2; + if ( (LA17_3=='/') ) { + alt17=2; } - else if ( ((LA19_3>='\u0000' && LA19_3<='.')||(LA19_3>='0' && LA19_3<='\uFFFF')) ) { - alt19=1; + else if ( ((LA17_3>='\u0000' && LA17_3<='.')||(LA17_3>='0' && LA17_3<='\uFFFF')) ) { + alt17=1; } } - else if ( ((LA19_1>='\u0000' && LA19_1<=',')||(LA19_1>='.' && LA19_1<='\uFFFF')) ) { - alt19=1; + else if ( ((LA17_1>='\u0000' && LA17_1<=',')||(LA17_1>='.' && LA17_1<='\uFFFF')) ) { + alt17=1; } } - else if ( ((LA19_0>='\u0000' && LA19_0<=',')||(LA19_0>='.' && LA19_0<='\uFFFF')) ) { - alt19=1; + else if ( ((LA17_0>='\u0000' && LA17_0<=',')||(LA17_0>='.' && LA17_0<='\uFFFF')) ) { + alt17=1; } - switch (alt19) { + switch (alt17) { case 1 : // InternalDSL.g:6747:68: . { @@ -2251,7 +2215,7 @@ else if ( ((LA19_0>='\u0000' && LA19_0<=',')||(LA19_0>='.' && LA19_0<='\uFFFF')) break; default : - break loop19; + break loop17; } } while (true); @@ -2279,29 +2243,29 @@ public final void mRULE_ML_DOC_COMMENT() throws RecognitionException { match("/**"); // InternalDSL.g:6749:29: ( options {greedy=false; } : . )* - loop20: + loop18: do { - int alt20=2; - int LA20_0 = input.LA(1); + int alt18=2; + int LA18_0 = input.LA(1); - if ( (LA20_0=='*') ) { - int LA20_1 = input.LA(2); + if ( (LA18_0=='*') ) { + int LA18_1 = input.LA(2); - if ( (LA20_1=='/') ) { - alt20=2; + if ( (LA18_1=='/') ) { + alt18=2; } - else if ( ((LA20_1>='\u0000' && LA20_1<='.')||(LA20_1>='0' && LA20_1<='\uFFFF')) ) { - alt20=1; + else if ( ((LA18_1>='\u0000' && LA18_1<='.')||(LA18_1>='0' && LA18_1<='\uFFFF')) ) { + alt18=1; } } - else if ( ((LA20_0>='\u0000' && LA20_0<=')')||(LA20_0>='+' && LA20_0<='\uFFFF')) ) { - alt20=1; + else if ( ((LA18_0>='\u0000' && LA18_0<=')')||(LA18_0>='+' && LA18_0<='\uFFFF')) ) { + alt18=1; } - switch (alt20) { + switch (alt18) { case 1 : // InternalDSL.g:6749:57: . { @@ -2311,7 +2275,7 @@ else if ( ((LA20_0>='\u0000' && LA20_0<=')')||(LA20_0>='+' && LA20_0<='\uFFFF')) break; default : - break loop20; + break loop18; } } while (true); @@ -2339,17 +2303,17 @@ public final void mRULE_DIVIDER() throws RecognitionException { match("----"); // InternalDSL.g:6751:23: ( '-' )* - loop21: + loop19: do { - int alt21=2; - int LA21_0 = input.LA(1); + int alt19=2; + int LA19_0 = input.LA(1); - if ( (LA21_0=='-') ) { - alt21=1; + if ( (LA19_0=='-') ) { + alt19=1; } - switch (alt21) { + switch (alt19) { case 1 : // InternalDSL.g:6751:23: '-' { @@ -2359,7 +2323,7 @@ public final void mRULE_DIVIDER() throws RecognitionException { break; default : - break loop21; + break loop19; } } while (true); @@ -2383,18 +2347,18 @@ public final void mRULE_WS() throws RecognitionException { // InternalDSL.g:6753:11: ( ' ' | '\\t' )+ { // InternalDSL.g:6753:11: ( ' ' | '\\t' )+ - int cnt22=0; - loop22: + int cnt20=0; + loop20: do { - int alt22=2; - int LA22_0 = input.LA(1); + int alt20=2; + int LA20_0 = input.LA(1); - if ( (LA22_0=='\t'||LA22_0==' ') ) { - alt22=1; + if ( (LA20_0=='\t'||LA20_0==' ') ) { + alt20=1; } - switch (alt22) { + switch (alt20) { case 1 : // InternalDSL.g: { @@ -2412,12 +2376,12 @@ public final void mRULE_WS() throws RecognitionException { break; default : - if ( cnt22 >= 1 ) break loop22; + if ( cnt20 >= 1 ) break loop20; EarlyExitException eee = - new EarlyExitException(22, input); + new EarlyExitException(20, input); throw eee; } - cnt22++; + cnt20++; } while (true); @@ -2440,18 +2404,18 @@ public final void mRULE_NEWLINE() throws RecognitionException { // InternalDSL.g:6755:16: ( '\\r' | '\\n' )+ { // InternalDSL.g:6755:16: ( '\\r' | '\\n' )+ - int cnt23=0; - loop23: + int cnt21=0; + loop21: do { - int alt23=2; - int LA23_0 = input.LA(1); + int alt21=2; + int LA21_0 = input.LA(1); - if ( (LA23_0=='\n'||LA23_0=='\r') ) { - alt23=1; + if ( (LA21_0=='\n'||LA21_0=='\r') ) { + alt21=1; } - switch (alt23) { + switch (alt21) { case 1 : // InternalDSL.g: { @@ -2469,12 +2433,12 @@ public final void mRULE_NEWLINE() throws RecognitionException { break; default : - if ( cnt23 >= 1 ) break loop23; + if ( cnt21 >= 1 ) break loop21; EarlyExitException eee = - new EarlyExitException(23, input); + new EarlyExitException(21, input); throw eee; } - cnt23++; + cnt21++; } while (true); @@ -2526,35 +2490,35 @@ public final void mRULE_ISOTIME() throws RecognitionException { // InternalDSL.g:6759:16: ( 'T' RULE_TWENTYFOURHRSTIME ( RULE_ISOTIMEZONE )? | RULE_TWENTYFOURHRSTIME RULE_ISOTIMEZONE ) { // InternalDSL.g:6759:16: ( 'T' RULE_TWENTYFOURHRSTIME ( RULE_ISOTIMEZONE )? | RULE_TWENTYFOURHRSTIME RULE_ISOTIMEZONE ) - int alt25=2; - int LA25_0 = input.LA(1); + int alt23=2; + int LA23_0 = input.LA(1); - if ( (LA25_0=='T') ) { - alt25=1; + if ( (LA23_0=='T') ) { + alt23=1; } - else if ( ((LA25_0>='0' && LA25_0<='2')) ) { - alt25=2; + else if ( ((LA23_0>='0' && LA23_0<='2')) ) { + alt23=2; } else { NoViableAltException nvae = - new NoViableAltException("", 25, 0, input); + new NoViableAltException("", 23, 0, input); throw nvae; } - switch (alt25) { + switch (alt23) { case 1 : // InternalDSL.g:6759:17: 'T' RULE_TWENTYFOURHRSTIME ( RULE_ISOTIMEZONE )? { match('T'); mRULE_TWENTYFOURHRSTIME(); // InternalDSL.g:6759:44: ( RULE_ISOTIMEZONE )? - int alt24=2; - int LA24_0 = input.LA(1); + int alt22=2; + int LA22_0 = input.LA(1); - if ( (LA24_0=='+'||LA24_0=='-'||LA24_0=='Z') ) { - alt24=1; + if ( (LA22_0=='+'||LA22_0=='-'||LA22_0=='Z') ) { + alt22=1; } - switch (alt24) { + switch (alt22) { case 1 : // InternalDSL.g:6759:44: RULE_ISOTIMEZONE { @@ -2597,22 +2561,22 @@ public final void mRULE_ISOTIMEZONE() throws RecognitionException { // InternalDSL.g:6761:29: ( 'Z' | ( '+' | '-' ) '0' .. '2' '0' .. '9' ( ':' )? '0' .. '5' '0' .. '9' ) { // InternalDSL.g:6761:29: ( 'Z' | ( '+' | '-' ) '0' .. '2' '0' .. '9' ( ':' )? '0' .. '5' '0' .. '9' ) - int alt27=2; - int LA27_0 = input.LA(1); + int alt25=2; + int LA25_0 = input.LA(1); - if ( (LA27_0=='Z') ) { - alt27=1; + if ( (LA25_0=='Z') ) { + alt25=1; } - else if ( (LA27_0=='+'||LA27_0=='-') ) { - alt27=2; + else if ( (LA25_0=='+'||LA25_0=='-') ) { + alt25=2; } else { NoViableAltException nvae = - new NoViableAltException("", 27, 0, input); + new NoViableAltException("", 25, 0, input); throw nvae; } - switch (alt27) { + switch (alt25) { case 1 : // InternalDSL.g:6761:30: 'Z' { @@ -2635,13 +2599,13 @@ else if ( (LA27_0=='+'||LA27_0=='-') ) { matchRange('0','2'); matchRange('0','9'); // InternalDSL.g:6761:62: ( ':' )? - int alt26=2; - int LA26_0 = input.LA(1); + int alt24=2; + int LA24_0 = input.LA(1); - if ( (LA26_0==':') ) { - alt26=1; + if ( (LA24_0==':') ) { + alt24=1; } - switch (alt26) { + switch (alt24) { case 1 : // InternalDSL.g:6761:62: ':' { @@ -2741,13 +2705,13 @@ public final void mRULE_TWENTYFOURHRSTIME() throws RecognitionException { matchRange('0','5'); matchRange('0','9'); // InternalDSL.g:6767:66: ( ':' '0' .. '6' '0' .. '9' ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? )? - int alt29=2; - int LA29_0 = input.LA(1); + int alt27=2; + int LA27_0 = input.LA(1); - if ( (LA29_0==':') ) { - alt29=1; + if ( (LA27_0==':') ) { + alt27=1; } - switch (alt29) { + switch (alt27) { case 1 : // InternalDSL.g:6767:67: ':' '0' .. '6' '0' .. '9' ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? { @@ -2755,13 +2719,13 @@ public final void mRULE_TWENTYFOURHRSTIME() throws RecognitionException { matchRange('0','6'); matchRange('0','9'); // InternalDSL.g:6767:89: ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? - int alt28=2; - int LA28_0 = input.LA(1); + int alt26=2; + int LA26_0 = input.LA(1); - if ( (LA28_0=='.') ) { - alt28=1; + if ( (LA26_0=='.') ) { + alt26=1; } - switch (alt28) { + switch (alt26) { case 1 : // InternalDSL.g:6767:90: '.' '0' .. '9' '0' .. '9' '0' .. '9' { @@ -2806,13 +2770,13 @@ public final void mRULE_TWELVEHRSTIME() throws RecognitionException { matchRange('0','5'); matchRange('0','9'); // InternalDSL.g:6769:62: ( ':' '0' .. '6' '0' .. '9' ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? )? - int alt31=2; - int LA31_0 = input.LA(1); + int alt29=2; + int LA29_0 = input.LA(1); - if ( (LA31_0==':') ) { - alt31=1; + if ( (LA29_0==':') ) { + alt29=1; } - switch (alt31) { + switch (alt29) { case 1 : // InternalDSL.g:6769:63: ':' '0' .. '6' '0' .. '9' ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? { @@ -2820,13 +2784,13 @@ public final void mRULE_TWELVEHRSTIME() throws RecognitionException { matchRange('0','6'); matchRange('0','9'); // InternalDSL.g:6769:85: ( '.' '0' .. '9' '0' .. '9' '0' .. '9' )? - int alt30=2; - int LA30_0 = input.LA(1); + int alt28=2; + int LA28_0 = input.LA(1); - if ( (LA30_0=='.') ) { - alt30=1; + if ( (LA28_0=='.') ) { + alt28=1; } - switch (alt30) { + switch (alt28) { case 1 : // InternalDSL.g:6769:86: '.' '0' .. '9' '0' .. '9' '0' .. '9' { @@ -2847,22 +2811,22 @@ public final void mRULE_TWELVEHRSTIME() throws RecognitionException { } // InternalDSL.g:6769:121: ( 'am' | 'pm' ) - int alt32=2; - int LA32_0 = input.LA(1); + int alt30=2; + int LA30_0 = input.LA(1); - if ( (LA32_0=='a') ) { - alt32=1; + if ( (LA30_0=='a') ) { + alt30=1; } - else if ( (LA32_0=='p') ) { - alt32=2; + else if ( (LA30_0=='p') ) { + alt30=2; } else { NoViableAltException nvae = - new NoViableAltException("", 32, 0, input); + new NoViableAltException("", 30, 0, input); throw nvae; } - switch (alt32) { + switch (alt30) { case 1 : // InternalDSL.g:6769:122: 'am' { @@ -2915,9 +2879,9 @@ public final void mRULE_ANY_OTHER() throws RecognitionException { public void mTokens() throws RecognitionException { // InternalDSL.g:1:8: ( 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 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | T__70 | T__71 | T__72 | T__73 | T__74 | T__75 | T__76 | T__77 | T__78 | T__79 | T__80 | T__81 | T__82 | T__83 | T__84 | T__85 | T__86 | T__87 | T__88 | T__89 | RULE_BOOLEAN_TRUE | RULE_BOOLEAN_FALSE | RULE_UPPERCASE_ID | RULE_ID | RULE_INTEGER | RULE_DECIMAL | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_SL_VISIBLE_COMMENT | RULE_SL_VISIBLE_TITLE_COMMENT | RULE_ML_VISIBLE_COMMENT | RULE_ML_VISIBLE_TITLE_COMMENT | RULE_ML_DOC_COMMENT | RULE_DIVIDER | RULE_WS | RULE_NEWLINE | RULE_ISODATE | RULE_ISOTIME | RULE_EURODATE | RULE_USDATE | RULE_TWENTYFOURHRSTIME | RULE_TWELVEHRSTIME | RULE_ANY_OTHER ) - int alt33=85; - alt33 = dfa33.predict(input); - switch (alt33) { + int alt31=85; + alt31 = dfa31.predict(input); + switch (alt31) { case 1 : // InternalDSL.g:1:10: T__29 { @@ -3519,20 +3483,20 @@ public void mTokens() throws RecognitionException { } - protected DFA33 dfa33 = new DFA33(this); - static final String DFA33_eotS = - "\1\uffff\6\65\1\uffff\10\65\1\120\2\uffff\1\65\1\125\1\65\4\uffff\1\136\1\uffff\1\142\6\uffff\1\65\2\uffff\1\155\1\62\1\uffff\1\160\2\62\3\uffff\3\160\1\uffff\2\65\1\uffff\2\65\1\177\5\65\1\uffff\15\65\1\u0093\1\65\3\uffff\1\160\2\uffff\1\65\1\uffff\1\65\22\uffff\1\65\2\uffff\1\155\1\uffff\1\160\5\uffff\3\160\10\65\1\uffff\4\65\1\uffff\16\65\1\uffff\1\65\2\uffff\2\65\4\uffff\1\65\1\155\1\160\4\uffff\4\65\1\u00ce\5\65\1\u00d4\2\65\1\u00d8\2\65\1\u00db\1\u00dd\5\65\1\u00e3\4\65\2\uffff\1\u00e8\1\65\1\u00ea\1\uffff\1\160\1\uffff\1\157\1\uffff\4\65\1\uffff\4\65\1\u00f7\1\uffff\3\65\1\uffff\2\65\1\uffff\1\65\1\uffff\4\65\1\u0105\1\uffff\4\65\1\uffff\1\65\2\uffff\1\u010c\1\157\1\u010c\4\65\1\u0114\3\65\2\uffff\14\65\1\uffff\3\65\1\u0127\1\u0128\5\uffff\2\65\1\u012e\1\65\1\uffff\1\u0130\1\65\1\u0132\2\65\1\u0135\1\65\1\u0137\1\u0138\3\65\1\uffff\2\65\1\u013e\2\65\4\uffff\3\65\1\uffff\1\65\1\uffff\1\65\1\uffff\1\65\1\u0149\1\uffff\1\65\2\uffff\1\65\1\u014c\1\65\1\u014e\1\u014f\1\uffff\1\u0150\1\65\2\u010c\4\65\1\u0158\1\65\1\uffff\1\u015a\1\65\1\uffff\1\65\3\uffff\1\65\2\uffff\1\u0160\1\u0161\2\65\1\uffff\1\u0164\1\uffff\1\65\1\u0166\1\65\4\uffff\1\65\1\u016b\1\uffff\1\u016c\1\uffff\1\65\2\uffff\1\65\2\uffff\1\u0171\2\u010c\1\u0172\2\uffff"; - static final String DFA33_eofS = + protected DFA31 dfa31 = new DFA31(this); + static final String DFA31_eotS = + "\1\uffff\6\65\1\uffff\10\65\1\120\2\uffff\1\65\1\125\1\65\4\uffff\1\136\1\uffff\1\142\6\uffff\1\65\2\uffff\1\154\1\62\1\uffff\1\157\2\62\3\uffff\3\157\1\uffff\2\65\1\uffff\2\65\1\177\5\65\1\uffff\15\65\1\u0093\1\65\3\uffff\1\157\2\uffff\1\65\1\uffff\1\65\22\uffff\1\65\3\uffff\1\154\1\157\5\uffff\3\157\10\65\1\uffff\4\65\1\uffff\16\65\1\uffff\1\65\2\uffff\2\65\4\uffff\1\65\1\154\1\157\4\uffff\4\65\1\u00ce\5\65\1\u00d4\2\65\1\u00d8\2\65\1\u00db\1\u00dd\5\65\1\u00e3\4\65\2\uffff\1\u00e8\1\65\1\u00ea\1\uffff\1\157\1\uffff\1\160\1\uffff\4\65\1\uffff\4\65\1\u00f7\1\uffff\3\65\1\uffff\2\65\1\uffff\1\65\1\uffff\4\65\1\u0105\1\uffff\4\65\1\uffff\1\65\2\uffff\1\u010c\1\160\1\u010c\4\65\1\u0114\3\65\2\uffff\14\65\1\uffff\3\65\1\u0127\1\u0128\5\uffff\2\65\1\u012e\1\65\1\uffff\1\u0130\1\65\1\u0132\2\65\1\u0135\1\65\1\u0137\1\u0138\3\65\1\uffff\2\65\1\u013e\2\65\4\uffff\3\65\1\uffff\1\65\1\uffff\1\65\1\uffff\1\65\1\u0149\1\uffff\1\65\2\uffff\1\65\1\u014c\1\65\1\u014e\1\u014f\1\uffff\1\u0150\1\65\2\u010c\4\65\1\u0158\1\65\1\uffff\1\u015a\1\65\1\uffff\1\65\3\uffff\1\65\2\uffff\1\u0160\1\u0161\2\65\1\uffff\1\u0164\1\uffff\1\65\1\u0166\1\65\4\uffff\1\65\1\u016b\1\uffff\1\u016c\1\uffff\1\65\2\uffff\1\65\2\uffff\1\u0171\2\u010c\1\u0172\2\uffff"; + static final String DFA31_eofS = "\u0173\uffff"; - static final String DFA33_minS = - "\1\0\1\141\1\151\1\155\1\141\1\163\1\141\1\uffff\3\141\1\151\2\145\1\156\1\163\1\55\2\uffff\1\151\1\60\1\141\4\uffff\1\52\1\uffff\1\52\6\uffff\1\165\2\uffff\1\60\1\137\1\uffff\1\56\2\0\3\uffff\3\56\1\uffff\1\143\1\151\1\uffff\1\164\1\160\1\60\1\162\1\154\1\145\1\163\1\40\1\uffff\1\162\1\163\1\142\1\155\1\165\1\154\1\156\1\145\1\156\1\151\1\164\1\161\1\145\1\60\1\163\1\uffff\1\40\1\uffff\1\56\2\uffff\1\166\1\uffff\1\163\4\uffff\1\0\1\uffff\1\40\13\uffff\1\154\2\uffff\1\60\1\uffff\1\56\5\uffff\3\56\1\153\1\141\1\166\1\147\1\150\1\157\1\151\1\164\1\uffff\1\153\2\163\1\145\1\uffff\1\151\1\164\1\154\2\145\1\154\2\143\1\147\1\164\1\163\2\165\1\162\1\uffff\1\151\1\uffff\1\40\1\145\1\164\4\uffff\1\154\1\72\1\56\2\60\1\uffff\1\60\1\141\1\155\1\141\1\162\1\60\1\162\1\156\1\151\1\144\1\145\1\60\1\144\1\141\1\60\1\145\1\163\2\60\1\154\1\164\1\153\1\154\1\145\1\60\1\162\1\151\1\141\1\147\2\uffff\1\60\1\145\1\60\1\uffff\1\55\3\60\1\147\1\145\1\164\1\145\1\uffff\1\164\1\145\1\141\1\145\1\60\1\uffff\1\40\1\142\1\145\1\uffff\1\164\1\145\1\uffff\1\145\1\uffff\1\165\1\141\1\160\1\145\1\60\1\uffff\1\156\1\162\1\164\1\156\1\uffff\1\162\2\uffff\1\53\1\56\1\53\1\145\1\164\1\145\1\163\1\60\1\144\1\154\1\146\2\uffff\1\164\1\154\1\146\1\145\1\164\1\146\1\144\1\156\1\157\1\55\1\145\1\156\1\uffff\1\163\1\145\1\151\3\60\3\uffff\1\60\1\144\1\145\1\60\1\163\1\uffff\1\60\1\154\1\60\1\144\1\145\1\60\1\163\2\60\1\145\1\164\1\151\1\uffff\1\146\1\144\1\60\1\163\1\157\2\uffff\2\60\1\145\1\156\1\162\1\uffff\1\151\1\uffff\1\171\1\uffff\1\145\1\60\1\uffff\1\164\2\uffff\1\144\1\60\1\156\2\60\1\uffff\1\60\1\156\2\53\1\146\1\144\1\151\1\156\1\60\1\146\1\uffff\1\60\1\142\1\uffff\1\164\3\uffff\1\144\4\60\1\172\1\147\1\uffff\1\60\1\uffff\1\171\1\60\1\145\2\60\2\uffff\1\145\1\60\1\uffff\1\60\1\uffff\1\146\2\60\1\144\2\uffff\1\60\2\53\1\60\2\uffff"; - static final String DFA33_maxS = - "\1\uffff\1\162\1\151\1\156\1\157\1\163\1\171\1\uffff\1\141\1\162\1\157\1\165\2\145\1\160\1\163\1\76\2\uffff\1\151\1\172\1\141\4\uffff\1\57\1\uffff\1\56\6\uffff\1\165\2\uffff\1\62\1\172\1\uffff\1\71\2\uffff\3\uffff\3\71\1\uffff\1\162\1\157\1\uffff\1\164\1\160\1\172\1\162\1\154\1\145\1\163\1\40\1\uffff\1\162\1\163\1\142\1\155\1\165\1\154\1\156\1\145\1\156\1\151\2\164\1\145\1\172\1\163\1\uffff\1\55\1\uffff\1\71\2\uffff\1\166\1\uffff\1\163\4\uffff\1\uffff\1\uffff\1\55\13\uffff\1\154\2\uffff\1\71\1\uffff\1\72\5\uffff\2\71\1\72\1\153\1\141\1\166\1\147\1\150\1\157\1\151\1\164\1\uffff\1\153\2\163\1\145\1\uffff\1\151\1\164\1\154\2\145\1\154\1\163\1\143\1\147\1\164\1\163\2\165\1\162\1\uffff\1\151\1\uffff\1\55\1\145\1\164\4\uffff\1\154\1\72\1\71\1\65\1\71\1\uffff\1\65\1\141\1\155\1\141\1\162\1\172\1\162\1\156\1\151\1\144\1\145\1\172\1\144\1\141\1\172\1\145\1\163\2\172\1\154\1\164\1\153\1\154\1\145\1\172\1\162\1\151\1\141\1\147\2\uffff\1\172\1\145\1\172\1\uffff\4\71\1\147\1\145\1\164\1\145\1\uffff\1\164\1\145\1\141\1\145\1\172\1\uffff\1\40\1\156\1\145\1\uffff\1\164\1\145\1\uffff\1\145\1\uffff\1\165\1\141\1\160\1\145\1\172\1\uffff\1\156\1\162\1\164\1\156\1\uffff\1\162\2\uffff\1\160\1\56\1\132\1\145\1\164\1\145\1\163\1\172\1\144\1\154\1\146\2\uffff\1\164\1\154\1\146\1\145\1\164\1\146\1\144\1\156\1\157\1\55\1\145\1\156\1\uffff\1\163\1\145\1\151\2\172\1\66\3\uffff\1\66\2\145\1\172\1\163\1\uffff\1\172\1\154\1\172\1\144\1\145\1\172\1\163\2\172\1\145\1\164\1\151\1\uffff\1\146\1\144\1\172\1\163\1\157\2\uffff\2\71\1\145\1\156\1\162\1\uffff\1\151\1\uffff\1\171\1\uffff\1\145\1\172\1\uffff\1\164\2\uffff\1\144\1\172\1\156\2\172\1\uffff\1\172\1\156\1\160\1\132\1\146\1\144\1\151\1\156\1\172\1\146\1\uffff\1\172\1\142\1\uffff\1\164\3\uffff\1\144\2\71\3\172\1\147\1\uffff\1\172\1\uffff\1\171\1\172\1\145\2\71\2\uffff\1\145\1\172\1\uffff\1\172\1\uffff\1\146\2\71\1\144\2\uffff\1\172\1\160\1\132\1\172\2\uffff"; - static final String DFA33_acceptS = - "\7\uffff\1\11\11\uffff\1\40\1\42\3\uffff\1\52\1\54\1\55\1\57\1\uffff\1\61\1\uffff\1\63\1\64\1\65\1\66\1\67\1\70\1\uffff\1\72\1\73\2\uffff\1\101\3\uffff\1\115\1\116\1\100\3\uffff\1\125\2\uffff\1\101\10\uffff\1\11\17\uffff\1\34\1\uffff\1\56\1\uffff\1\40\1\42\1\uffff\1\47\1\uffff\1\52\1\54\1\55\1\57\1\uffff\1\106\1\uffff\1\60\1\61\1\62\1\75\1\74\1\63\1\64\1\65\1\66\1\67\1\70\1\uffff\1\72\1\73\1\uffff\1\100\1\uffff\1\103\1\102\1\104\1\115\1\116\13\uffff\1\35\4\uffff\1\25\16\uffff\1\50\1\uffff\1\107\3\uffff\1\105\1\113\1\111\1\112\5\uffff\1\122\35\uffff\1\110\1\114\3\uffff\1\120\10\uffff\1\2\5\uffff\1\7\3\uffff\1\37\2\uffff\1\76\1\uffff\1\43\5\uffff\1\20\4\uffff\1\45\1\uffff\1\71\1\117\13\uffff\1\77\1\10\14\uffff\1\53\6\uffff\1\123\1\124\1\121\5\uffff\1\4\14\uffff\1\15\5\uffff\1\33\1\51\5\uffff\1\5\1\uffff\1\16\1\uffff\1\6\2\uffff\1\13\1\uffff\1\44\1\14\5\uffff\1\21\12\uffff\1\27\2\uffff\1\31\1\uffff\1\17\1\24\1\22\7\uffff\1\30\1\uffff\1\41\5\uffff\1\1\1\3\2\uffff\1\12\1\uffff\1\36\4\uffff\1\46\1\23\4\uffff\1\26\1\32"; - static final String DFA33_specialS = - "\1\3\51\uffff\1\2\1\0\57\uffff\1\1\u0117\uffff}>"; - static final String[] DFA33_transitionS = { + static final String DFA31_minS = + "\1\0\1\141\1\151\1\155\1\141\1\163\1\141\1\uffff\3\141\1\151\2\145\1\156\1\163\1\55\2\uffff\1\151\1\60\1\141\4\uffff\1\52\1\uffff\1\52\6\uffff\1\165\2\uffff\1\60\1\137\1\uffff\1\56\2\0\3\uffff\3\56\1\uffff\1\143\1\151\1\uffff\1\164\1\160\1\60\1\162\1\154\1\145\1\163\1\40\1\uffff\1\162\1\163\1\142\1\155\1\165\1\154\1\156\1\145\1\156\1\151\1\164\1\161\1\145\1\60\1\163\1\uffff\1\40\1\uffff\1\56\2\uffff\1\166\1\uffff\1\163\4\uffff\1\0\1\uffff\1\40\13\uffff\1\154\3\uffff\1\60\1\56\5\uffff\3\56\1\153\1\141\1\166\1\147\1\150\1\157\1\151\1\164\1\uffff\1\153\2\163\1\145\1\uffff\1\151\1\164\1\154\2\145\1\154\2\143\1\147\1\164\1\163\2\165\1\162\1\uffff\1\151\1\uffff\1\40\1\145\1\164\4\uffff\1\154\1\72\1\56\2\60\1\uffff\1\60\1\141\1\155\1\141\1\162\1\60\1\162\1\156\1\151\1\144\1\145\1\60\1\144\1\141\1\60\1\145\1\163\2\60\1\154\1\164\1\153\1\154\1\145\1\60\1\162\1\151\1\141\1\147\2\uffff\1\60\1\145\1\60\1\uffff\1\55\3\60\1\147\1\145\1\164\1\145\1\uffff\1\164\1\145\1\141\1\145\1\60\1\uffff\1\40\1\142\1\145\1\uffff\1\164\1\145\1\uffff\1\145\1\uffff\1\165\1\141\1\160\1\145\1\60\1\uffff\1\156\1\162\1\164\1\156\1\uffff\1\162\2\uffff\1\53\1\56\1\53\1\145\1\164\1\145\1\163\1\60\1\144\1\154\1\146\2\uffff\1\164\1\154\1\146\1\145\1\164\1\146\1\144\1\156\1\157\1\55\1\145\1\156\1\uffff\1\163\1\145\1\151\3\60\3\uffff\1\60\1\144\1\145\1\60\1\163\1\uffff\1\60\1\154\1\60\1\144\1\145\1\60\1\163\2\60\1\145\1\164\1\151\1\uffff\1\146\1\144\1\60\1\163\1\157\2\uffff\2\60\1\145\1\156\1\162\1\uffff\1\151\1\uffff\1\171\1\uffff\1\145\1\60\1\uffff\1\164\2\uffff\1\144\1\60\1\156\2\60\1\uffff\1\60\1\156\2\53\1\146\1\144\1\151\1\156\1\60\1\146\1\uffff\1\60\1\142\1\uffff\1\164\3\uffff\1\144\4\60\1\172\1\147\1\uffff\1\60\1\uffff\1\171\1\60\1\145\2\60\2\uffff\1\145\1\60\1\uffff\1\60\1\uffff\1\146\2\60\1\144\2\uffff\1\60\2\53\1\60\2\uffff"; + static final String DFA31_maxS = + "\1\uffff\1\162\1\151\1\156\1\157\1\163\1\171\1\uffff\1\141\1\162\1\157\1\165\2\145\1\160\1\163\1\76\2\uffff\1\151\1\172\1\141\4\uffff\1\57\1\uffff\1\56\6\uffff\1\165\2\uffff\1\62\1\172\1\uffff\1\71\2\uffff\3\uffff\3\71\1\uffff\1\162\1\157\1\uffff\1\164\1\160\1\172\1\162\1\154\1\145\1\163\1\40\1\uffff\1\162\1\163\1\142\1\155\1\165\1\154\1\156\1\145\1\156\1\151\2\164\1\145\1\172\1\163\1\uffff\1\55\1\uffff\1\71\2\uffff\1\166\1\uffff\1\163\4\uffff\1\uffff\1\uffff\1\55\13\uffff\1\154\3\uffff\1\71\1\72\5\uffff\2\71\1\72\1\153\1\141\1\166\1\147\1\150\1\157\1\151\1\164\1\uffff\1\153\2\163\1\145\1\uffff\1\151\1\164\1\154\2\145\1\154\1\163\1\143\1\147\1\164\1\163\2\165\1\162\1\uffff\1\151\1\uffff\1\55\1\145\1\164\4\uffff\1\154\1\72\1\71\1\65\1\71\1\uffff\1\65\1\141\1\155\1\141\1\162\1\172\1\162\1\156\1\151\1\144\1\145\1\172\1\144\1\141\1\172\1\145\1\163\2\172\1\154\1\164\1\153\1\154\1\145\1\172\1\162\1\151\1\141\1\147\2\uffff\1\172\1\145\1\172\1\uffff\4\71\1\147\1\145\1\164\1\145\1\uffff\1\164\1\145\1\141\1\145\1\172\1\uffff\1\40\1\156\1\145\1\uffff\1\164\1\145\1\uffff\1\145\1\uffff\1\165\1\141\1\160\1\145\1\172\1\uffff\1\156\1\162\1\164\1\156\1\uffff\1\162\2\uffff\1\160\1\56\1\132\1\145\1\164\1\145\1\163\1\172\1\144\1\154\1\146\2\uffff\1\164\1\154\1\146\1\145\1\164\1\146\1\144\1\156\1\157\1\55\1\145\1\156\1\uffff\1\163\1\145\1\151\2\172\1\66\3\uffff\1\66\2\145\1\172\1\163\1\uffff\1\172\1\154\1\172\1\144\1\145\1\172\1\163\2\172\1\145\1\164\1\151\1\uffff\1\146\1\144\1\172\1\163\1\157\2\uffff\2\71\1\145\1\156\1\162\1\uffff\1\151\1\uffff\1\171\1\uffff\1\145\1\172\1\uffff\1\164\2\uffff\1\144\1\172\1\156\2\172\1\uffff\1\172\1\156\1\160\1\132\1\146\1\144\1\151\1\156\1\172\1\146\1\uffff\1\172\1\142\1\uffff\1\164\3\uffff\1\144\2\71\3\172\1\147\1\uffff\1\172\1\uffff\1\171\1\172\1\145\2\71\2\uffff\1\145\1\172\1\uffff\1\172\1\uffff\1\146\2\71\1\144\2\uffff\1\172\1\160\1\132\1\172\2\uffff"; + static final String DFA31_acceptS = + "\7\uffff\1\11\11\uffff\1\40\1\42\3\uffff\1\52\1\54\1\55\1\57\1\uffff\1\61\1\uffff\1\63\1\64\1\65\1\66\1\67\1\70\1\uffff\1\72\1\73\2\uffff\1\101\3\uffff\1\115\1\116\1\100\3\uffff\1\125\2\uffff\1\101\10\uffff\1\11\17\uffff\1\34\1\uffff\1\56\1\uffff\1\40\1\42\1\uffff\1\47\1\uffff\1\52\1\54\1\55\1\57\1\uffff\1\106\1\uffff\1\60\1\61\1\62\1\75\1\74\1\63\1\64\1\65\1\66\1\67\1\70\1\uffff\1\72\1\73\1\100\2\uffff\1\102\1\103\1\104\1\115\1\116\13\uffff\1\35\4\uffff\1\25\16\uffff\1\50\1\uffff\1\107\3\uffff\1\105\1\113\1\111\1\112\5\uffff\1\122\35\uffff\1\110\1\114\3\uffff\1\120\10\uffff\1\2\5\uffff\1\7\3\uffff\1\37\2\uffff\1\76\1\uffff\1\43\5\uffff\1\20\4\uffff\1\45\1\uffff\1\71\1\117\13\uffff\1\77\1\10\14\uffff\1\53\6\uffff\1\123\1\124\1\121\5\uffff\1\4\14\uffff\1\15\5\uffff\1\33\1\51\5\uffff\1\5\1\uffff\1\16\1\uffff\1\6\2\uffff\1\13\1\uffff\1\44\1\14\5\uffff\1\21\12\uffff\1\27\2\uffff\1\31\1\uffff\1\17\1\24\1\22\7\uffff\1\30\1\uffff\1\41\5\uffff\1\1\1\3\2\uffff\1\12\1\uffff\1\36\4\uffff\1\46\1\23\4\uffff\1\26\1\32"; + static final String DFA31_specialS = + "\1\2\51\uffff\1\3\1\0\57\uffff\1\1\u0117\uffff}>"; + static final String[] DFA31_transitionS = { "\11\62\1\54\1\55\2\62\1\55\22\62\1\54\1\62\1\52\1\42\1\62\1\33\1\62\1\53\1\30\1\35\1\31\1\27\1\26\1\20\1\34\1\32\2\51\1\61\1\57\6\60\1\7\1\62\1\40\1\21\1\41\2\62\23\56\1\46\6\56\1\36\1\62\1\37\1\47\1\50\1\62\1\17\1\6\1\12\2\50\1\4\1\14\1\50\1\3\2\50\1\23\1\25\1\43\1\16\1\1\1\50\1\15\1\13\1\11\1\5\1\10\1\2\1\24\2\50\1\44\1\22\1\45\uff82\62", "\1\63\20\uffff\1\64", "\1\66", @@ -3571,18 +3535,18 @@ public void mTokens() throws RecognitionException { "\1\151", "", "", - "\3\154", + "\3\155", "\1\65\1\uffff\32\65", "", - "\1\157\1\uffff\12\156", + "\1\160\1\uffff\12\156", "\0\161", "\0\161", "", "", "", - "\1\157\1\uffff\12\164", - "\1\157\1\uffff\12\165", - "\1\157\1\uffff\12\166", + "\1\160\1\uffff\12\164", + "\1\160\1\uffff\12\165", + "\1\160\1\uffff\12\166", "", "\1\167\16\uffff\1\170", "\1\171\5\uffff\1\172", @@ -3614,7 +3578,7 @@ public void mTokens() throws RecognitionException { "", "\1\u0095\14\uffff\1\u0096", "", - "\1\157\1\uffff\12\121", + "\1\160\1\uffff\12\121", "", "", "\1\u0097", @@ -3641,8 +3605,8 @@ public void mTokens() throws RecognitionException { "\1\u009d", "", "", - "\12\u009e", "", + "\12\u009e", "\1\u00a1\1\u00a2\12\u009f\1\u00a0", "", "", @@ -3650,7 +3614,7 @@ public void mTokens() throws RecognitionException { "", "", "\1\u00a1\1\uffff\12\u009f", - "\1\157\1\uffff\12\u009f", + "\1\160\1\uffff\12\u009f", "\1\u00a1\1\uffff\12\u009f\1\u00a3", "\1\u00a4", "\1\u00a5", @@ -3692,9 +3656,9 @@ public void mTokens() throws RecognitionException { "", "\1\u00c4", "\1\u00c5", - "\1\157\1\uffff\12\u00c6", + "\1\160\1\uffff\12\u00c6", "\6\u00c7", - "\2\u00c8\10\157", + "\2\u00c8\10\160", "", "\6\u00c9", "\1\u00ca", @@ -3731,7 +3695,7 @@ public void mTokens() throws RecognitionException { "\1\u00e9", "\12\65\7\uffff\32\65\4\uffff\1\65\1\uffff\32\65", "", - "\1\u00eb\1\157\1\uffff\12\121", + "\1\u00eb\1\160\1\uffff\12\121", "\12\u00ec", "\12\u00ed", "\12\u00ee", @@ -3906,34 +3870,34 @@ public void mTokens() throws RecognitionException { "" }; - static final short[] DFA33_eot = DFA.unpackEncodedString(DFA33_eotS); - static final short[] DFA33_eof = DFA.unpackEncodedString(DFA33_eofS); - static final char[] DFA33_min = DFA.unpackEncodedStringToUnsignedChars(DFA33_minS); - static final char[] DFA33_max = DFA.unpackEncodedStringToUnsignedChars(DFA33_maxS); - static final short[] DFA33_accept = DFA.unpackEncodedString(DFA33_acceptS); - static final short[] DFA33_special = DFA.unpackEncodedString(DFA33_specialS); - static final short[][] DFA33_transition; + static final short[] DFA31_eot = DFA.unpackEncodedString(DFA31_eotS); + static final short[] DFA31_eof = DFA.unpackEncodedString(DFA31_eofS); + static final char[] DFA31_min = DFA.unpackEncodedStringToUnsignedChars(DFA31_minS); + static final char[] DFA31_max = DFA.unpackEncodedStringToUnsignedChars(DFA31_maxS); + static final short[] DFA31_accept = DFA.unpackEncodedString(DFA31_acceptS); + static final short[] DFA31_special = DFA.unpackEncodedString(DFA31_specialS); + static final short[][] DFA31_transition; static { - int numStates = DFA33_transitionS.length; - DFA33_transition = new short[numStates][]; + int numStates = DFA31_transitionS.length; + DFA31_transition = new short[numStates][]; for (int i=0; i='\u0000' && LA33_43<='\uFFFF')) ) {s = 113;} + if ( ((LA31_43>='\u0000' && LA31_43<='\uFFFF')) ) {s = 113;} else s = 50; if ( s>=0 ) return s; break; case 1 : - int LA33_91 = input.LA(1); + int LA31_91 = input.LA(1); s = -1; - if ( ((LA33_91>='\u0000' && LA33_91<=')')||(LA33_91>='+' && LA33_91<='\uFFFF')) ) {s = 153;} + if ( ((LA31_91>='\u0000' && LA31_91<=')')||(LA31_91>='+' && LA31_91<='\uFFFF')) ) {s = 153;} - else if ( (LA33_91=='*') ) {s = 154;} + else if ( (LA31_91=='*') ) {s = 154;} if ( s>=0 ) return s; break; case 2 : - int LA33_42 = input.LA(1); + int LA31_0 = input.LA(1); s = -1; - if ( ((LA33_42>='\u0000' && LA33_42<='\uFFFF')) ) {s = 113;} + if ( (LA31_0=='p') ) {s = 1;} - else s = 50; + else if ( (LA31_0=='w') ) {s = 2;} - if ( s>=0 ) return s; - break; - case 3 : - int LA33_0 = input.LA(1); + else if ( (LA31_0=='i') ) {s = 3;} - s = -1; - if ( (LA33_0=='p') ) {s = 1;} + else if ( (LA31_0=='f') ) {s = 4;} - else if ( (LA33_0=='w') ) {s = 2;} + else if ( (LA31_0=='u') ) {s = 5;} - else if ( (LA33_0=='i') ) {s = 3;} + else if ( (LA31_0=='b') ) {s = 6;} - else if ( (LA33_0=='f') ) {s = 4;} + else if ( (LA31_0==':') ) {s = 7;} - else if ( (LA33_0=='u') ) {s = 5;} + else if ( (LA31_0=='v') ) {s = 8;} - else if ( (LA33_0=='b') ) {s = 6;} + else if ( (LA31_0=='t') ) {s = 9;} - else if ( (LA33_0==':') ) {s = 7;} + else if ( (LA31_0=='c') ) {s = 10;} - else if ( (LA33_0=='v') ) {s = 8;} + else if ( (LA31_0=='s') ) {s = 11;} - else if ( (LA33_0=='t') ) {s = 9;} + else if ( (LA31_0=='g') ) {s = 12;} - else if ( (LA33_0=='c') ) {s = 10;} + else if ( (LA31_0=='r') ) {s = 13;} - else if ( (LA33_0=='s') ) {s = 11;} + else if ( (LA31_0=='o') ) {s = 14;} - else if ( (LA33_0=='g') ) {s = 12;} + else if ( (LA31_0=='a') ) {s = 15;} - else if ( (LA33_0=='r') ) {s = 13;} + else if ( (LA31_0=='-') ) {s = 16;} - else if ( (LA33_0=='o') ) {s = 14;} + else if ( (LA31_0=='=') ) {s = 17;} - else if ( (LA33_0=='a') ) {s = 15;} + else if ( (LA31_0=='|') ) {s = 18;} - else if ( (LA33_0=='-') ) {s = 16;} + else if ( (LA31_0=='l') ) {s = 19;} - else if ( (LA33_0=='=') ) {s = 17;} + else if ( (LA31_0=='x') ) {s = 20;} - else if ( (LA33_0=='|') ) {s = 18;} + else if ( (LA31_0=='m') ) {s = 21;} - else if ( (LA33_0=='l') ) {s = 19;} + else if ( (LA31_0==',') ) {s = 22;} - else if ( (LA33_0=='x') ) {s = 20;} + else if ( (LA31_0=='+') ) {s = 23;} - else if ( (LA33_0=='m') ) {s = 21;} + else if ( (LA31_0=='(') ) {s = 24;} - else if ( (LA33_0==',') ) {s = 22;} + else if ( (LA31_0=='*') ) {s = 25;} - else if ( (LA33_0=='+') ) {s = 23;} + else if ( (LA31_0=='/') ) {s = 26;} - else if ( (LA33_0=='(') ) {s = 24;} + else if ( (LA31_0=='%') ) {s = 27;} - else if ( (LA33_0=='*') ) {s = 25;} + else if ( (LA31_0=='.') ) {s = 28;} - else if ( (LA33_0=='/') ) {s = 26;} + else if ( (LA31_0==')') ) {s = 29;} - else if ( (LA33_0=='%') ) {s = 27;} + else if ( (LA31_0=='[') ) {s = 30;} - else if ( (LA33_0=='.') ) {s = 28;} + else if ( (LA31_0==']') ) {s = 31;} - else if ( (LA33_0==')') ) {s = 29;} + else if ( (LA31_0=='<') ) {s = 32;} - else if ( (LA33_0=='[') ) {s = 30;} + else if ( (LA31_0=='>') ) {s = 33;} - else if ( (LA33_0==']') ) {s = 31;} + else if ( (LA31_0=='#') ) {s = 34;} - else if ( (LA33_0=='<') ) {s = 32;} + else if ( (LA31_0=='n') ) {s = 35;} - else if ( (LA33_0=='>') ) {s = 33;} + else if ( (LA31_0=='{') ) {s = 36;} - else if ( (LA33_0=='#') ) {s = 34;} + else if ( (LA31_0=='}') ) {s = 37;} - else if ( (LA33_0=='n') ) {s = 35;} + else if ( (LA31_0=='T') ) {s = 38;} - else if ( (LA33_0=='{') ) {s = 36;} + else if ( (LA31_0=='^') ) {s = 39;} - else if ( (LA33_0=='}') ) {s = 37;} + else if ( (LA31_0=='_'||(LA31_0>='d' && LA31_0<='e')||LA31_0=='h'||(LA31_0>='j' && LA31_0<='k')||LA31_0=='q'||(LA31_0>='y' && LA31_0<='z')) ) {s = 40;} - else if ( (LA33_0=='T') ) {s = 38;} + else if ( ((LA31_0>='0' && LA31_0<='1')) ) {s = 41;} - else if ( (LA33_0=='^') ) {s = 39;} + else if ( (LA31_0=='\"') ) {s = 42;} - else if ( (LA33_0=='_'||(LA33_0>='d' && LA33_0<='e')||LA33_0=='h'||(LA33_0>='j' && LA33_0<='k')||LA33_0=='q'||(LA33_0>='y' && LA33_0<='z')) ) {s = 40;} + else if ( (LA31_0=='\'') ) {s = 43;} - else if ( ((LA33_0>='0' && LA33_0<='1')) ) {s = 41;} + else if ( (LA31_0=='\t'||LA31_0==' ') ) {s = 44;} - else if ( (LA33_0=='\"') ) {s = 42;} + else if ( (LA31_0=='\n'||LA31_0=='\r') ) {s = 45;} - else if ( (LA33_0=='\'') ) {s = 43;} + else if ( ((LA31_0>='A' && LA31_0<='S')||(LA31_0>='U' && LA31_0<='Z')) ) {s = 46;} - else if ( (LA33_0=='\t'||LA33_0==' ') ) {s = 44;} + else if ( (LA31_0=='3') ) {s = 47;} - else if ( (LA33_0=='\n'||LA33_0=='\r') ) {s = 45;} + else if ( ((LA31_0>='4' && LA31_0<='9')) ) {s = 48;} - else if ( ((LA33_0>='A' && LA33_0<='S')||(LA33_0>='U' && LA33_0<='Z')) ) {s = 46;} + else if ( (LA31_0=='2') ) {s = 49;} - else if ( (LA33_0=='3') ) {s = 47;} + else if ( ((LA31_0>='\u0000' && LA31_0<='\b')||(LA31_0>='\u000B' && LA31_0<='\f')||(LA31_0>='\u000E' && LA31_0<='\u001F')||LA31_0=='!'||LA31_0=='$'||LA31_0=='&'||LA31_0==';'||(LA31_0>='?' && LA31_0<='@')||LA31_0=='\\'||LA31_0=='`'||(LA31_0>='~' && LA31_0<='\uFFFF')) ) {s = 50;} - else if ( ((LA33_0>='4' && LA33_0<='9')) ) {s = 48;} + if ( s>=0 ) return s; + break; + case 3 : + int LA31_42 = input.LA(1); - else if ( (LA33_0=='2') ) {s = 49;} + s = -1; + if ( ((LA31_42>='\u0000' && LA31_42<='\uFFFF')) ) {s = 113;} - else if ( ((LA33_0>='\u0000' && LA33_0<='\b')||(LA33_0>='\u000B' && LA33_0<='\f')||(LA33_0>='\u000E' && LA33_0<='\u001F')||LA33_0=='!'||LA33_0=='$'||LA33_0=='&'||LA33_0==';'||(LA33_0>='?' && LA33_0<='@')||LA33_0=='\\'||LA33_0=='`'||(LA33_0>='~' && LA33_0<='\uFFFF')) ) {s = 50;} + else s = 50; if ( s>=0 ) return s; break; } NoViableAltException nvae = - new NoViableAltException(getDescription(), 33, _s, input); + new NoViableAltException(getDescription(), 31, _s, input); error(nvae); throw nvae; } diff --git a/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/services/DSLGrammarAccess.java b/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/services/DSLGrammarAccess.java index 44a02dd5e..9e293370f 100644 --- a/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/services/DSLGrammarAccess.java +++ b/de.gebit.integrity.dsl/src-gen/de/gebit/integrity/services/DSLGrammarAccess.java @@ -5105,7 +5105,7 @@ public TerminalRule getML_COMMENTRule() { } //terminal SL_COMMENT: - // '//' !('\n' | '\r')* ('\r'? '\n')?; + // '//' !('\n' | '\r')*; public TerminalRule getSL_COMMENTRule() { return tSL_COMMENT; } diff --git a/de.gebit.integrity.dsl/src/integrity/integrity.xtext b/de.gebit.integrity.dsl/src/integrity/integrity.xtext index 43209d894..4dc4ddbd6 100644 --- a/de.gebit.integrity.dsl/src/integrity/integrity.xtext +++ b/de.gebit.integrity.dsl/src/integrity/integrity.xtext @@ -318,7 +318,7 @@ terminal STRING: '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\') | !('\\'|'"') )* '"' | "'" ( '\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\') | !('\\'|"'") )* "'"; terminal ML_COMMENT: '/*' !('*') -> '*/'; -terminal SL_COMMENT: '//' !('\n'|'\r')* ('\r'? '\n')?; +terminal SL_COMMENT: '//' !('\n'|'\r')*; terminal SL_VISIBLE_COMMENT: '-- ' !('\n'|'\r')*; terminal SL_VISIBLE_TITLE_COMMENT: '--- ' !('\n'|'\r')*; terminal ML_VISIBLE_COMMENT: '/- ' -> '-/'; diff --git a/de.gebit.integrity.dsl/xtend-gen/de/gebit/integrity/generator/.DSLGenerator.xtendbin b/de.gebit.integrity.dsl/xtend-gen/de/gebit/integrity/generator/.DSLGenerator.xtendbin index eb7cc1e07697575402488e9ec514d881a226f71d..a0647da585e45a1ddd50a55b1553ef3a8adc4d5a 100644 GIT binary patch delta 70 zcmZn?XcFKH@MdNaVc_84U@&X+_ua_n!^{F=Y>s1gXM(U+vd&}#vnIQ-n?V>2>~;{w HA$A7