From 76224bd5f49b840a724f1bb38bcf3322f1688c5e Mon Sep 17 00:00:00 2001 From: leo Date: Wed, 22 Apr 2009 02:10:12 +0000 Subject: [PATCH] git-svn-id: http://www.xerial.org/svn/project/XerialJ/trunk/xerial-core@3239 ae02f08e-27ec-0310-ae8c-8ba02fe2eafd --- src/main/java/org/xerial/core/XerialErrorCode.java | 6 +- src/main/java/org/xerial/silk/impl/Silk.g | 31 +- src/main/java/org/xerial/silk/impl/Silk.tokens | 16 +- src/main/java/org/xerial/silk/impl/SilkLexer.java | 2221 ++++++++++---------- src/main/java/org/xerial/silk/impl/SilkParser.java | 572 ++--- 5 files changed, 1434 insertions(+), 1412 deletions(-) diff --git a/src/main/java/org/xerial/core/XerialErrorCode.java b/src/main/java/org/xerial/core/XerialErrorCode.java index 403144d..36cc59a 100644 --- a/src/main/java/org/xerial/core/XerialErrorCode.java +++ b/src/main/java/org/xerial/core/XerialErrorCode.java @@ -62,7 +62,11 @@ public enum XerialErrorCode implements ErrorCode { INACCESSIBLE_METHOD, WRONG_DATA_TYPE, DECODE_ERROR, - ENCODE_ERROR + ENCODE_ERROR, + + // parse error + INVALID_TOKEN, + PARSE_ERROR ; diff --git a/src/main/java/org/xerial/silk/impl/Silk.g b/src/main/java/org/xerial/silk/impl/Silk.g index fb55271..f267d90 100644 --- a/src/main/java/org/xerial/silk/impl/Silk.g +++ b/src/main/java/org/xerial/silk/impl/Silk.g @@ -76,6 +76,8 @@ Key; //-------------------------------------- package org.xerial.silk.impl; +import org.xerial.core.XerialError; +import org.xerial.core.XerialErrorCode; import org.xerial.util.log.Logger; import org.xerial.silk.impl.SilkLexerState; import org.xerial.silk.impl.SilkLexerState.State; @@ -124,14 +126,24 @@ private boolean isValue() { return currentState() == State.IN_VALUE || currentSt private boolean isInValue() { return currentState() == State.IN_VALUE; } private boolean isOutValue() { return currentState() == State.OUT_VALUE; } private boolean isHead() { return getCharPositionInLine() == 0; } + + + @Override + public void reportError(RecognitionException e) { + String message = "line=" + getLine() + "(" + getCharPositionInLine() + "): " + e.toString();; + throw new XerialError(XerialErrorCode.INVALID_TOKEN, message); + } + + } + // lexer rules // comment LineComment: '#' ~('\n'|'\r')* LineBreak { $channel=HIDDEN; }; -Preamble: '%' ~('\n'|'\r')* LineBreak; +Preamble: { isHead() }? => '%' ~('\n'|'\r')* LineBreak; // r: n : fragment LineBreakChar: '\n' | '\r'; @@ -144,7 +156,7 @@ LineBreak MultiLineSeparator: { isHead() }? => '--' WhiteSpace* LineBreak; MultiLineEntrySeparator: { isHead() }? => '>>' WhiteSpace* LineBreak; -NodeIndent: { isHead() }? (' ')* '-' { transit(Symbol.NodeStart); } ; +NodeIndent: { isHead() }? => (' ')* '-' { transit(Symbol.NodeStart); } ; FunctionIndent: { isHead() }? => (' ')* '@' { transit(Symbol.NodeStart); } ; BlankLine: { isHead() }? => WhiteSpace* LineBreak; @@ -196,19 +208,20 @@ fragment PlainSafeIn: ~(PlainUnsafeChar | ScopeIndicator | ','); fragment PlainSafeOut: ~(PlainUnsafeChar); fragment PlainFirst - : { isInValue() }? => ~('"'| '\\' | LineBreakChar | WhiteSpace | Indicator ) - | ~('"'| '\\' | '-' | LineBreakChar | WhiteSpace | Indicator ) - | { isValue() }? => (':' | '?') NonSpaceChar + : ~('-' | PlainUnsafeChar | WhiteSpace | Indicator ) + | { isValue() }? => ('-' | ':' | '?') NonSpaceChar ; - + fragment PlainSafe : { isKey() }? => PlainSafeKey | { isInValue() }? => PlainSafeIn | { isOutValue() }? => PlainSafeOut ; -PlainOneLine: PlainFirst (WhiteSpace* PlainSafe)* { transit(Symbol.LeaveValue); } - ; +PlainOneLine + : PlainFirst (WhiteSpace* PlainSafe)* { transit(Symbol.LeaveValue); } + ; + JSON : { isValue() }? => '{' @@ -235,7 +248,7 @@ JSON } ; -Separation: { !isHead() }? WhiteSpace+ { $channel=HIDDEN; }; +Separation: { !isHead() }? => WhiteSpace+ { $channel=HIDDEN; }; WhiteSpace : (' ' | '\t') diff --git a/src/main/java/org/xerial/silk/impl/Silk.tokens b/src/main/java/org/xerial/silk/impl/Silk.tokens index 57f4603..212f68b 100644 --- a/src/main/java/org/xerial/silk/impl/Silk.tokens +++ b/src/main/java/org/xerial/silk/impl/Silk.tokens @@ -1,6 +1,6 @@ Key=14 -PlainUnsafeChar=52 -PlainSafeKey=53 +PlainUnsafeChar=51 +PlainSafeKey=52 DataType=10 SilkNode=5 SilkLine=6 @@ -13,18 +13,18 @@ Plus=35 Occurrence=9 Argument=12 Separation=59 -FlowIndicator=51 +FlowIndicator=49 Letter=40 -PlainSafeIn=54 +PlainSafeIn=53 Comma=29 TabSeq=32 NonSpaceChar=45 EscapeSequence=43 DataLine=26 -PlainFirst=49 +PlainFirst=55 WhiteSpace=19 MultiLineEntrySeparator=21 -PlainSafeOut=55 +PlainSafeOut=54 JSON=58 Question=38 LineComment=16 @@ -36,7 +36,7 @@ Star=33 Preamble=17 Seq=31 FunctionIndent=23 -Indicator=48 +Indicator=50 RParen=28 UnicodeChar=42 StringChar=44 @@ -49,7 +49,7 @@ Name=7 LParen=27 String=47 LineBreakChar=18 -ScopeIndicator=50 +ScopeIndicator=48 StringChar_s=46 Value=8 RBracket=37 diff --git a/src/main/java/org/xerial/silk/impl/SilkLexer.java b/src/main/java/org/xerial/silk/impl/SilkLexer.java index 4989f10..b75b1b3 100644 --- a/src/main/java/org/xerial/silk/impl/SilkLexer.java +++ b/src/main/java/org/xerial/silk/impl/SilkLexer.java @@ -1,4 +1,4 @@ -// $ANTLR 3.1.1 F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g 2009-04-21 16:35:50 +// $ANTLR 3.1.1 c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g 2009-04-22 10:07:57 /*-------------------------------------------------------------------------- * Copyright 2009 Taro L. Saito @@ -24,6 +24,8 @@ //-------------------------------------- package org.xerial.silk.impl; +import org.xerial.core.XerialError; +import org.xerial.core.XerialErrorCode; import org.xerial.util.log.Logger; import org.xerial.silk.impl.SilkLexerState; import org.xerial.silk.impl.SilkLexerState.State; @@ -37,8 +39,8 @@ import java.util.ArrayList; public class SilkLexer extends Lexer { public static final int Key=14; - public static final int PlainUnsafeChar=52; - public static final int PlainSafeKey=53; + public static final int PlainUnsafeChar=51; + public static final int PlainSafeKey=52; public static final int DataType=10; public static final int SilkNode=5; public static final int SilkLine=6; @@ -50,19 +52,19 @@ public class SilkLexer extends Lexer { public static final int Plus=35; public static final int Occurrence=9; public static final int Argument=12; - public static final int FlowIndicator=51; + public static final int FlowIndicator=49; public static final int Separation=59; public static final int Letter=40; - public static final int PlainSafeIn=54; + public static final int PlainSafeIn=53; public static final int Comma=29; public static final int TabSeq=32; public static final int NonSpaceChar=45; public static final int EscapeSequence=43; public static final int DataLine=26; - public static final int PlainFirst=49; + public static final int PlainFirst=55; public static final int WhiteSpace=19; public static final int MultiLineEntrySeparator=21; - public static final int PlainSafeOut=55; + public static final int PlainSafeOut=54; public static final int JSON=58; public static final int Question=38; public static final int LineComment=16; @@ -74,7 +76,7 @@ public class SilkLexer extends Lexer { public static final int Preamble=17; public static final int Seq=31; public static final int FunctionIndent=23; - public static final int Indicator=48; + public static final int Indicator=50; public static final int RParen=28; public static final int UnicodeChar=42; public static final int BlankLine=24; @@ -87,7 +89,7 @@ public class SilkLexer extends Lexer { public static final int LParen=27; public static final int String=47; public static final int LineBreakChar=18; - public static final int ScopeIndicator=50; + public static final int ScopeIndicator=48; public static final int EOF=-1; public static final int StringChar_s=46; public static final int Value=8; @@ -109,6 +111,15 @@ public class SilkLexer extends Lexer { private boolean isHead() { return getCharPositionInLine() == 0; } + @Override + public void reportError(RecognitionException e) { + String message = "line=" + getLine() + "(" + getCharPositionInLine() + "): " + e.toString();; + throw new XerialError(XerialErrorCode.INVALID_TOKEN, message); + } + + + + // delegates // delegators @@ -120,18 +131,18 @@ public class SilkLexer extends Lexer { super(input,state); } - public String getGrammarFileName() { return "F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g"; } + public String getGrammarFileName() { return "c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g"; } // $ANTLR start "LineComment" public final void mLineComment() throws RecognitionException { try { int _type = LineComment; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:133:12: ( '#' (~ ( '\\n' | '\\r' ) )* LineBreak ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:133:14: '#' (~ ( '\\n' | '\\r' ) )* LineBreak + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:145:12: ( '#' (~ ( '\\n' | '\\r' ) )* LineBreak ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:145:14: '#' (~ ( '\\n' | '\\r' ) )* LineBreak { match('#'); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:133:18: (~ ( '\\n' | '\\r' ) )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:145:18: (~ ( '\\n' | '\\r' ) )* loop1: do { int alt1=2; @@ -144,7 +155,7 @@ public class SilkLexer extends Lexer { switch (alt1) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:133:18: ~ ( '\\n' | '\\r' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:145:18: ~ ( '\\n' | '\\r' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -182,11 +193,14 @@ public class SilkLexer extends Lexer { try { int _type = Preamble; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:134:9: ( '%' (~ ( '\\n' | '\\r' ) )* LineBreak ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:134:11: '%' (~ ( '\\n' | '\\r' ) )* LineBreak + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:146:9: ({...}? => '%' (~ ( '\\n' | '\\r' ) )* LineBreak ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:146:11: {...}? => '%' (~ ( '\\n' | '\\r' ) )* LineBreak { + if ( !(( isHead() )) ) { + throw new FailedPredicateException(input, "Preamble", " isHead() "); + } match('%'); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:134:15: (~ ( '\\n' | '\\r' ) )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:146:32: (~ ( '\\n' | '\\r' ) )* loop2: do { int alt2=2; @@ -199,7 +213,7 @@ public class SilkLexer extends Lexer { switch (alt2) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:134:15: ~ ( '\\n' | '\\r' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:146:32: ~ ( '\\n' | '\\r' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -234,8 +248,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "LineBreakChar" public final void mLineBreakChar() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:137:23: ( '\\n' | '\\r' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:149:23: ( '\\n' | '\\r' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { if ( input.LA(1)=='\n'||input.LA(1)=='\r' ) { input.consume(); @@ -260,10 +274,10 @@ public class SilkLexer extends Lexer { try { int _type = LineBreak; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:140:2: ( ( '\\r' '\\n' | '\\r' | '\\n' ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:140:4: ( '\\r' '\\n' | '\\r' | '\\n' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:152:2: ( ( '\\r' '\\n' | '\\r' | '\\n' ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:152:4: ( '\\r' '\\n' | '\\r' | '\\n' ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:140:4: ( '\\r' '\\n' | '\\r' | '\\n' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:152:4: ( '\\r' '\\n' | '\\r' | '\\n' ) int alt3=3; int LA3_0 = input.LA(1); @@ -287,7 +301,7 @@ public class SilkLexer extends Lexer { } switch (alt3) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:140:5: '\\r' '\\n' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:152:5: '\\r' '\\n' { match('\r'); match('\n'); @@ -295,14 +309,14 @@ public class SilkLexer extends Lexer { } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:140:17: '\\r' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:152:17: '\\r' { match('\r'); } break; case 3 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:140:24: '\\n' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:152:24: '\\n' { match('\n'); @@ -328,15 +342,15 @@ public class SilkLexer extends Lexer { try { int _type = MultiLineSeparator; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:144:19: ({...}? => '--' ( WhiteSpace )* LineBreak ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:144:21: {...}? => '--' ( WhiteSpace )* LineBreak + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:156:19: ({...}? => '--' ( WhiteSpace )* LineBreak ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:156:21: {...}? => '--' ( WhiteSpace )* LineBreak { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "MultiLineSeparator", " isHead() "); } match("--"); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:144:43: ( WhiteSpace )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:156:43: ( WhiteSpace )* loop4: do { int alt4=2; @@ -349,7 +363,7 @@ public class SilkLexer extends Lexer { switch (alt4) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:144:43: WhiteSpace + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:156:43: WhiteSpace { mWhiteSpace(); @@ -378,15 +392,15 @@ public class SilkLexer extends Lexer { try { int _type = MultiLineEntrySeparator; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:145:24: ({...}? => '>>' ( WhiteSpace )* LineBreak ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:145:26: {...}? => '>>' ( WhiteSpace )* LineBreak + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:157:24: ({...}? => '>>' ( WhiteSpace )* LineBreak ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:157:26: {...}? => '>>' ( WhiteSpace )* LineBreak { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "MultiLineEntrySeparator", " isHead() "); } match(">>"); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:145:48: ( WhiteSpace )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:157:48: ( WhiteSpace )* loop5: do { int alt5=2; @@ -399,7 +413,7 @@ public class SilkLexer extends Lexer { switch (alt5) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:145:48: WhiteSpace + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:157:48: WhiteSpace { mWhiteSpace(); @@ -428,13 +442,13 @@ public class SilkLexer extends Lexer { try { int _type = NodeIndent; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:147:11: ({...}? ( ' ' )* '-' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:147:13: {...}? ( ' ' )* '-' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:11: ({...}? => ( ' ' )* '-' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:13: {...}? => ( ' ' )* '-' { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "NodeIndent", " isHead() "); } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:147:27: ( ' ' )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:30: ( ' ' )* loop6: do { int alt6=2; @@ -447,7 +461,7 @@ public class SilkLexer extends Lexer { switch (alt6) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:147:28: ' ' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:31: ' ' { match(' '); @@ -477,13 +491,13 @@ public class SilkLexer extends Lexer { try { int _type = FunctionIndent; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:148:15: ({...}? => ( ' ' )* '@' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:148:17: {...}? => ( ' ' )* '@' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:160:15: ({...}? => ( ' ' )* '@' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:160:17: {...}? => ( ' ' )* '@' { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "FunctionIndent", " isHead() "); } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:148:34: ( ' ' )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:160:34: ( ' ' )* loop7: do { int alt7=2; @@ -496,7 +510,7 @@ public class SilkLexer extends Lexer { switch (alt7) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:148:35: ' ' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:160:35: ' ' { match(' '); @@ -526,13 +540,13 @@ public class SilkLexer extends Lexer { try { int _type = BlankLine; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:149:10: ({...}? => ( WhiteSpace )* LineBreak ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:149:12: {...}? => ( WhiteSpace )* LineBreak + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:161:10: ({...}? => ( WhiteSpace )* LineBreak ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:161:12: {...}? => ( WhiteSpace )* LineBreak { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "BlankLine", " isHead() "); } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:149:29: ( WhiteSpace )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:161:29: ( WhiteSpace )* loop8: do { int alt8=2; @@ -545,7 +559,7 @@ public class SilkLexer extends Lexer { switch (alt8) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:149:29: WhiteSpace + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:161:29: WhiteSpace { mWhiteSpace(); @@ -572,8 +586,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "DataLineBody" public final void mDataLineBody() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:151:22: (~ ( '-' | '%' | '#' | '@' | WhiteSpace | LineBreakChar ) (~ ( '#' | '\\n' | '\\r' ) )* ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:151:24: ~ ( '-' | '%' | '#' | '@' | WhiteSpace | LineBreakChar ) (~ ( '#' | '\\n' | '\\r' ) )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:163:22: (~ ( '-' | '%' | '#' | '@' | WhiteSpace | LineBreakChar ) (~ ( '#' | '\\n' | '\\r' ) )* ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:163:24: ~ ( '-' | '%' | '#' | '@' | WhiteSpace | LineBreakChar ) (~ ( '#' | '\\n' | '\\r' ) )* { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\b')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\u001F')||(input.LA(1)>='!' && input.LA(1)<='\"')||input.LA(1)=='$'||(input.LA(1)>='&' && input.LA(1)<=',')||(input.LA(1)>='.' && input.LA(1)<='?')||(input.LA(1)>='A' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -584,7 +598,7 @@ public class SilkLexer extends Lexer { recover(mse); throw mse;} - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:151:78: (~ ( '#' | '\\n' | '\\r' ) )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:163:78: (~ ( '#' | '\\n' | '\\r' ) )* loop9: do { int alt9=2; @@ -597,7 +611,7 @@ public class SilkLexer extends Lexer { switch (alt9) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:151:78: ~ ( '#' | '\\n' | '\\r' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:163:78: ~ ( '#' | '\\n' | '\\r' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\"')||(input.LA(1)>='$' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -633,13 +647,13 @@ public class SilkLexer extends Lexer { int _channel = DEFAULT_TOKEN_CHANNEL; Token DataLineBody1=null; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:152:9: ({...}? => ( WhiteSpace )* DataLineBody ( LineBreak | LineComment ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:152:11: {...}? => ( WhiteSpace )* DataLineBody ( LineBreak | LineComment ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:164:9: ({...}? => ( WhiteSpace )* DataLineBody ( LineBreak | LineComment ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:164:11: {...}? => ( WhiteSpace )* DataLineBody ( LineBreak | LineComment ) { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "DataLine", " isHead() "); } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:153:5: ( WhiteSpace )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:165:5: ( WhiteSpace )* loop10: do { int alt10=2; @@ -652,7 +666,7 @@ public class SilkLexer extends Lexer { switch (alt10) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:153:5: WhiteSpace + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:165:5: WhiteSpace { mWhiteSpace(); @@ -664,10 +678,10 @@ public class SilkLexer extends Lexer { } } while (true); - int DataLineBody1Start259 = getCharIndex(); + int DataLineBody1Start265 = getCharIndex(); mDataLineBody(); - DataLineBody1 = new CommonToken(input, Token.INVALID_TOKEN_TYPE, Token.DEFAULT_CHANNEL, DataLineBody1Start259, getCharIndex()-1); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:153:30: ( LineBreak | LineComment ) + DataLineBody1 = new CommonToken(input, Token.INVALID_TOKEN_TYPE, Token.DEFAULT_CHANNEL, DataLineBody1Start265, getCharIndex()-1); + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:165:30: ( LineBreak | LineComment ) int alt11=2; int LA11_0 = input.LA(1); @@ -685,14 +699,14 @@ public class SilkLexer extends Lexer { } switch (alt11) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:153:31: LineBreak + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:165:31: LineBreak { mLineBreak(); } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:153:41: LineComment + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:165:41: LineComment { mLineComment(); @@ -718,8 +732,8 @@ public class SilkLexer extends Lexer { try { int _type = LParen; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:155:7: ( '(' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:155:9: '(' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:167:7: ( '(' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:167:9: '(' { match('('); transit(Symbol.EnterParen); @@ -739,8 +753,8 @@ public class SilkLexer extends Lexer { try { int _type = RParen; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:156:7: ( ')' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:156:9: ')' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:168:7: ( ')' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:168:9: ')' { match(')'); transit(Symbol.LeaveParen); @@ -760,8 +774,8 @@ public class SilkLexer extends Lexer { try { int _type = Comma; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:157:6: ( ',' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:157:9: ',' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:169:6: ( ',' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:169:9: ',' { match(','); @@ -780,8 +794,8 @@ public class SilkLexer extends Lexer { try { int _type = Colon; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:158:6: ( ':' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:158:8: ':' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:170:6: ( ':' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:170:8: ':' { match(':'); transit(Symbol.Colon); @@ -801,8 +815,8 @@ public class SilkLexer extends Lexer { try { int _type = Seq; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:161:4: ( '>' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:161:7: '>' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:173:4: ( '>' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:173:7: '>' { match('>'); @@ -821,8 +835,8 @@ public class SilkLexer extends Lexer { try { int _type = TabSeq; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:162:7: ( '|' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:162:9: '|' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:174:7: ( '|' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:174:9: '|' { match('|'); @@ -841,8 +855,8 @@ public class SilkLexer extends Lexer { try { int _type = Star; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:163:5: ( '*' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:163:8: '*' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:5: ( '*' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:8: '*' { match('*'); @@ -861,8 +875,8 @@ public class SilkLexer extends Lexer { try { int _type = At; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:164:3: ( '@' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:164:6: '@' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:3: ( '@' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:6: '@' { match('@'); transit(Symbol.At); @@ -882,8 +896,8 @@ public class SilkLexer extends Lexer { try { int _type = Plus; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:165:5: ( '+' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:165:7: '+' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:5: ( '+' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:7: '+' { match('+'); @@ -902,8 +916,8 @@ public class SilkLexer extends Lexer { try { int _type = LBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:166:9: ( '[' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:166:11: '[' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:178:9: ( '[' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:178:11: '[' { match('['); transit(Symbol.EnterParen); @@ -923,8 +937,8 @@ public class SilkLexer extends Lexer { try { int _type = RBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:167:9: ( ']' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:167:11: ']' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:179:9: ( ']' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:179:11: ']' { match(']'); @@ -943,8 +957,8 @@ public class SilkLexer extends Lexer { try { int _type = Question; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:168:9: ( '?' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:168:11: '?' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:180:9: ( '?' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:180:11: '?' { match('?'); @@ -961,8 +975,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "Digit" public final void mDigit() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:170:15: ( '0' .. '9' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:170:17: '0' .. '9' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:182:15: ( '0' .. '9' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:182:17: '0' .. '9' { matchRange('0','9'); @@ -977,8 +991,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "Letter" public final void mLetter() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:171:16: ( 'A' .. 'F' | 'a' .. 'f' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:183:16: ( 'A' .. 'F' | 'a' .. 'f' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { if ( (input.LA(1)>='A' && input.LA(1)<='F')||(input.LA(1)>='a' && input.LA(1)<='f') ) { input.consume(); @@ -1001,8 +1015,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "HexDigit" public final void mHexDigit() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:172:18: ( Digit | Letter ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:184:18: ( Digit | Letter ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='F')||(input.LA(1)>='a' && input.LA(1)<='f') ) { input.consume(); @@ -1025,8 +1039,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "UnicodeChar" public final void mUnicodeChar() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:173:21: (~ ( '\"' | '\\\\' | LineBreakChar ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:173:23: ~ ( '\"' | '\\\\' | LineBreakChar ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:185:21: (~ ( '\"' | '\\\\' | LineBreakChar ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:185:23: ~ ( '\"' | '\\\\' | LineBreakChar ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1049,11 +1063,11 @@ public class SilkLexer extends Lexer { // $ANTLR start "EscapeSequence" public final void mEscapeSequence() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:2: ( '\\\\' ( '\\\"' | '\\\\' | '/' | 'b' | 'f' | 'n' | 'r' | 't' | 'u' HexDigit HexDigit HexDigit HexDigit ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:4: '\\\\' ( '\\\"' | '\\\\' | '/' | 'b' | 'f' | 'n' | 'r' | 't' | 'u' HexDigit HexDigit HexDigit HexDigit ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:2: ( '\\\\' ( '\\\"' | '\\\\' | '/' | 'b' | 'f' | 'n' | 'r' | 't' | 'u' HexDigit HexDigit HexDigit HexDigit ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:4: '\\\\' ( '\\\"' | '\\\\' | '/' | 'b' | 'f' | 'n' | 'r' | 't' | 'u' HexDigit HexDigit HexDigit HexDigit ) { match('\\'); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:9: ( '\\\"' | '\\\\' | '/' | 'b' | 'f' | 'n' | 'r' | 't' | 'u' HexDigit HexDigit HexDigit HexDigit ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:9: ( '\\\"' | '\\\\' | '/' | 'b' | 'f' | 'n' | 'r' | 't' | 'u' HexDigit HexDigit HexDigit HexDigit ) int alt12=9; switch ( input.LA(1) ) { case '\"': @@ -1110,63 +1124,63 @@ public class SilkLexer extends Lexer { switch (alt12) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:10: '\\\"' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:10: '\\\"' { match('\"'); } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:17: '\\\\' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:17: '\\\\' { match('\\'); } break; case 3 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:24: '/' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:24: '/' { match('/'); } break; case 4 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:30: 'b' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:30: 'b' { match('b'); } break; case 5 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:36: 'f' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:36: 'f' { match('f'); } break; case 6 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:42: 'n' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:42: 'n' { match('n'); } break; case 7 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:48: 'r' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:48: 'r' { match('r'); } break; case 8 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:54: 't' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:54: 't' { match('t'); } break; case 9 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:60: 'u' HexDigit HexDigit HexDigit HexDigit + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:60: 'u' HexDigit HexDigit HexDigit HexDigit { match('u'); mHexDigit(); @@ -1191,7 +1205,7 @@ public class SilkLexer extends Lexer { // $ANTLR start "StringChar" public final void mStringChar() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:179:21: ( UnicodeChar | EscapeSequence ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:191:21: ( UnicodeChar | EscapeSequence ) int alt13=2; int LA13_0 = input.LA(1); @@ -1209,14 +1223,14 @@ public class SilkLexer extends Lexer { } switch (alt13) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:179:24: UnicodeChar + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:191:24: UnicodeChar { mUnicodeChar(); } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:179:38: EscapeSequence + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:191:38: EscapeSequence { mEscapeSequence(); @@ -1233,8 +1247,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "NonSpaceChar" public final void mNonSpaceChar() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:180:22: (~ ( '\"' | '\\\\' | LineBreakChar | WhiteSpace ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:180:24: ~ ( '\"' | '\\\\' | LineBreakChar | WhiteSpace ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:192:22: (~ ( '\"' | '\\\\' | LineBreakChar | WhiteSpace ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:192:24: ~ ( '\"' | '\\\\' | LineBreakChar | WhiteSpace ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\b')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\u001F')||input.LA(1)=='!'||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1257,10 +1271,10 @@ public class SilkLexer extends Lexer { // $ANTLR start "StringChar_s" public final void mStringChar_s() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:182:22: ( ( StringChar )* ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:182:24: ( StringChar )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:194:22: ( ( StringChar )* ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:194:24: ( StringChar )* { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:182:24: ( StringChar )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:194:24: ( StringChar )* loop14: do { int alt14=2; @@ -1273,7 +1287,7 @@ public class SilkLexer extends Lexer { switch (alt14) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:182:24: StringChar + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:194:24: StringChar { mStringChar(); @@ -1301,13 +1315,13 @@ public class SilkLexer extends Lexer { int _channel = DEFAULT_TOKEN_CHANNEL; Token s=null; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:183:7: ( '\"' s= StringChar_s '\"' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:183:9: '\"' s= StringChar_s '\"' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:195:7: ( '\"' s= StringChar_s '\"' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:195:9: '\"' s= StringChar_s '\"' { match('\"'); - int sStart560 = getCharIndex(); + int sStart566 = getCharIndex(); mStringChar_s(); - s = new CommonToken(input, Token.INVALID_TOKEN_TYPE, Token.DEFAULT_CHANNEL, sStart560, getCharIndex()-1); + s = new CommonToken(input, Token.INVALID_TOKEN_TYPE, Token.DEFAULT_CHANNEL, sStart566, getCharIndex()-1); match('\"'); setText((s!=null?s.getText():null)); @@ -1321,82 +1335,11 @@ public class SilkLexer extends Lexer { } // $ANTLR end "String" - // $ANTLR start "PlainFirst" - public final void mPlainFirst() throws RecognitionException { - try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:2: (~ ( '\"' | '\\\\' | LineBreakChar | WhiteSpace | Indicator ) | {...}? => ( ':' | '?' ) NonSpaceChar ) - int alt15=2; - int LA15_0 = input.LA(1); - - if ( (LA15_0=='?') ) { - int LA15_1 = input.LA(2); - - if ( ((LA15_1>='\u0000' && LA15_1<='\b')||(LA15_1>='\u000B' && LA15_1<='\f')||(LA15_1>='\u000E' && LA15_1<='\u001F')||LA15_1=='!'||(LA15_1>='#' && LA15_1<='[')||(LA15_1>=']' && LA15_1<='\uFFFF')) && (( isValue() ))) { - alt15=2; - } - else { - alt15=1;} - } - else if ( ((LA15_0>='\u0000' && LA15_0<='\b')||(LA15_0>='\u000B' && LA15_0<='\f')||(LA15_0>='\u000E' && LA15_0<='\u001F')||LA15_0=='!'||LA15_0=='$'||LA15_0=='&'||LA15_0=='+'||(LA15_0>='-' && LA15_0<='9')||(LA15_0>=';' && LA15_0<='=')||(LA15_0>='A' && LA15_0<='Z')||(LA15_0>='^' && LA15_0<='z')||(LA15_0>='~' && LA15_0<='\uFFFF')) ) { - alt15=1; - } - else if ( (LA15_0==':') && (( isValue() ))) { - alt15=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("", 15, 0, input); - - throw nvae; - } - switch (alt15) { - case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:187:4: ~ ( '\"' | '\\\\' | LineBreakChar | WhiteSpace | Indicator ) - { - if ( (input.LA(1)>='\u0000' && input.LA(1)<='\b')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\u001F')||input.LA(1)=='!'||input.LA(1)=='$'||input.LA(1)=='&'||input.LA(1)=='+'||(input.LA(1)>='-' && input.LA(1)<='9')||(input.LA(1)>=';' && input.LA(1)<='=')||input.LA(1)=='?'||(input.LA(1)>='A' && input.LA(1)<='Z')||(input.LA(1)>='^' && input.LA(1)<='z')||(input.LA(1)>='~' && input.LA(1)<='\uFFFF') ) { - input.consume(); - - } - else { - MismatchedSetException mse = new MismatchedSetException(null,input); - recover(mse); - throw mse;} - - - } - break; - case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:188:4: {...}? => ( ':' | '?' ) NonSpaceChar - { - if ( !(( isValue() )) ) { - throw new FailedPredicateException(input, "PlainFirst", " isValue() "); - } - if ( input.LA(1)==':'||input.LA(1)=='?' ) { - input.consume(); - - } - else { - MismatchedSetException mse = new MismatchedSetException(null,input); - recover(mse); - throw mse;} - - mNonSpaceChar(); - - } - break; - - } - } - finally { - } - } - // $ANTLR end "PlainFirst" - // $ANTLR start "ScopeIndicator" public final void mScopeIndicator() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:191:24: ( '(' | ')' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:199:24: ( '(' | ')' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { if ( (input.LA(1)>='(' && input.LA(1)<=')') ) { input.consume(); @@ -1419,8 +1362,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "FlowIndicator" public final void mFlowIndicator() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:192:23: ( '[' | ']' | '{' | '}' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:200:23: ( '[' | ']' | '{' | '}' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { if ( input.LA(1)=='['||input.LA(1)==']'||input.LA(1)=='{'||input.LA(1)=='}' ) { input.consume(); @@ -1443,8 +1386,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "Indicator" public final void mIndicator() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:193:19: ( FlowIndicator | ScopeIndicator | ',' | ':' | '#' | '>' | '|' | '*' | '\\'' | '\"' | '@' | '%' | '\\\\' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:201:19: ( FlowIndicator | ScopeIndicator | ',' | ':' | '#' | '>' | '|' | '*' | '\\'' | '\"' | '@' | '%' | '\\\\' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { if ( (input.LA(1)>='\"' && input.LA(1)<='#')||input.LA(1)=='%'||(input.LA(1)>='\'' && input.LA(1)<='*')||input.LA(1)==','||input.LA(1)==':'||input.LA(1)=='>'||input.LA(1)=='@'||(input.LA(1)>='[' && input.LA(1)<=']')||(input.LA(1)>='{' && input.LA(1)<='}') ) { input.consume(); @@ -1467,8 +1410,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "PlainUnsafeChar" public final void mPlainUnsafeChar() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:196:25: ( '\"' | '\\\\' | LineBreakChar | '#' ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:204:25: ( '\"' | '\\\\' | LineBreakChar | '#' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { if ( input.LA(1)=='\n'||input.LA(1)=='\r'||(input.LA(1)>='\"' && input.LA(1)<='#')||input.LA(1)=='\\' ) { input.consume(); @@ -1491,8 +1434,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "PlainSafeKey" public final void mPlainSafeKey() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:198:22: (~ ( PlainUnsafeChar | ScopeIndicator | FlowIndicator | ',' | ':' | '>' | '*' | '|' ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:198:24: ~ ( PlainUnsafeChar | ScopeIndicator | FlowIndicator | ',' | ':' | '>' | '*' | '|' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:22: (~ ( PlainUnsafeChar | ScopeIndicator | FlowIndicator | ',' | ':' | '>' | '*' | '|' ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:24: ~ ( PlainUnsafeChar | ScopeIndicator | FlowIndicator | ',' | ':' | '>' | '*' | '|' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='!')||(input.LA(1)>='$' && input.LA(1)<='\'')||input.LA(1)=='+'||(input.LA(1)>='-' && input.LA(1)<='9')||(input.LA(1)>=';' && input.LA(1)<='=')||(input.LA(1)>='?' && input.LA(1)<='Z')||(input.LA(1)>='^' && input.LA(1)<='z')||(input.LA(1)>='~' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1515,8 +1458,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "PlainSafeIn" public final void mPlainSafeIn() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:199:21: (~ ( PlainUnsafeChar | ScopeIndicator | ',' ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:199:23: ~ ( PlainUnsafeChar | ScopeIndicator | ',' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:207:21: (~ ( PlainUnsafeChar | ScopeIndicator | ',' ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:207:23: ~ ( PlainUnsafeChar | ScopeIndicator | ',' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='!')||(input.LA(1)>='$' && input.LA(1)<='\'')||(input.LA(1)>='*' && input.LA(1)<='+')||(input.LA(1)>='-' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1539,8 +1482,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "PlainSafeOut" public final void mPlainSafeOut() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:200:22: (~ ( PlainUnsafeChar ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:200:24: ~ ( PlainUnsafeChar ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:208:22: (~ ( PlainUnsafeChar ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:208:24: ~ ( PlainUnsafeChar ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='!')||(input.LA(1)>='$' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1560,10 +1503,81 @@ public class SilkLexer extends Lexer { } // $ANTLR end "PlainSafeOut" + // $ANTLR start "PlainFirst" + public final void mPlainFirst() throws RecognitionException { + try { + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:211:2: (~ ( '-' | PlainUnsafeChar | WhiteSpace | Indicator ) | {...}? => ( '-' | ':' | '?' ) NonSpaceChar ) + int alt15=2; + int LA15_0 = input.LA(1); + + if ( (LA15_0=='?') ) { + int LA15_1 = input.LA(2); + + if ( ((LA15_1>='\u0000' && LA15_1<='\b')||(LA15_1>='\u000B' && LA15_1<='\f')||(LA15_1>='\u000E' && LA15_1<='\u001F')||LA15_1=='!'||(LA15_1>='#' && LA15_1<='[')||(LA15_1>=']' && LA15_1<='\uFFFF')) && (( isValue() ))) { + alt15=2; + } + else { + alt15=1;} + } + else if ( ((LA15_0>='\u0000' && LA15_0<='\b')||(LA15_0>='\u000B' && LA15_0<='\f')||(LA15_0>='\u000E' && LA15_0<='\u001F')||LA15_0=='!'||LA15_0=='$'||LA15_0=='&'||LA15_0=='+'||(LA15_0>='.' && LA15_0<='9')||(LA15_0>=';' && LA15_0<='=')||(LA15_0>='A' && LA15_0<='Z')||(LA15_0>='^' && LA15_0<='z')||(LA15_0>='~' && LA15_0<='\uFFFF')) ) { + alt15=1; + } + else if ( (LA15_0=='-'||LA15_0==':') && (( isValue() ))) { + alt15=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 15, 0, input); + + throw nvae; + } + switch (alt15) { + case 1 : + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:211:5: ~ ( '-' | PlainUnsafeChar | WhiteSpace | Indicator ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='\b')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\u001F')||input.LA(1)=='!'||input.LA(1)=='$'||input.LA(1)=='&'||input.LA(1)=='+'||(input.LA(1)>='.' && input.LA(1)<='9')||(input.LA(1)>=';' && input.LA(1)<='=')||input.LA(1)=='?'||(input.LA(1)>='A' && input.LA(1)<='Z')||(input.LA(1)>='^' && input.LA(1)<='z')||(input.LA(1)>='~' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + case 2 : + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:212:4: {...}? => ( '-' | ':' | '?' ) NonSpaceChar + { + if ( !(( isValue() )) ) { + throw new FailedPredicateException(input, "PlainFirst", " isValue() "); + } + if ( input.LA(1)=='-'||input.LA(1)==':'||input.LA(1)=='?' ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + mNonSpaceChar(); + + } + break; + + } + } + finally { + } + } + // $ANTLR end "PlainFirst" + // $ANTLR start "PlainSafe" public final void mPlainSafe() throws RecognitionException { try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:204:2: ({...}? => PlainSafeKey | {...}? => PlainSafeIn | {...}? => PlainSafeOut ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:216:2: ({...}? => PlainSafeKey | {...}? => PlainSafeIn | {...}? => PlainSafeOut ) int alt16=3; int LA16_0 = input.LA(1); @@ -1613,7 +1627,7 @@ public class SilkLexer extends Lexer { } switch (alt16) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:204:4: {...}? => PlainSafeKey + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:216:4: {...}? => PlainSafeKey { if ( !(( isKey() )) ) { throw new FailedPredicateException(input, "PlainSafe", " isKey() "); @@ -1623,7 +1637,7 @@ public class SilkLexer extends Lexer { } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:205:4: {...}? => PlainSafeIn + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:217:4: {...}? => PlainSafeIn { if ( !(( isInValue() )) ) { throw new FailedPredicateException(input, "PlainSafe", " isInValue() "); @@ -1633,7 +1647,7 @@ public class SilkLexer extends Lexer { } break; case 3 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:4: {...}? => PlainSafeOut + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:218:4: {...}? => PlainSafeOut { if ( !(( isOutValue() )) ) { throw new FailedPredicateException(input, "PlainSafe", " isOutValue() "); @@ -1655,11 +1669,11 @@ public class SilkLexer extends Lexer { try { int _type = PlainOneLine; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:209:13: ( PlainFirst ( ( WhiteSpace )* PlainSafe )* ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:209:15: PlainFirst ( ( WhiteSpace )* PlainSafe )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:222:2: ( PlainFirst ( ( WhiteSpace )* PlainSafe )* ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:222:4: PlainFirst ( ( WhiteSpace )* PlainSafe )* { mPlainFirst(); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:209:26: ( ( WhiteSpace )* PlainSafe )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:222:15: ( ( WhiteSpace )* PlainSafe )* loop18: do { int alt18=2; @@ -1681,15 +1695,15 @@ public class SilkLexer extends Lexer { switch (alt18) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:209:27: ( WhiteSpace )* PlainSafe + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:222:16: ( WhiteSpace )* PlainSafe { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:209:27: ( WhiteSpace )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:222:16: ( WhiteSpace )* loop17: do { int alt17=2; int LA17_0 = input.LA(1); - if ( (LA17_0=='\t'||LA17_0==' ') && ((!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||( isOutValue() )||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||( isInValue() )||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||( isKey() )))) { + if ( (LA17_0=='\t'||LA17_0==' ') && ((!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||( isOutValue() )||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||( isInValue() )||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||( isKey() )||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))||!(((( isInValue() )||( isOutValue() )||( isKey() ))))))) { int LA17_1 = input.LA(2); if ( (!(((( isInValue() )||( isOutValue() )||( isKey() ))))) ) { @@ -1702,7 +1716,7 @@ public class SilkLexer extends Lexer { switch (alt17) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:209:27: WhiteSpace + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:222:16: WhiteSpace { mWhiteSpace(); @@ -1741,7 +1755,7 @@ public class SilkLexer extends Lexer { try { int _type = JSON; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:213:2: ({...}? => '{' | {...}? => '[' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:227:2: ({...}? => '{' | {...}? => '[' ) int alt19=2; int LA19_0 = input.LA(1); @@ -1759,7 +1773,7 @@ public class SilkLexer extends Lexer { } switch (alt19) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:213:4: {...}? => '{' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:227:4: {...}? => '{' { if ( !(( isValue() )) ) { throw new FailedPredicateException(input, "JSON", " isValue() "); @@ -1779,7 +1793,7 @@ public class SilkLexer extends Lexer { } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:4: {...}? => '[' + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:238:4: {...}? => '[' { if ( !(( isValue() )) ) { throw new FailedPredicateException(input, "JSON", " isValue() "); @@ -1813,13 +1827,13 @@ public class SilkLexer extends Lexer { try { int _type = Separation; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:237:11: ({...}? ( WhiteSpace )+ ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:237:13: {...}? ( WhiteSpace )+ + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:251:11: ({...}? => ( WhiteSpace )+ ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:251:13: {...}? => ( WhiteSpace )+ { if ( !(( !isHead() )) ) { throw new FailedPredicateException(input, "Separation", " !isHead() "); } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:237:28: ( WhiteSpace )+ + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:251:31: ( WhiteSpace )+ int cnt20=0; loop20: do { @@ -1833,7 +1847,7 @@ public class SilkLexer extends Lexer { switch (alt20) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:237:28: WhiteSpace + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:251:31: WhiteSpace { mWhiteSpace(); @@ -1866,8 +1880,8 @@ public class SilkLexer extends Lexer { try { int _type = WhiteSpace; int _channel = DEFAULT_TOKEN_CHANNEL; - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:240:2: ( ( ' ' | '\\t' ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:240:4: ( ' ' | '\\t' ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:254:2: ( ( ' ' | '\\t' ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:254:4: ( ' ' | '\\t' ) { if ( input.LA(1)=='\t'||input.LA(1)==' ' ) { input.consume(); @@ -1890,187 +1904,187 @@ public class SilkLexer extends Lexer { // $ANTLR end "WhiteSpace" public void mTokens() throws RecognitionException { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:8: ( LineComment | Preamble | LineBreak | MultiLineSeparator | MultiLineEntrySeparator | NodeIndent | FunctionIndent | BlankLine | DataLine | LParen | RParen | Comma | Colon | Seq | TabSeq | Star | At | Plus | LBracket | RBracket | Question | String | PlainOneLine | JSON | Separation | WhiteSpace ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:8: ( LineComment | Preamble | LineBreak | MultiLineSeparator | MultiLineEntrySeparator | NodeIndent | FunctionIndent | BlankLine | DataLine | LParen | RParen | Comma | Colon | Seq | TabSeq | Star | At | Plus | LBracket | RBracket | Question | String | PlainOneLine | JSON | Separation | WhiteSpace ) int alt21=26; alt21 = dfa21.predict(input); switch (alt21) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:10: LineComment + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:10: LineComment { mLineComment(); } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:22: Preamble + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:22: Preamble { mPreamble(); } break; case 3 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:31: LineBreak + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:31: LineBreak { mLineBreak(); } break; case 4 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:41: MultiLineSeparator + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:41: MultiLineSeparator { mMultiLineSeparator(); } break; case 5 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:60: MultiLineEntrySeparator + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:60: MultiLineEntrySeparator { mMultiLineEntrySeparator(); } break; case 6 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:84: NodeIndent + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:84: NodeIndent { mNodeIndent(); } break; case 7 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:95: FunctionIndent + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:95: FunctionIndent { mFunctionIndent(); } break; case 8 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:110: BlankLine + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:110: BlankLine { mBlankLine(); } break; case 9 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:120: DataLine + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:120: DataLine { mDataLine(); } break; case 10 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:129: LParen + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:129: LParen { mLParen(); } break; case 11 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:136: RParen + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:136: RParen { mRParen(); } break; case 12 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:143: Comma + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:143: Comma { mComma(); } break; case 13 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:149: Colon + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:149: Colon { mColon(); } break; case 14 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:155: Seq + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:155: Seq { mSeq(); } break; case 15 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:159: TabSeq + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:159: TabSeq { mTabSeq(); } break; case 16 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:166: Star + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:166: Star { mStar(); } break; case 17 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:171: At + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:171: At { mAt(); } break; case 18 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:174: Plus + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:174: Plus { mPlus(); } break; case 19 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:179: LBracket + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:179: LBracket { mLBracket(); } break; case 20 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:188: RBracket + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:188: RBracket { mRBracket(); } break; case 21 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:197: Question + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:197: Question { mQuestion(); } break; case 22 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:206: String + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:206: String { mString(); } break; case 23 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:213: PlainOneLine + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:213: PlainOneLine { mPlainOneLine(); } break; case 24 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:226: JSON + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:226: JSON { mJSON(); } break; case 25 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:231: Separation + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:231: Separation { mSeparation(); } break; case 26 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:242: WhiteSpace + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:242: WhiteSpace { mWhiteSpace(); @@ -2084,44 +2098,41 @@ public class SilkLexer extends Lexer { protected DFA21 dfa21 = new DFA21(this); static final String DFA21_eotS = - "\3\uffff\1\31\1\32\1\34\1\37\1\40\1\46\1\40\1\47\1\50\1\51\1\53"+ - "\1\55\1\56\1\60\1\64\1\65\1\67\1\uffff\1\35\1\76\1\uffff\1\77\2"+ - "\uffff\1\35\6\uffff\2\106\6\uffff\1\111\1\uffff\1\111\2\uffff\1"+ - "\122\1\uffff\3\122\2\uffff\1\122\1\uffff\2\122\3\uffff\1\144\3\uffff"+ - "\1\122\2\uffff\2\146\4\uffff\10\111\2\uffff\4\122\1\144\14\uffff"+ - "\1\146\23\uffff"; + "\3\uffff\1\31\1\32\1\34\1\37\1\41\1\45\1\41\1\46\1\47\1\50\1\51"+ + "\1\54\1\55\1\56\1\63\1\64\1\65\1\uffff\1\75\1\76\1\uffff\1\77\2"+ + "\uffff\1\103\4\uffff\1\107\2\uffff\1\107\6\uffff\2\103\3\uffff\4"+ + "\75\3\uffff\3\123\2\uffff\1\141\5\uffff\1\103\2\uffff\2\147\4\uffff"+ + "\10\103\2\uffff\4\123\12\uffff\1\141\3\uffff\1\147\23\uffff"; static final String DFA21_eofS = - "\171\uffff"; + "\172\uffff"; static final String DFA21_minS = - "\1\0\2\uffff\1\12\23\0\1\uffff\3\0\1\11\1\0\1\uffff\1\0\1\uffff"+ - "\1\0\1\uffff\2\0\2\uffff\1\0\3\uffff\1\0\1\uffff\1\0\2\uffff\1\0"+ - "\1\uffff\4\0\1\uffff\1\0\1\uffff\6\0\1\uffff\1\0\1\uffff\1\11\1"+ - "\uffff\1\0\1\12\1\0\4\uffff\10\0\2\uffff\20\0\1\uffff\14\0\1\uffff"+ - "\7\0"; + "\1\0\2\uffff\1\12\23\0\1\uffff\3\0\1\11\2\uffff\1\0\1\uffff\2\0"+ + "\1\uffff\1\0\1\uffff\1\0\4\uffff\2\0\3\uffff\5\0\2\uffff\7\0\2\uffff"+ + "\1\0\1\uffff\1\0\2\uffff\1\12\2\0\3\uffff\10\0\2\uffff\15\0\1\uffff"+ + "\3\0\1\uffff\14\0\1\uffff\7\0"; static final String DFA21_maxS = "\1\uffff\2\uffff\1\12\1\0\3\uffff\1\0\16\uffff\1\uffff\3\0\1\40"+ - "\1\0\1\uffff\1\uffff\1\uffff\1\0\1\uffff\2\uffff\2\uffff\1\0\3\uffff"+ - "\1\uffff\1\uffff\1\uffff\2\uffff\1\uffff\1\uffff\3\uffff\1\0\1\uffff"+ - "\1\uffff\1\uffff\6\uffff\1\uffff\1\0\1\uffff\1\40\1\uffff\1\uffff"+ - "\1\12\1\0\4\uffff\10\uffff\2\uffff\20\uffff\1\uffff\2\0\12\uffff"+ - "\1\uffff\7\uffff"; + "\2\uffff\1\uffff\1\uffff\1\uffff\1\0\1\uffff\1\uffff\1\uffff\1\0"+ + "\4\uffff\2\uffff\3\uffff\4\uffff\1\0\2\uffff\7\uffff\2\uffff\1\0"+ + "\1\uffff\1\uffff\2\uffff\1\12\1\0\1\uffff\3\uffff\10\uffff\2\uffff"+ + "\15\uffff\1\uffff\3\uffff\1\uffff\2\0\12\uffff\1\uffff\7\uffff"; static final String DFA21_acceptS = - "\1\uffff\1\1\1\2\24\uffff\1\11\5\uffff\1\27\1\uffff\1\16\1\uffff"+ - "\1\7\2\uffff\1\6\1\10\1\uffff\1\12\1\13\1\14\1\uffff\1\15\1\uffff"+ - "\1\17\1\20\1\uffff\1\22\4\uffff\1\24\1\uffff\1\25\6\uffff\1\30\1"+ - "\uffff\1\3\1\uffff\1\4\3\uffff\1\31\1\32\1\21\1\27\10\uffff\1\27"+ - "\1\23\20\uffff\1\26\14\uffff\1\5\7\uffff"; + "\1\uffff\1\1\1\2\24\uffff\1\11\4\uffff\1\6\1\27\1\uffff\1\16\2"+ + "\uffff\1\10\1\uffff\1\7\1\uffff\1\12\1\13\1\14\1\15\2\uffff\1\17"+ + "\1\20\1\22\5\uffff\1\24\1\25\7\uffff\1\27\1\30\1\uffff\1\3\1\uffff"+ + "\1\4\1\27\3\uffff\1\31\1\32\1\21\10\uffff\1\23\1\27\15\uffff\1\26"+ + "\3\uffff\1\27\14\uffff\1\5\7\uffff"; static final String DFA21_specialS = - "\1\122\4\uffff\1\0\1\106\1\15\1\uffff\1\70\1\17\1\53\1\5\1\34\1"+ - "\61\1\11\1\102\1\37\1\40\1\107\1\42\1\103\1\2\2\uffff\1\124\1\123"+ - "\1\14\1\10\1\uffff\1\13\1\uffff\1\6\1\uffff\1\7\1\113\2\uffff\1"+ - "\73\3\uffff\1\16\1\uffff\1\110\2\uffff\1\56\1\uffff\1\64\1\27\1"+ - "\23\1\76\1\uffff\1\43\1\uffff\1\30\1\104\1\41\1\46\1\31\1\77\1\uffff"+ - "\1\125\1\uffff\1\112\1\uffff\1\60\1\111\1\67\4\uffff\1\57\1\65\1"+ - "\32\1\24\1\54\1\120\1\44\1\114\2\uffff\1\72\1\26\1\117\1\35\1\126"+ - "\1\130\1\115\1\20\1\71\1\51\1\121\1\105\1\66\1\75\1\100\1\101\1"+ - "\uffff\1\50\1\21\1\22\1\1\1\45\1\63\1\55\1\47\1\4\1\25\1\33\1\12"+ - "\1\uffff\1\116\1\62\1\74\1\127\1\52\1\3\1\36}>"; + "\1\26\4\uffff\1\22\1\75\1\7\1\uffff\1\47\1\27\1\35\1\113\1\112"+ + "\1\17\1\114\1\12\1\63\1\44\1\45\1\102\1\105\1\121\2\uffff\1\77\1"+ + "\76\1\111\2\uffff\1\36\1\uffff\1\15\1\127\1\uffff\1\4\1\uffff\1"+ + "\1\4\uffff\1\110\1\10\3\uffff\1\24\1\101\1\70\1\42\1\56\2\uffff"+ + "\1\0\1\126\1\51\1\66\1\64\1\13\1\14\2\uffff\1\100\1\uffff\1\67\2"+ + "\uffff\1\6\1\20\1\115\3\uffff\1\25\1\103\1\71\1\43\1\53\1\60\1\124"+ + "\1\2\2\uffff\1\21\1\122\1\50\1\61\1\54\1\55\1\123\1\72\1\107\1\116"+ + "\1\65\1\52\1\37\1\uffff\1\41\1\30\1\3\1\uffff\1\33\1\31\1\120\1"+ + "\57\1\46\1\23\1\106\1\125\1\74\1\32\1\34\1\117\1\uffff\1\62\1\5"+ + "\1\73\1\11\1\16\1\40\1\104}>"; static final String[] DFA21_transitionS = { "\11\25\1\11\1\4\2\25\1\3\22\25\1\7\1\25\1\24\1\1\1\25\1\2\1"+ "\25\1\27\1\12\1\13\1\17\1\20\1\14\1\5\14\25\1\15\3\25\1\6\1"+ @@ -2130,103 +2141,104 @@ public class SilkLexer extends Lexer { "", "\1\30", "\1\uffff", - "\12\35\1\uffff\2\35\1\uffff\24\35\2\uffff\11\35\1\33\56\35"+ - "\1\uffff\uffa3\35", + "\11\35\2\uffff\2\35\1\uffff\22\35\1\uffff\1\35\1\uffff\12"+ + "\35\1\33\56\35\1\uffff\uffa3\35", "\76\27\1\36\uffc1\27", - "\11\27\1\43\1\45\2\27\1\45\22\27\1\42\2\27\1\uffff\1\27\1"+ - "\uffff\7\27\1\44\22\27\1\41\uffbf\27", + "\11\27\1\43\1\42\2\27\1\42\22\27\1\40\2\27\1\uffff\1\27\1"+ + "\uffff\7\27\1\34\22\27\1\44\uffbf\27", "\1\uffff", - "\11\27\1\43\1\45\2\27\1\45\22\27\1\43\2\27\1\uffff\1\27\1"+ + "\11\27\1\43\1\42\2\27\1\42\22\27\1\43\2\27\1\uffff\1\27\1"+ "\uffff\7\27\1\uffff\22\27\1\uffff\uffbf\27", "\0\27", "\0\27", "\0\27", - "\11\52\2\27\2\52\1\27\22\52\1\27\1\52\1\27\1\54\70\52\1\27"+ + "\11\52\2\27\2\52\1\27\22\52\1\27\1\52\1\27\1\53\70\52\1\27"+ "\uffa3\52", "\0\27", "\0\27", - "\11\61\1\57\1\27\2\61\1\27\22\61\1\57\1\61\2\27\4\61\2\63"+ - "\1\62\1\61\1\63\15\61\1\62\3\61\1\62\34\61\1\62\1\27\1\62\35"+ - "\61\3\62\uff82\61", + "\11\60\1\57\1\27\2\60\1\27\22\60\1\57\1\60\2\27\4\60\2\62"+ + "\1\61\1\60\1\62\15\60\1\61\3\60\1\61\34\60\1\61\1\27\1\61\35"+ + "\60\3\61\uff82\60", "\0\27", "\0\27", - "\11\66\1\57\1\27\2\66\1\27\22\66\1\57\1\66\1\27\1\54\4\66"+ - "\2\71\1\70\1\66\1\71\15\66\1\70\3\66\1\70\34\66\1\70\1\27\1"+ - "\70\35\66\3\70\uff82\66", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\11\61\1\57\1\27\2\61\1\27\22\61\1\57\1\61\2\27\4\61\2\63"+ - "\1\62\1\61\1\63\15\61\1\62\3\61\1\62\34\61\1\62\1\27\1\62\35"+ - "\61\3\62\uff82\61", + "\11\66\1\57\1\27\2\66\1\27\22\66\1\57\1\66\1\27\1\53\4\66"+ + "\2\70\1\67\1\66\1\70\15\66\1\67\3\66\1\67\34\66\1\67\1\27\1"+ + "\67\35\66\3\67\uff82\66", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\11\60\1\57\1\27\2\60\1\27\22\60\1\57\1\60\2\27\4\60\2\62"+ + "\1\61\1\60\1\62\15\60\1\61\3\60\1\61\34\60\1\61\1\27\1\61\35"+ + "\60\3\61\uff82\60", "\0\27", "", "\1\uffff", "\1\uffff", "\1\uffff", "\1\101\1\102\2\uffff\1\102\22\uffff\1\101", - "\1\uffff", "", - "\11\27\1\103\1\105\2\27\1\104\22\27\1\103\uffdf\27", "", + "\11\27\1\106\1\105\2\27\1\104\22\27\1\106\uffdf\27", + "", + "\11\27\1\43\1\42\2\27\1\42\22\27\1\40\2\27\1\uffff\1\27\1"+ + "\uffff\7\27\1\34\22\27\1\44\uffbf\27", "\1\uffff", "", - "\11\27\1\43\1\45\2\27\1\45\22\27\1\42\2\27\1\uffff\1\27\1"+ - "\uffff\7\27\1\44\22\27\1\41\uffbf\27", - "\11\27\1\43\1\45\2\27\1\45\22\27\1\43\2\27\1\uffff\1\27\1"+ + "\11\27\1\43\1\42\2\27\1\42\22\27\1\43\2\27\1\uffff\1\27\1"+ "\uffff\7\27\1\uffff\22\27\1\uffff\uffbf\27", "", - "", "\1\uffff", "", "", "", + "", "\11\113\1\112\1\27\2\113\1\27\22\113\1\112\1\113\2\27\4\113"+ "\2\115\1\114\1\113\1\115\15\113\1\114\3\113\1\114\34\113\1\114"+ "\1\27\1\114\35\113\3\114\uff82\113", - "", "\11\117\1\116\1\27\2\117\1\27\22\117\1\116\1\117\2\27\4\117"+ "\2\121\1\120\1\117\1\121\15\117\1\120\3\117\1\120\34\117\1\120"+ "\1\27\1\120\35\117\3\120\uff82\117", "", "", - "\11\61\1\57\1\27\2\61\1\27\22\61\1\57\1\61\2\27\4\61\2\63"+ - "\1\62\1\61\1\63\15\61\1\62\3\61\1\62\34\61\1\62\1\27\1\62\35"+ - "\61\3\62\uff82\61", "", - "\11\61\1\57\1\27\2\61\1\27\22\61\1\57\1\61\2\27\4\61\2\63"+ - "\1\62\1\61\1\63\15\61\1\62\3\61\1\62\34\61\1\62\1\27\1\62\35"+ - "\61\3\62\uff82\61", - "\11\61\1\57\1\27\2\61\1\27\22\61\1\57\1\61\2\27\4\61\2\63"+ - "\1\62\1\61\1\63\15\61\1\62\3\61\1\62\34\61\1\62\1\27\1\62\35"+ - "\61\3\62\uff82\61", - "\11\61\1\57\1\27\2\61\1\27\22\61\1\57\1\61\2\27\4\61\2\63"+ - "\1\62\1\61\1\63\15\61\1\62\3\61\1\62\34\61\1\62\1\27\1\62\35"+ - "\61\3\62\uff82\61", + "\11\60\1\57\1\27\2\60\1\27\22\60\1\57\1\60\2\27\4\60\2\62"+ + "\1\61\1\60\1\62\15\60\1\61\3\60\1\61\34\60\1\61\1\27\1\61\35"+ + "\60\3\61\uff82\60", + "\11\60\1\57\1\27\2\60\1\27\22\60\1\57\1\60\2\27\4\60\2\62"+ + "\1\61\1\60\1\62\15\60\1\61\3\60\1\61\34\60\1\61\1\27\1\61\35"+ + "\60\3\61\uff82\60", + "\11\60\1\57\1\27\2\60\1\27\22\60\1\57\1\60\2\27\4\60\2\62"+ + "\1\61\1\60\1\62\15\60\1\61\3\60\1\61\34\60\1\61\1\27\1\61\35"+ + "\60\3\61\uff82\60", + "\11\60\1\57\1\27\2\60\1\27\22\60\1\57\1\60\2\27\4\60\2\62"+ + "\1\61\1\60\1\62\15\60\1\61\3\60\1\61\34\60\1\61\1\27\1\61\35"+ + "\60\3\61\uff82\60", "\1\uffff", "", + "", "\11\125\1\124\1\27\2\125\1\27\22\125\1\124\1\125\2\27\4\125"+ "\2\127\1\126\1\125\1\127\15\125\1\126\3\125\1\126\34\125\1\126"+ "\1\27\1\126\35\125\3\126\uff82\125", - "", "\11\125\1\124\1\27\2\125\1\27\22\125\1\124\1\125\2\27\4\125"+ "\2\127\1\126\1\125\1\127\15\125\1\126\3\125\1\126\34\125\1\126"+ "\1\27\1\126\35\125\3\126\uff82\125", "\11\125\1\124\1\27\2\125\1\27\22\125\1\124\1\125\2\27\4\125"+ "\2\127\1\126\1\125\1\127\15\125\1\126\3\125\1\126\34\125\1\126"+ "\1\27\1\126\35\125\3\126\uff82\125", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\42\27\1\133\14\27\1\135\54\27\1\134\5\27\1\136\3\27\1\137"+ - "\7\27\1\140\3\27\1\141\1\27\1\142\1\143\uff8a\27", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\42\27\1\130\14\27\1\132\54\27\1\131\5\27\1\133\3\27\1\134"+ + "\7\27\1\135\3\27\1\136\1\27\1\137\1\140\uff8a\27", "\0\27", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "", "", "\1\uffff", "", - "\1\101\1\102\2\uffff\1\102\22\uffff\1\101", + "\11\145\1\101\1\102\2\145\1\102\22\145\1\101\1\145\2\uffff"+ + "\70\145\1\uffff\uffa3\145", "", - "\11\27\1\103\1\105\2\27\1\104\22\27\1\103\uffdf\27", - "\1\145", - "\1\uffff", "", + "\1\146", + "\1\uffff", + "\11\27\1\106\1\105\2\27\1\104\22\27\1\106\uffdf\27", "", "", "", @@ -2268,40 +2280,41 @@ public class SilkLexer extends Lexer { "\11\125\1\124\1\27\2\125\1\27\22\125\1\124\1\125\2\27\4\125"+ "\2\127\1\126\1\125\1\127\15\125\1\126\3\125\1\126\34\125\1\126"+ "\1\27\1\126\35\125\3\126\uff82\125", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\60\27\12\150\7\27\6\150\32\27\6\150\uff99\27", + "", "\0\27", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\42\27\1\147\14\27\1\151\54\27\1\150\5\27\1\152\3\27\1\153"+ - "\7\27\1\154\3\27\1\155\1\27\1\156\1\157\uff8a\27", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\60\27\12\160\7\27\6\160\32\27\6\160\uff99\27", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "\42\27\1\151\14\27\1\153\54\27\1\152\5\27\1\154\3\27\1\155"+ + "\7\27\1\156\3\27\1\157\1\27\1\160\1\161\uff8a\27", "", "\1\uffff", "\1\uffff", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131", - "\60\27\12\162\7\27\6\162\32\27\6\162\uff99\27", "\60\27\12\163\7\27\6\163\32\27\6\163\uff99\27", - "", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143", "\60\27\12\164\7\27\6\164\32\27\6\164\uff99\27", + "", "\60\27\12\165\7\27\6\165\32\27\6\165\uff99\27", "\60\27\12\166\7\27\6\166\32\27\6\166\uff99\27", "\60\27\12\167\7\27\6\167\32\27\6\167\uff99\27", "\60\27\12\170\7\27\6\170\32\27\6\170\uff99\27", - "\12\72\1\27\2\72\1\27\24\72\1\75\1\73\70\72\1\74\uffa3\72", - "\12\131\1\27\2\131\1\27\24\131\1\130\71\131\1\132\uffa3\131" + "\12\71\1\27\2\71\1\27\24\71\1\73\1\74\70\71\1\72\uffa3\71", + "\60\27\12\171\7\27\6\171\32\27\6\171\uff99\27", + "\12\143\1\27\2\143\1\27\24\143\1\142\71\143\1\144\uffa3\143" }; static final short[] DFA21_eot = DFA.unpackEncodedString(DFA21_eotS); @@ -2341,858 +2354,880 @@ public class SilkLexer extends Lexer { int _s = s; switch ( s ) { case 0 : - int LA21_5 = input.LA(1); + int LA21_54 = input.LA(1); + + int index21_54 = input.index(); + input.rewind(); s = -1; - if ( (LA21_5=='-') ) {s = 27;} + if ( (LA21_54=='\t'||LA21_54==' ') ) {s = 84;} - else if ( ((LA21_5>='\u0000' && LA21_5<='\t')||(LA21_5>='\u000B' && LA21_5<='\f')||(LA21_5>='\u000E' && LA21_5<='!')||(LA21_5>='$' && LA21_5<=',')||(LA21_5>='.' && LA21_5<='[')||(LA21_5>=']' && LA21_5<='\uFFFF')) ) {s = 29;} + else if ( ((LA21_54>='\u0000' && LA21_54<='\b')||(LA21_54>='\u000B' && LA21_54<='\f')||(LA21_54>='\u000E' && LA21_54<='\u001F')||LA21_54=='!'||(LA21_54>='$' && LA21_54<='\'')||LA21_54=='+'||(LA21_54>='-' && LA21_54<='9')||(LA21_54>=';' && LA21_54<='=')||(LA21_54>='?' && LA21_54<='Z')||(LA21_54>='^' && LA21_54<='z')||(LA21_54>='~' && LA21_54<='\uFFFF')) ) {s = 85;} - else s = 28; + else if ( (LA21_54=='*'||LA21_54==':'||LA21_54=='>'||LA21_54=='['||LA21_54==']'||(LA21_54>='{' && LA21_54<='}')) ) {s = 86;} + + else if ( ((LA21_54>='(' && LA21_54<=')')||LA21_54==',') ) {s = 87;} + + else if ( (LA21_54=='\n'||LA21_54=='\r'||(LA21_54>='\"' && LA21_54<='#')||LA21_54=='\\') && (( isHead() ))) {s = 23;} + + else s = 83; + + input.seek(index21_54); if ( s>=0 ) return s; break; case 1 : - int LA21_104 = input.LA(1); + int LA21_37 = input.LA(1); - int index21_104 = input.index(); + int index21_37 = input.index(); input.rewind(); s = -1; - if ( (LA21_104=='\n'||LA21_104=='\r') && (( isHead() ))) {s = 23;} - - else if ( (LA21_104=='\"') ) {s = 88;} - - else if ( ((LA21_104>='\u0000' && LA21_104<='\t')||(LA21_104>='\u000B' && LA21_104<='\f')||(LA21_104>='\u000E' && LA21_104<='!')||(LA21_104>='#' && LA21_104<='[')||(LA21_104>=']' && LA21_104<='\uFFFF')) ) {s = 89;} + if ( (( isHead() )) ) {s = 36;} - else if ( (LA21_104=='\\') ) {s = 90;} + else if ( (true) ) {s = 73;} - input.seek(index21_104); + input.seek(index21_37); if ( s>=0 ) return s; break; case 2 : - int LA21_22 = input.LA(1); + int LA21_81 = input.LA(1); - int index21_22 = input.index(); + int index21_81 = input.index(); input.rewind(); s = -1; - if ( ((LA21_22>='\u0000' && LA21_22<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( (LA21_81=='\t'||LA21_81==' ') && ((( isHead() )||( isValue() )))) {s = 78;} - else s = 62; + else if ( ((LA21_81>='\u0000' && LA21_81<='\b')||(LA21_81>='\u000B' && LA21_81<='\f')||(LA21_81>='\u000E' && LA21_81<='\u001F')||LA21_81=='!'||(LA21_81>='$' && LA21_81<='\'')||LA21_81=='+'||(LA21_81>='-' && LA21_81<='9')||(LA21_81>=';' && LA21_81<='=')||(LA21_81>='?' && LA21_81<='Z')||(LA21_81>='^' && LA21_81<='z')||(LA21_81>='~' && LA21_81<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} + + else if ( (LA21_81=='*'||LA21_81==':'||LA21_81=='>'||LA21_81=='['||LA21_81==']'||(LA21_81>='{' && LA21_81<='}')) && ((( isHead() )||( isValue() )))) {s = 80;} + + else if ( ((LA21_81>='(' && LA21_81<=')')||LA21_81==',') && ((( isValue() )||( isHead() )))) {s = 81;} + + else if ( (LA21_81=='\n'||LA21_81=='\r'||(LA21_81>='\"' && LA21_81<='#')||LA21_81=='\\') && (( isHead() ))) {s = 23;} + + else s = 67; - input.seek(index21_22); + input.seek(index21_81); if ( s>=0 ) return s; break; case 3 : - int LA21_119 = input.LA(1); + int LA21_100 = input.LA(1); - int index21_119 = input.index(); + int index21_100 = input.index(); input.rewind(); s = -1; - if ( (LA21_119=='\n'||LA21_119=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_100=='\"') ) {s = 105;} + + else if ( (LA21_100=='\\') ) {s = 106;} + + else if ( (LA21_100=='/') ) {s = 107;} - else if ( (LA21_119=='#') ) {s = 59;} + else if ( (LA21_100=='b') ) {s = 108;} - else if ( (LA21_119=='\"') ) {s = 61;} + else if ( (LA21_100=='f') ) {s = 109;} - else if ( ((LA21_119>='\u0000' && LA21_119<='\t')||(LA21_119>='\u000B' && LA21_119<='\f')||(LA21_119>='\u000E' && LA21_119<='!')||(LA21_119>='$' && LA21_119<='[')||(LA21_119>=']' && LA21_119<='\uFFFF')) ) {s = 58;} + else if ( (LA21_100=='n') ) {s = 110;} - else if ( (LA21_119=='\\') ) {s = 60;} + else if ( (LA21_100=='r') ) {s = 111;} + + else if ( (LA21_100=='t') ) {s = 112;} + + else if ( (LA21_100=='u') ) {s = 113;} + + else if ( ((LA21_100>='\u0000' && LA21_100<='!')||(LA21_100>='#' && LA21_100<='.')||(LA21_100>='0' && LA21_100<='[')||(LA21_100>=']' && LA21_100<='a')||(LA21_100>='c' && LA21_100<='e')||(LA21_100>='g' && LA21_100<='m')||(LA21_100>='o' && LA21_100<='q')||LA21_100=='s'||(LA21_100>='v' && LA21_100<='\uFFFF')) && (( isHead() ))) {s = 23;} - input.seek(index21_119); + input.seek(index21_100); if ( s>=0 ) return s; break; case 4 : - int LA21_109 = input.LA(1); + int LA21_35 = input.LA(1); - int index21_109 = input.index(); + int index21_35 = input.index(); input.rewind(); s = -1; - if ( (LA21_109=='\n'||LA21_109=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_35=='\n'||LA21_35=='\r') && (( isHead() ))) {s = 34;} - else if ( (LA21_109=='\"') ) {s = 88;} + else if ( (LA21_35=='\t'||LA21_35==' ') && ((( !isHead() )||( isHead() )))) {s = 35;} - else if ( ((LA21_109>='\u0000' && LA21_109<='\t')||(LA21_109>='\u000B' && LA21_109<='\f')||(LA21_109>='\u000E' && LA21_109<='!')||(LA21_109>='#' && LA21_109<='[')||(LA21_109>=']' && LA21_109<='\uFFFF')) ) {s = 89;} + else if ( ((LA21_35>='\u0000' && LA21_35<='\b')||(LA21_35>='\u000B' && LA21_35<='\f')||(LA21_35>='\u000E' && LA21_35<='\u001F')||(LA21_35>='!' && LA21_35<='\"')||LA21_35=='$'||(LA21_35>='&' && LA21_35<=',')||(LA21_35>='.' && LA21_35<='?')||(LA21_35>='A' && LA21_35<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_109=='\\') ) {s = 90;} + else s = 71; - input.seek(index21_109); + input.seek(index21_35); if ( s>=0 ) return s; break; case 5 : - int LA21_12 = input.LA(1); + int LA21_116 = input.LA(1); - int index21_12 = input.index(); + int index21_116 = input.index(); input.rewind(); s = -1; - if ( ((LA21_12>='\u0000' && LA21_12<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( ((LA21_116>='0' && LA21_116<='9')||(LA21_116>='A' && LA21_116<='F')||(LA21_116>='a' && LA21_116<='f')) ) {s = 118;} - else s = 41; + else if ( ((LA21_116>='\u0000' && LA21_116<='/')||(LA21_116>=':' && LA21_116<='@')||(LA21_116>='G' && LA21_116<='`')||(LA21_116>='g' && LA21_116<='\uFFFF')) && (( isHead() ))) {s = 23;} - input.seek(index21_12); + input.seek(index21_116); if ( s>=0 ) return s; break; case 6 : - int LA21_32 = input.LA(1); + int LA21_68 = input.LA(1); - int index21_32 = input.index(); + int index21_68 = input.index(); input.rewind(); s = -1; - if ( (( !isHead() )) ) {s = 70;} + if ( (LA21_68=='\n') && (( isHead() ))) {s = 102;} - else if ( (true) ) {s = 71;} + else s = 103; - input.seek(index21_32); + input.seek(index21_68); if ( s>=0 ) return s; break; case 7 : - int LA21_34 = input.LA(1); + int LA21_7 = input.LA(1); - int index21_34 = input.index(); + int index21_7 = input.index(); input.rewind(); s = -1; - if ( (LA21_34=='@') && (( isHead() ))) {s = 33;} + if ( (LA21_7=='-') && (( isHead() ))) {s = 28;} - else if ( (LA21_34==' ') ) {s = 34;} + else if ( (LA21_7==' ') && ((( !isHead() )||( isHead() )))) {s = 32;} - else if ( (LA21_34=='\t') ) {s = 35;} + else if ( (LA21_7=='\n'||LA21_7=='\r') && (( isHead() ))) {s = 34;} - else if ( ((LA21_34>='\u0000' && LA21_34<='\b')||(LA21_34>='\u000B' && LA21_34<='\f')||(LA21_34>='\u000E' && LA21_34<='\u001F')||(LA21_34>='!' && LA21_34<='\"')||LA21_34=='$'||(LA21_34>='&' && LA21_34<=',')||(LA21_34>='.' && LA21_34<='?')||(LA21_34>='A' && LA21_34<='\uFFFF')) && (( isHead() ))) {s = 23;} + else if ( (LA21_7=='\t') && ((( !isHead() )||( isHead() )))) {s = 35;} - else if ( (LA21_34=='-') ) {s = 36;} + else if ( ((LA21_7>='\u0000' && LA21_7<='\b')||(LA21_7>='\u000B' && LA21_7<='\f')||(LA21_7>='\u000E' && LA21_7<='\u001F')||(LA21_7>='!' && LA21_7<='\"')||LA21_7=='$'||(LA21_7>='&' && LA21_7<=',')||(LA21_7>='.' && LA21_7<='?')||(LA21_7>='A' && LA21_7<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_34=='\n'||LA21_34=='\r') && (( isHead() ))) {s = 37;} + else if ( (LA21_7=='@') && (( isHead() ))) {s = 36;} - else s = 70; + else s = 33; - input.seek(index21_34); + input.seek(index21_7); if ( s>=0 ) return s; break; case 8 : - int LA21_28 = input.LA(1); + int LA21_43 = input.LA(1); - int index21_28 = input.index(); + int index21_43 = input.index(); input.rewind(); s = -1; - if ( (( isHead() )) ) {s = 36;} + if ( (LA21_43=='\t'||LA21_43==' ') && ((( isHead() )||( isValue() )))) {s = 78;} + + else if ( (LA21_43=='\n'||LA21_43=='\r'||(LA21_43>='\"' && LA21_43<='#')||LA21_43=='\\') && (( isHead() ))) {s = 23;} + + else if ( ((LA21_43>='\u0000' && LA21_43<='\b')||(LA21_43>='\u000B' && LA21_43<='\f')||(LA21_43>='\u000E' && LA21_43<='\u001F')||LA21_43=='!'||(LA21_43>='$' && LA21_43<='\'')||LA21_43=='+'||(LA21_43>='-' && LA21_43<='9')||(LA21_43>=';' && LA21_43<='=')||(LA21_43>='?' && LA21_43<='Z')||(LA21_43>='^' && LA21_43<='z')||(LA21_43>='~' && LA21_43<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} - else if ( (true) ) {s = 29;} + else if ( (LA21_43=='*'||LA21_43==':'||LA21_43=='>'||LA21_43=='['||LA21_43==']'||(LA21_43>='{' && LA21_43<='}')) && ((( isHead() )||( isValue() )))) {s = 80;} + + else if ( ((LA21_43>='(' && LA21_43<=')')||LA21_43==',') && ((( isValue() )||( isHead() )))) {s = 81;} + + else s = 67; - input.seek(index21_28); + input.seek(index21_43); if ( s>=0 ) return s; break; case 9 : - int LA21_15 = input.LA(1); + int LA21_118 = input.LA(1); - int index21_15 = input.index(); + int index21_118 = input.index(); input.rewind(); s = -1; - if ( ((LA21_15>='\u0000' && LA21_15<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( ((LA21_118>='0' && LA21_118<='9')||(LA21_118>='A' && LA21_118<='F')||(LA21_118>='a' && LA21_118<='f')) ) {s = 120;} - else s = 46; + else if ( ((LA21_118>='\u0000' && LA21_118<='/')||(LA21_118>=':' && LA21_118<='@')||(LA21_118>='G' && LA21_118<='`')||(LA21_118>='g' && LA21_118<='\uFFFF')) && (( isHead() ))) {s = 23;} - input.seek(index21_15); + input.seek(index21_118); if ( s>=0 ) return s; break; case 10 : - int LA21_112 = input.LA(1); + int LA21_16 = input.LA(1); - int index21_112 = input.index(); + int index21_16 = input.index(); input.rewind(); s = -1; - if ( ((LA21_112>='0' && LA21_112<='9')||(LA21_112>='A' && LA21_112<='F')||(LA21_112>='a' && LA21_112<='f')) ) {s = 115;} + if ( (LA21_16=='\t'||LA21_16==' ') ) {s = 47;} + + else if ( ((LA21_16>='\u0000' && LA21_16<='\b')||(LA21_16>='\u000B' && LA21_16<='\f')||(LA21_16>='\u000E' && LA21_16<='\u001F')||LA21_16=='!'||(LA21_16>='$' && LA21_16<='\'')||LA21_16=='+'||(LA21_16>='-' && LA21_16<='9')||(LA21_16>=';' && LA21_16<='=')||(LA21_16>='?' && LA21_16<='Z')||(LA21_16>='^' && LA21_16<='z')||(LA21_16>='~' && LA21_16<='\uFFFF')) ) {s = 48;} + + else if ( (LA21_16=='*'||LA21_16==':'||LA21_16=='>'||LA21_16=='['||LA21_16==']'||(LA21_16>='{' && LA21_16<='}')) ) {s = 49;} + + else if ( ((LA21_16>='(' && LA21_16<=')')||LA21_16==',') ) {s = 50;} + + else if ( (LA21_16=='\n'||LA21_16=='\r'||(LA21_16>='\"' && LA21_16<='#')||LA21_16=='\\') && (( isHead() ))) {s = 23;} - else if ( ((LA21_112>='\u0000' && LA21_112<='/')||(LA21_112>=':' && LA21_112<='@')||(LA21_112>='G' && LA21_112<='`')||(LA21_112>='g' && LA21_112<='\uFFFF')) && (( isHead() ))) {s = 23;} + else s = 46; - input.seek(index21_112); + input.seek(index21_16); if ( s>=0 ) return s; break; case 11 : - int LA21_30 = input.LA(1); + int LA21_59 = input.LA(1); - int index21_30 = input.index(); + int index21_59 = input.index(); input.rewind(); s = -1; - if ( (LA21_30=='\t'||LA21_30==' ') && (( isHead() ))) {s = 67;} - - else if ( (LA21_30=='\r') && (( isHead() ))) {s = 68;} + if ( ((LA21_59>='\u0000' && LA21_59<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_30=='\n') && (( isHead() ))) {s = 69;} - - else if ( ((LA21_30>='\u0000' && LA21_30<='\b')||(LA21_30>='\u000B' && LA21_30<='\f')||(LA21_30>='\u000E' && LA21_30<='\u001F')||(LA21_30>='!' && LA21_30<='\uFFFF')) && (( isHead() ))) {s = 23;} + else s = 97; - input.seek(index21_30); + input.seek(index21_59); if ( s>=0 ) return s; break; case 12 : - int LA21_27 = input.LA(1); + int LA21_60 = input.LA(1); - int index21_27 = input.index(); + int index21_60 = input.index(); input.rewind(); s = -1; - if ( (LA21_27=='\t'||LA21_27==' ') ) {s = 65;} + if ( (LA21_60=='\"') ) {s = 98;} - else if ( (LA21_27=='\n'||LA21_27=='\r') && (( isHead() ))) {s = 66;} + else if ( (LA21_60=='\n'||LA21_60=='\r') && (( isHead() ))) {s = 23;} - else s = 29; + else if ( ((LA21_60>='\u0000' && LA21_60<='\t')||(LA21_60>='\u000B' && LA21_60<='\f')||(LA21_60>='\u000E' && LA21_60<='!')||(LA21_60>='#' && LA21_60<='[')||(LA21_60>=']' && LA21_60<='\uFFFF')) ) {s = 99;} + + else if ( (LA21_60=='\\') ) {s = 100;} - input.seek(index21_27); + input.seek(index21_60); if ( s>=0 ) return s; break; case 13 : - int LA21_7 = input.LA(1); + int LA21_32 = input.LA(1); - int index21_7 = input.index(); + int index21_32 = input.index(); input.rewind(); s = -1; - if ( (LA21_7=='@') && (( isHead() ))) {s = 33;} + if ( (LA21_32=='-') && (( isHead() ))) {s = 28;} - else if ( (LA21_7==' ') ) {s = 34;} + else if ( (LA21_32==' ') && ((( !isHead() )||( isHead() )))) {s = 32;} - else if ( (LA21_7=='\t') ) {s = 35;} + else if ( (LA21_32=='\n'||LA21_32=='\r') && (( isHead() ))) {s = 34;} - else if ( ((LA21_7>='\u0000' && LA21_7<='\b')||(LA21_7>='\u000B' && LA21_7<='\f')||(LA21_7>='\u000E' && LA21_7<='\u001F')||(LA21_7>='!' && LA21_7<='\"')||LA21_7=='$'||(LA21_7>='&' && LA21_7<=',')||(LA21_7>='.' && LA21_7<='?')||(LA21_7>='A' && LA21_7<='\uFFFF')) && (( isHead() ))) {s = 23;} + else if ( (LA21_32=='\t') && ((( !isHead() )||( isHead() )))) {s = 35;} - else if ( (LA21_7=='-') ) {s = 36;} + else if ( ((LA21_32>='\u0000' && LA21_32<='\b')||(LA21_32>='\u000B' && LA21_32<='\f')||(LA21_32>='\u000E' && LA21_32<='\u001F')||(LA21_32>='!' && LA21_32<='\"')||LA21_32=='$'||(LA21_32>='&' && LA21_32<=',')||(LA21_32>='.' && LA21_32<='?')||(LA21_32>='A' && LA21_32<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_7=='\n'||LA21_7=='\r') && (( isHead() ))) {s = 37;} + else if ( (LA21_32=='@') && (( isHead() ))) {s = 36;} - else s = 32; + else s = 71; - input.seek(index21_7); + input.seek(index21_32); if ( s>=0 ) return s; break; case 14 : - int LA21_42 = input.LA(1); + int LA21_119 = input.LA(1); - int index21_42 = input.index(); + int index21_119 = input.index(); input.rewind(); s = -1; - if ( (LA21_42=='\t'||LA21_42==' ') && ((( isValue() )||( isHead() )))) {s = 74;} - - else if ( ((LA21_42>='\u0000' && LA21_42<='\b')||(LA21_42>='\u000B' && LA21_42<='\f')||(LA21_42>='\u000E' && LA21_42<='\u001F')||LA21_42=='!'||(LA21_42>='$' && LA21_42<='\'')||LA21_42=='+'||(LA21_42>='-' && LA21_42<='9')||(LA21_42>=';' && LA21_42<='=')||(LA21_42>='?' && LA21_42<='Z')||(LA21_42>='^' && LA21_42<='z')||(LA21_42>='~' && LA21_42<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 75;} + if ( (LA21_119=='\n'||LA21_119=='\r') && (( isHead() ))) {s = 23;} - else if ( (LA21_42=='*'||LA21_42==':'||LA21_42=='>'||LA21_42=='['||LA21_42==']'||(LA21_42>='{' && LA21_42<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} + else if ( (LA21_119=='#') ) {s = 60;} - else if ( ((LA21_42>='(' && LA21_42<=')')||LA21_42==',') && ((( isValue() )||( isHead() )))) {s = 77;} + else if ( (LA21_119=='\"') ) {s = 59;} - else if ( (LA21_42=='\n'||LA21_42=='\r'||(LA21_42>='\"' && LA21_42<='#')||LA21_42=='\\') && (( isHead() ))) {s = 23;} + else if ( ((LA21_119>='\u0000' && LA21_119<='\t')||(LA21_119>='\u000B' && LA21_119<='\f')||(LA21_119>='\u000E' && LA21_119<='!')||(LA21_119>='$' && LA21_119<='[')||(LA21_119>=']' && LA21_119<='\uFFFF')) ) {s = 57;} - else s = 73; + else if ( (LA21_119=='\\') ) {s = 58;} - input.seek(index21_42); + input.seek(index21_119); if ( s>=0 ) return s; break; case 15 : - int LA21_10 = input.LA(1); + int LA21_14 = input.LA(1); - int index21_10 = input.index(); + int index21_14 = input.index(); input.rewind(); s = -1; - if ( ((LA21_10>='\u0000' && LA21_10<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( ((LA21_14>='\u0000' && LA21_14<='\uFFFF')) && (( isHead() ))) {s = 23;} - else s = 39; + else s = 44; - input.seek(index21_10); + input.seek(index21_14); if ( s>=0 ) return s; break; case 16 : - int LA21_91 = input.LA(1); + int LA21_69 = input.LA(1); - int index21_91 = input.index(); + int index21_69 = input.index(); input.rewind(); s = -1; - if ( (LA21_91=='\n'||LA21_91=='\r') && (( isHead() ))) {s = 23;} - - else if ( (LA21_91=='#') ) {s = 59;} - - else if ( (LA21_91=='\"') ) {s = 61;} - - else if ( ((LA21_91>='\u0000' && LA21_91<='\t')||(LA21_91>='\u000B' && LA21_91<='\f')||(LA21_91>='\u000E' && LA21_91<='!')||(LA21_91>='$' && LA21_91<='[')||(LA21_91>=']' && LA21_91<='\uFFFF')) ) {s = 58;} - - else if ( (LA21_91=='\\') ) {s = 60;} + s = 103; - input.seek(index21_91); + input.seek(index21_69); if ( s>=0 ) return s; break; case 17 : - int LA21_102 = input.LA(1); + int LA21_84 = input.LA(1); - int index21_102 = input.index(); + int index21_84 = input.index(); input.rewind(); s = -1; - if ( (( isHead() )) ) {s = 113;} + if ( (LA21_84=='\t'||LA21_84==' ') ) {s = 84;} - else if ( (( isHead() )) ) {s = 23;} + else if ( ((LA21_84>='\u0000' && LA21_84<='\b')||(LA21_84>='\u000B' && LA21_84<='\f')||(LA21_84>='\u000E' && LA21_84<='\u001F')||LA21_84=='!'||(LA21_84>='$' && LA21_84<='\'')||LA21_84=='+'||(LA21_84>='-' && LA21_84<='9')||(LA21_84>=';' && LA21_84<='=')||(LA21_84>='?' && LA21_84<='Z')||(LA21_84>='^' && LA21_84<='z')||(LA21_84>='~' && LA21_84<='\uFFFF')) ) {s = 85;} + + else if ( (LA21_84=='*'||LA21_84==':'||LA21_84=='>'||LA21_84=='['||LA21_84==']'||(LA21_84>='{' && LA21_84<='}')) ) {s = 86;} + + else if ( ((LA21_84>='(' && LA21_84<=')')||LA21_84==',') ) {s = 87;} + + else if ( (LA21_84=='\n'||LA21_84=='\r'||(LA21_84>='\"' && LA21_84<='#')||LA21_84=='\\') && (( isHead() ))) {s = 23;} + + else s = 83; - input.seek(index21_102); + input.seek(index21_84); if ( s>=0 ) return s; break; case 18 : - int LA21_103 = input.LA(1); + int LA21_5 = input.LA(1); - int index21_103 = input.index(); + int index21_5 = input.index(); input.rewind(); s = -1; - if ( (LA21_103=='\n'||LA21_103=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_5=='-') && ((( isHead() )||( isValue() )))) {s = 27;} - else if ( (LA21_103=='\"') ) {s = 88;} + else if ( ((LA21_5>='\u0000' && LA21_5<='\b')||(LA21_5>='\u000B' && LA21_5<='\f')||(LA21_5>='\u000E' && LA21_5<='\u001F')||LA21_5=='!'||(LA21_5>='#' && LA21_5<=',')||(LA21_5>='.' && LA21_5<='[')||(LA21_5>=']' && LA21_5<='\uFFFF')) && (( isValue() ))) {s = 29;} - else if ( ((LA21_103>='\u0000' && LA21_103<='\t')||(LA21_103>='\u000B' && LA21_103<='\f')||(LA21_103>='\u000E' && LA21_103<='!')||(LA21_103>='#' && LA21_103<='[')||(LA21_103>=']' && LA21_103<='\uFFFF')) ) {s = 89;} - - else if ( (LA21_103=='\\') ) {s = 90;} + else s = 28; - input.seek(index21_103); + input.seek(index21_5); if ( s>=0 ) return s; break; case 19 : - int LA21_51 = input.LA(1); + int LA21_107 = input.LA(1); - int index21_51 = input.index(); + int index21_107 = input.index(); input.rewind(); s = -1; - if ( (LA21_51=='\t'||LA21_51==' ') ) {s = 47;} - - else if ( ((LA21_51>='\u0000' && LA21_51<='\b')||(LA21_51>='\u000B' && LA21_51<='\f')||(LA21_51>='\u000E' && LA21_51<='\u001F')||LA21_51=='!'||(LA21_51>='$' && LA21_51<='\'')||LA21_51=='+'||(LA21_51>='-' && LA21_51<='9')||(LA21_51>=';' && LA21_51<='=')||(LA21_51>='?' && LA21_51<='Z')||(LA21_51>='^' && LA21_51<='z')||(LA21_51>='~' && LA21_51<='\uFFFF')) ) {s = 49;} + if ( (LA21_107=='\"') ) {s = 98;} - else if ( (LA21_51=='*'||LA21_51==':'||LA21_51=='>'||LA21_51=='['||LA21_51==']'||(LA21_51>='{' && LA21_51<='}')) ) {s = 50;} + else if ( ((LA21_107>='\u0000' && LA21_107<='\t')||(LA21_107>='\u000B' && LA21_107<='\f')||(LA21_107>='\u000E' && LA21_107<='!')||(LA21_107>='#' && LA21_107<='[')||(LA21_107>=']' && LA21_107<='\uFFFF')) ) {s = 99;} - else if ( ((LA21_51>='(' && LA21_51<=')')||LA21_51==',') ) {s = 51;} + else if ( (LA21_107=='\\') ) {s = 100;} - else if ( (LA21_51=='\n'||LA21_51=='\r'||(LA21_51>='\"' && LA21_51<='#')||LA21_51=='\\') && (( isHead() ))) {s = 23;} - - else s = 82; + else if ( (LA21_107=='\n'||LA21_107=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_51); + input.seek(index21_107); if ( s>=0 ) return s; break; case 20 : - int LA21_77 = input.LA(1); + int LA21_47 = input.LA(1); - int index21_77 = input.index(); + int index21_47 = input.index(); input.rewind(); s = -1; - if ( (LA21_77=='\t'||LA21_77==' ') && ((( isValue() )||( isHead() )))) {s = 74;} + if ( (LA21_47=='\t'||LA21_47==' ') ) {s = 47;} - else if ( ((LA21_77>='\u0000' && LA21_77<='\b')||(LA21_77>='\u000B' && LA21_77<='\f')||(LA21_77>='\u000E' && LA21_77<='\u001F')||LA21_77=='!'||(LA21_77>='$' && LA21_77<='\'')||LA21_77=='+'||(LA21_77>='-' && LA21_77<='9')||(LA21_77>=';' && LA21_77<='=')||(LA21_77>='?' && LA21_77<='Z')||(LA21_77>='^' && LA21_77<='z')||(LA21_77>='~' && LA21_77<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 75;} + else if ( ((LA21_47>='\u0000' && LA21_47<='\b')||(LA21_47>='\u000B' && LA21_47<='\f')||(LA21_47>='\u000E' && LA21_47<='\u001F')||LA21_47=='!'||(LA21_47>='$' && LA21_47<='\'')||LA21_47=='+'||(LA21_47>='-' && LA21_47<='9')||(LA21_47>=';' && LA21_47<='=')||(LA21_47>='?' && LA21_47<='Z')||(LA21_47>='^' && LA21_47<='z')||(LA21_47>='~' && LA21_47<='\uFFFF')) ) {s = 48;} - else if ( (LA21_77=='*'||LA21_77==':'||LA21_77=='>'||LA21_77=='['||LA21_77==']'||(LA21_77>='{' && LA21_77<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} + else if ( (LA21_47=='*'||LA21_47==':'||LA21_47=='>'||LA21_47=='['||LA21_47==']'||(LA21_47>='{' && LA21_47<='}')) ) {s = 49;} - else if ( ((LA21_77>='(' && LA21_77<=')')||LA21_77==',') && ((( isValue() )||( isHead() )))) {s = 77;} + else if ( ((LA21_47>='(' && LA21_47<=')')||LA21_47==',') ) {s = 50;} - else if ( (LA21_77=='\n'||LA21_77=='\r'||(LA21_77>='\"' && LA21_77<='#')||LA21_77=='\\') && (( isHead() ))) {s = 23;} + else if ( (LA21_47=='\n'||LA21_47=='\r'||(LA21_47>='\"' && LA21_47<='#')||LA21_47=='\\') && (( isHead() ))) {s = 23;} - else s = 73; + else s = 61; - input.seek(index21_77); + input.seek(index21_47); if ( s>=0 ) return s; break; case 21 : - int LA21_110 = input.LA(1); + int LA21_74 = input.LA(1); - int index21_110 = input.index(); + int index21_74 = input.index(); input.rewind(); s = -1; - if ( (LA21_110=='\n'||LA21_110=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_74=='\t'||LA21_74==' ') && ((( isValue() )||( isHead() )))) {s = 74;} + + else if ( ((LA21_74>='\u0000' && LA21_74<='\b')||(LA21_74>='\u000B' && LA21_74<='\f')||(LA21_74>='\u000E' && LA21_74<='\u001F')||LA21_74=='!'||(LA21_74>='$' && LA21_74<='\'')||LA21_74=='+'||(LA21_74>='-' && LA21_74<='9')||(LA21_74>=';' && LA21_74<='=')||(LA21_74>='?' && LA21_74<='Z')||(LA21_74>='^' && LA21_74<='z')||(LA21_74>='~' && LA21_74<='\uFFFF')) && ((( isHead() )||( isValue() )))) {s = 75;} + + else if ( (LA21_74=='*'||LA21_74==':'||LA21_74=='>'||LA21_74=='['||LA21_74==']'||(LA21_74>='{' && LA21_74<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} - else if ( (LA21_110=='\"') ) {s = 88;} + else if ( ((LA21_74>='(' && LA21_74<=')')||LA21_74==',') && ((( isHead() )||( isValue() )))) {s = 77;} - else if ( ((LA21_110>='\u0000' && LA21_110<='\t')||(LA21_110>='\u000B' && LA21_110<='\f')||(LA21_110>='\u000E' && LA21_110<='!')||(LA21_110>='#' && LA21_110<='[')||(LA21_110>=']' && LA21_110<='\uFFFF')) ) {s = 89;} + else if ( (LA21_74=='\n'||LA21_74=='\r'||(LA21_74>='\"' && LA21_74<='#')||LA21_74=='\\') && (( isHead() ))) {s = 23;} - else if ( (LA21_110=='\\') ) {s = 90;} + else s = 67; - input.seek(index21_110); + input.seek(index21_74); if ( s>=0 ) return s; break; case 22 : - int LA21_85 = input.LA(1); + int LA21_0 = input.LA(1); - int index21_85 = input.index(); + int index21_0 = input.index(); input.rewind(); s = -1; - if ( (LA21_85=='\t'||LA21_85==' ') ) {s = 84;} + if ( (LA21_0=='#') ) {s = 1;} - else if ( ((LA21_85>='\u0000' && LA21_85<='\b')||(LA21_85>='\u000B' && LA21_85<='\f')||(LA21_85>='\u000E' && LA21_85<='\u001F')||LA21_85=='!'||(LA21_85>='$' && LA21_85<='\'')||LA21_85=='+'||(LA21_85>='-' && LA21_85<='9')||(LA21_85>=';' && LA21_85<='=')||(LA21_85>='?' && LA21_85<='Z')||(LA21_85>='^' && LA21_85<='z')||(LA21_85>='~' && LA21_85<='\uFFFF')) ) {s = 85;} + else if ( (LA21_0=='%') && (( isHead() ))) {s = 2;} - else if ( (LA21_85=='*'||LA21_85==':'||LA21_85=='>'||LA21_85=='['||LA21_85==']'||(LA21_85>='{' && LA21_85<='}')) ) {s = 86;} + else if ( (LA21_0=='\r') ) {s = 3;} - else if ( ((LA21_85>='(' && LA21_85<=')')||LA21_85==',') ) {s = 87;} + else if ( (LA21_0=='\n') ) {s = 4;} - else if ( (LA21_85=='\n'||LA21_85=='\r'||(LA21_85>='\"' && LA21_85<='#')||LA21_85=='\\') && (( isHead() ))) {s = 23;} + else if ( (LA21_0=='-') && ((( isValue() )||( isHead() )))) {s = 5;} + + else if ( (LA21_0=='>') ) {s = 6;} + + else if ( (LA21_0==' ') ) {s = 7;} + + else if ( (LA21_0=='@') ) {s = 8;} + + else if ( (LA21_0=='\t') ) {s = 9;} + + else if ( (LA21_0=='(') ) {s = 10;} + + else if ( (LA21_0==')') ) {s = 11;} + + else if ( (LA21_0==',') ) {s = 12;} + + else if ( (LA21_0==':') ) {s = 13;} + + else if ( (LA21_0=='|') ) {s = 14;} + + else if ( (LA21_0=='*') ) {s = 15;} + + else if ( (LA21_0=='+') ) {s = 16;} + + else if ( (LA21_0=='[') ) {s = 17;} + + else if ( (LA21_0==']') ) {s = 18;} + + else if ( (LA21_0=='?') ) {s = 19;} + + else if ( (LA21_0=='\"') ) {s = 20;} + + else if ( ((LA21_0>='\u0000' && LA21_0<='\b')||(LA21_0>='\u000B' && LA21_0<='\f')||(LA21_0>='\u000E' && LA21_0<='\u001F')||LA21_0=='!'||LA21_0=='$'||LA21_0=='&'||(LA21_0>='.' && LA21_0<='9')||(LA21_0>=';' && LA21_0<='=')||(LA21_0>='A' && LA21_0<='Z')||(LA21_0>='^' && LA21_0<='z')||(LA21_0>='~' && LA21_0<='\uFFFF')) ) {s = 21;} + + else if ( (LA21_0=='{') && ((( isValue() )||( isHead() )))) {s = 22;} - else s = 82; + else if ( (LA21_0=='\''||LA21_0=='\\'||LA21_0=='}') && (( isHead() ))) {s = 23;} - input.seek(index21_85); + input.seek(index21_0); if ( s>=0 ) return s; break; case 23 : - int LA21_50 = input.LA(1); + int LA21_10 = input.LA(1); - int index21_50 = input.index(); + int index21_10 = input.index(); input.rewind(); s = -1; - if ( (LA21_50=='\t'||LA21_50==' ') ) {s = 47;} - - else if ( ((LA21_50>='\u0000' && LA21_50<='\b')||(LA21_50>='\u000B' && LA21_50<='\f')||(LA21_50>='\u000E' && LA21_50<='\u001F')||LA21_50=='!'||(LA21_50>='$' && LA21_50<='\'')||LA21_50=='+'||(LA21_50>='-' && LA21_50<='9')||(LA21_50>=';' && LA21_50<='=')||(LA21_50>='?' && LA21_50<='Z')||(LA21_50>='^' && LA21_50<='z')||(LA21_50>='~' && LA21_50<='\uFFFF')) ) {s = 49;} - - else if ( (LA21_50=='*'||LA21_50==':'||LA21_50=='>'||LA21_50=='['||LA21_50==']'||(LA21_50>='{' && LA21_50<='}')) ) {s = 50;} - - else if ( ((LA21_50>='(' && LA21_50<=')')||LA21_50==',') ) {s = 51;} - - else if ( (LA21_50=='\n'||LA21_50=='\r'||(LA21_50>='\"' && LA21_50<='#')||LA21_50=='\\') && (( isHead() ))) {s = 23;} + if ( ((LA21_10>='\u0000' && LA21_10<='\uFFFF')) && (( isHead() ))) {s = 23;} - else s = 82; + else s = 38; - input.seek(index21_50); + input.seek(index21_10); if ( s>=0 ) return s; break; case 24 : - int LA21_56 = input.LA(1); + int LA21_99 = input.LA(1); - int index21_56 = input.index(); + int index21_99 = input.index(); input.rewind(); s = -1; - if ( (LA21_56=='\t'||LA21_56==' ') ) {s = 84;} - - else if ( ((LA21_56>='\u0000' && LA21_56<='\b')||(LA21_56>='\u000B' && LA21_56<='\f')||(LA21_56>='\u000E' && LA21_56<='\u001F')||LA21_56=='!'||(LA21_56>='$' && LA21_56<='\'')||LA21_56=='+'||(LA21_56>='-' && LA21_56<='9')||(LA21_56>=';' && LA21_56<='=')||(LA21_56>='?' && LA21_56<='Z')||(LA21_56>='^' && LA21_56<='z')||(LA21_56>='~' && LA21_56<='\uFFFF')) ) {s = 85;} - - else if ( (LA21_56=='*'||LA21_56==':'||LA21_56=='>'||LA21_56=='['||LA21_56==']'||(LA21_56>='{' && LA21_56<='}')) ) {s = 86;} + if ( (LA21_99=='\"') ) {s = 98;} - else if ( ((LA21_56>='(' && LA21_56<=')')||LA21_56==',') ) {s = 87;} + else if ( ((LA21_99>='\u0000' && LA21_99<='\t')||(LA21_99>='\u000B' && LA21_99<='\f')||(LA21_99>='\u000E' && LA21_99<='!')||(LA21_99>='#' && LA21_99<='[')||(LA21_99>=']' && LA21_99<='\uFFFF')) ) {s = 99;} - else if ( (LA21_56=='\n'||LA21_56=='\r'||(LA21_56>='\"' && LA21_56<='#')||LA21_56=='\\') && (( isHead() ))) {s = 23;} + else if ( (LA21_99=='\\') ) {s = 100;} - else s = 82; + else if ( (LA21_99=='\n'||LA21_99=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_56); + input.seek(index21_99); if ( s>=0 ) return s; break; case 25 : - int LA21_60 = input.LA(1); + int LA21_103 = input.LA(1); - int index21_60 = input.index(); + int index21_103 = input.index(); input.rewind(); s = -1; - if ( ((LA21_60>='\u0000' && LA21_60<='!')||(LA21_60>='#' && LA21_60<='.')||(LA21_60>='0' && LA21_60<='[')||(LA21_60>=']' && LA21_60<='a')||(LA21_60>='c' && LA21_60<='e')||(LA21_60>='g' && LA21_60<='m')||(LA21_60>='o' && LA21_60<='q')||LA21_60=='s'||(LA21_60>='v' && LA21_60<='\uFFFF')) && (( isHead() ))) {s = 23;} - - else if ( (LA21_60=='\"') ) {s = 91;} - - else if ( (LA21_60=='\\') ) {s = 92;} + if ( (( isHead() )) ) {s = 114;} - else if ( (LA21_60=='/') ) {s = 93;} - - else if ( (LA21_60=='b') ) {s = 94;} - - else if ( (LA21_60=='f') ) {s = 95;} - - else if ( (LA21_60=='n') ) {s = 96;} - - else if ( (LA21_60=='r') ) {s = 97;} - - else if ( (LA21_60=='t') ) {s = 98;} - - else if ( (LA21_60=='u') ) {s = 99;} + else if ( (( isHead() )) ) {s = 23;} - input.seek(index21_60); + input.seek(index21_103); if ( s>=0 ) return s; break; case 26 : - int LA21_76 = input.LA(1); + int LA21_111 = input.LA(1); - int index21_76 = input.index(); + int index21_111 = input.index(); input.rewind(); s = -1; - if ( (LA21_76=='\t'||LA21_76==' ') && ((( isValue() )||( isHead() )))) {s = 74;} - - else if ( ((LA21_76>='\u0000' && LA21_76<='\b')||(LA21_76>='\u000B' && LA21_76<='\f')||(LA21_76>='\u000E' && LA21_76<='\u001F')||LA21_76=='!'||(LA21_76>='$' && LA21_76<='\'')||LA21_76=='+'||(LA21_76>='-' && LA21_76<='9')||(LA21_76>=';' && LA21_76<='=')||(LA21_76>='?' && LA21_76<='Z')||(LA21_76>='^' && LA21_76<='z')||(LA21_76>='~' && LA21_76<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 75;} - - else if ( (LA21_76=='*'||LA21_76==':'||LA21_76=='>'||LA21_76=='['||LA21_76==']'||(LA21_76>='{' && LA21_76<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} + if ( (LA21_111=='\"') ) {s = 98;} - else if ( ((LA21_76>='(' && LA21_76<=')')||LA21_76==',') && ((( isValue() )||( isHead() )))) {s = 77;} + else if ( ((LA21_111>='\u0000' && LA21_111<='\t')||(LA21_111>='\u000B' && LA21_111<='\f')||(LA21_111>='\u000E' && LA21_111<='!')||(LA21_111>='#' && LA21_111<='[')||(LA21_111>=']' && LA21_111<='\uFFFF')) ) {s = 99;} - else if ( (LA21_76=='\n'||LA21_76=='\r'||(LA21_76>='\"' && LA21_76<='#')||LA21_76=='\\') && (( isHead() ))) {s = 23;} + else if ( (LA21_111=='\\') ) {s = 100;} - else s = 73; + else if ( (LA21_111=='\n'||LA21_111=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_76); + input.seek(index21_111); if ( s>=0 ) return s; break; case 27 : - int LA21_111 = input.LA(1); + int LA21_102 = input.LA(1); - int index21_111 = input.index(); + int index21_102 = input.index(); input.rewind(); s = -1; - if ( ((LA21_111>='\u0000' && LA21_111<='/')||(LA21_111>=':' && LA21_111<='@')||(LA21_111>='G' && LA21_111<='`')||(LA21_111>='g' && LA21_111<='\uFFFF')) && (( isHead() ))) {s = 23;} - - else if ( ((LA21_111>='0' && LA21_111<='9')||(LA21_111>='A' && LA21_111<='F')||(LA21_111>='a' && LA21_111<='f')) ) {s = 114;} + s = 103; - input.seek(index21_111); + input.seek(index21_102); if ( s>=0 ) return s; break; case 28 : - int LA21_13 = input.LA(1); + int LA21_112 = input.LA(1); - int index21_13 = input.index(); + int index21_112 = input.index(); input.rewind(); s = -1; - if ( ((LA21_13>='\u0000' && LA21_13<='\b')||(LA21_13>='\u000B' && LA21_13<='\f')||(LA21_13>='\u000E' && LA21_13<='\u001F')||LA21_13=='!'||(LA21_13>='$' && LA21_13<='[')||(LA21_13>=']' && LA21_13<='\uFFFF')) && ((( isHead() )||( isValue() )))) {s = 42;} + if ( (LA21_112=='\"') ) {s = 98;} - else if ( ((LA21_13>='\t' && LA21_13<='\n')||LA21_13=='\r'||LA21_13==' '||LA21_13=='\"'||LA21_13=='\\') && (( isHead() ))) {s = 23;} + else if ( ((LA21_112>='\u0000' && LA21_112<='\t')||(LA21_112>='\u000B' && LA21_112<='\f')||(LA21_112>='\u000E' && LA21_112<='!')||(LA21_112>='#' && LA21_112<='[')||(LA21_112>=']' && LA21_112<='\uFFFF')) ) {s = 99;} - else if ( (LA21_13=='#') && ((( isValue() )||( isHead() )))) {s = 44;} + else if ( (LA21_112=='\\') ) {s = 100;} - else s = 43; + else if ( (LA21_112=='\n'||LA21_112=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_13); + input.seek(index21_112); if ( s>=0 ) return s; break; case 29 : - int LA21_87 = input.LA(1); + int LA21_11 = input.LA(1); - int index21_87 = input.index(); + int index21_11 = input.index(); input.rewind(); s = -1; - if ( (LA21_87=='\t'||LA21_87==' ') ) {s = 84;} - - else if ( ((LA21_87>='\u0000' && LA21_87<='\b')||(LA21_87>='\u000B' && LA21_87<='\f')||(LA21_87>='\u000E' && LA21_87<='\u001F')||LA21_87=='!'||(LA21_87>='$' && LA21_87<='\'')||LA21_87=='+'||(LA21_87>='-' && LA21_87<='9')||(LA21_87>=';' && LA21_87<='=')||(LA21_87>='?' && LA21_87<='Z')||(LA21_87>='^' && LA21_87<='z')||(LA21_87>='~' && LA21_87<='\uFFFF')) ) {s = 85;} - - else if ( (LA21_87=='*'||LA21_87==':'||LA21_87=='>'||LA21_87=='['||LA21_87==']'||(LA21_87>='{' && LA21_87<='}')) ) {s = 86;} - - else if ( ((LA21_87>='(' && LA21_87<=')')||LA21_87==',') ) {s = 87;} - - else if ( (LA21_87=='\n'||LA21_87=='\r'||(LA21_87>='\"' && LA21_87<='#')||LA21_87=='\\') && (( isHead() ))) {s = 23;} + if ( ((LA21_11>='\u0000' && LA21_11<='\uFFFF')) && (( isHead() ))) {s = 23;} - else s = 82; + else s = 39; - input.seek(index21_87); + input.seek(index21_11); if ( s>=0 ) return s; break; case 30 : - int LA21_120 = input.LA(1); + int LA21_30 = input.LA(1); - int index21_120 = input.index(); + int index21_30 = input.index(); input.rewind(); s = -1; - if ( (LA21_120=='\n'||LA21_120=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_30=='\r') && (( isHead() ))) {s = 68;} - else if ( (LA21_120=='\"') ) {s = 88;} + else if ( (LA21_30=='\n') && (( isHead() ))) {s = 69;} - else if ( ((LA21_120>='\u0000' && LA21_120<='\t')||(LA21_120>='\u000B' && LA21_120<='\f')||(LA21_120>='\u000E' && LA21_120<='!')||(LA21_120>='#' && LA21_120<='[')||(LA21_120>=']' && LA21_120<='\uFFFF')) ) {s = 89;} + else if ( ((LA21_30>='\u0000' && LA21_30<='\b')||(LA21_30>='\u000B' && LA21_30<='\f')||(LA21_30>='\u000E' && LA21_30<='\u001F')||(LA21_30>='!' && LA21_30<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_120=='\\') ) {s = 90;} + else if ( (LA21_30=='\t'||LA21_30==' ') && (( isHead() ))) {s = 70;} - input.seek(index21_120); + input.seek(index21_30); if ( s>=0 ) return s; break; case 31 : - int LA21_17 = input.LA(1); + int LA21_96 = input.LA(1); - int index21_17 = input.index(); + int index21_96 = input.index(); input.rewind(); s = -1; - if ( ((LA21_17>='\u0000' && LA21_17<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( ((LA21_96>='\u0000' && LA21_96<='/')||(LA21_96>=':' && LA21_96<='@')||(LA21_96>='G' && LA21_96<='`')||(LA21_96>='g' && LA21_96<='\uFFFF')) && (( isHead() ))) {s = 23;} - else s = 52; + else if ( ((LA21_96>='0' && LA21_96<='9')||(LA21_96>='A' && LA21_96<='F')||(LA21_96>='a' && LA21_96<='f')) ) {s = 104;} - input.seek(index21_17); + input.seek(index21_96); if ( s>=0 ) return s; break; case 32 : - int LA21_18 = input.LA(1); + int LA21_120 = input.LA(1); - int index21_18 = input.index(); + int index21_120 = input.index(); input.rewind(); s = -1; - if ( ((LA21_18>='\u0000' && LA21_18<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( ((LA21_120>='0' && LA21_120<='9')||(LA21_120>='A' && LA21_120<='F')||(LA21_120>='a' && LA21_120<='f')) ) {s = 121;} - else s = 53; + else if ( ((LA21_120>='\u0000' && LA21_120<='/')||(LA21_120>=':' && LA21_120<='@')||(LA21_120>='G' && LA21_120<='`')||(LA21_120>='g' && LA21_120<='\uFFFF')) && (( isHead() ))) {s = 23;} - input.seek(index21_18); + input.seek(index21_120); if ( s>=0 ) return s; break; case 33 : - int LA21_58 = input.LA(1); + int LA21_98 = input.LA(1); - int index21_58 = input.index(); + int index21_98 = input.index(); input.rewind(); s = -1; - if ( (LA21_58=='\"') ) {s = 61;} + if ( ((LA21_98>='\u0000' && LA21_98<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_58=='#') ) {s = 59;} - - else if ( (LA21_58=='\\') ) {s = 60;} - - else if ( (LA21_58=='\n'||LA21_58=='\r') && (( isHead() ))) {s = 23;} - - else if ( ((LA21_58>='\u0000' && LA21_58<='\t')||(LA21_58>='\u000B' && LA21_58<='\f')||(LA21_58>='\u000E' && LA21_58<='!')||(LA21_58>='$' && LA21_58<='[')||(LA21_58>=']' && LA21_58<='\uFFFF')) ) {s = 58;} + else s = 97; - input.seek(index21_58); + input.seek(index21_98); if ( s>=0 ) return s; break; case 34 : - int LA21_20 = input.LA(1); + int LA21_50 = input.LA(1); - int index21_20 = input.index(); + int index21_50 = input.index(); input.rewind(); s = -1; - if ( ((LA21_20>='\u0000' && LA21_20<='\t')||(LA21_20>='\u000B' && LA21_20<='\f')||(LA21_20>='\u000E' && LA21_20<='!')||(LA21_20>='$' && LA21_20<='[')||(LA21_20>=']' && LA21_20<='\uFFFF')) ) {s = 58;} + if ( (LA21_50=='\n'||LA21_50=='\r'||(LA21_50>='\"' && LA21_50<='#')||LA21_50=='\\') && (( isHead() ))) {s = 23;} - else if ( (LA21_20=='\n'||LA21_20=='\r') && (( isHead() ))) {s = 23;} + else if ( (LA21_50=='\t'||LA21_50==' ') ) {s = 47;} - else if ( (LA21_20=='#') ) {s = 59;} + else if ( ((LA21_50>='\u0000' && LA21_50<='\b')||(LA21_50>='\u000B' && LA21_50<='\f')||(LA21_50>='\u000E' && LA21_50<='\u001F')||LA21_50=='!'||(LA21_50>='$' && LA21_50<='\'')||LA21_50=='+'||(LA21_50>='-' && LA21_50<='9')||(LA21_50>=';' && LA21_50<='=')||(LA21_50>='?' && LA21_50<='Z')||(LA21_50>='^' && LA21_50<='z')||(LA21_50>='~' && LA21_50<='\uFFFF')) ) {s = 48;} - else if ( (LA21_20=='\\') ) {s = 60;} + else if ( (LA21_50=='*'||LA21_50==':'||LA21_50=='>'||LA21_50=='['||LA21_50==']'||(LA21_50>='{' && LA21_50<='}')) ) {s = 49;} - else if ( (LA21_20=='\"') ) {s = 61;} + else if ( ((LA21_50>='(' && LA21_50<=')')||LA21_50==',') ) {s = 50;} + + else s = 61; - input.seek(index21_20); + input.seek(index21_50); if ( s>=0 ) return s; break; case 35 : - int LA21_54 = input.LA(1); + int LA21_77 = input.LA(1); - int index21_54 = input.index(); + int index21_77 = input.index(); input.rewind(); s = -1; - if ( (LA21_54=='\t'||LA21_54==' ') ) {s = 84;} + if ( (LA21_77=='\n'||LA21_77=='\r'||(LA21_77>='\"' && LA21_77<='#')||LA21_77=='\\') && (( isHead() ))) {s = 23;} - else if ( ((LA21_54>='\u0000' && LA21_54<='\b')||(LA21_54>='\u000B' && LA21_54<='\f')||(LA21_54>='\u000E' && LA21_54<='\u001F')||LA21_54=='!'||(LA21_54>='$' && LA21_54<='\'')||LA21_54=='+'||(LA21_54>='-' && LA21_54<='9')||(LA21_54>=';' && LA21_54<='=')||(LA21_54>='?' && LA21_54<='Z')||(LA21_54>='^' && LA21_54<='z')||(LA21_54>='~' && LA21_54<='\uFFFF')) ) {s = 85;} + else if ( (LA21_77=='\t'||LA21_77==' ') && ((( isValue() )||( isHead() )))) {s = 74;} - else if ( (LA21_54=='*'||LA21_54==':'||LA21_54=='>'||LA21_54=='['||LA21_54==']'||(LA21_54>='{' && LA21_54<='}')) ) {s = 86;} + else if ( ((LA21_77>='\u0000' && LA21_77<='\b')||(LA21_77>='\u000B' && LA21_77<='\f')||(LA21_77>='\u000E' && LA21_77<='\u001F')||LA21_77=='!'||(LA21_77>='$' && LA21_77<='\'')||LA21_77=='+'||(LA21_77>='-' && LA21_77<='9')||(LA21_77>=';' && LA21_77<='=')||(LA21_77>='?' && LA21_77<='Z')||(LA21_77>='^' && LA21_77<='z')||(LA21_77>='~' && LA21_77<='\uFFFF')) && ((( isHead() )||( isValue() )))) {s = 75;} - else if ( ((LA21_54>='(' && LA21_54<=')')||LA21_54==',') ) {s = 87;} + else if ( (LA21_77=='*'||LA21_77==':'||LA21_77=='>'||LA21_77=='['||LA21_77==']'||(LA21_77>='{' && LA21_77<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} - else if ( (LA21_54=='\n'||LA21_54=='\r'||(LA21_54>='\"' && LA21_54<='#')||LA21_54=='\\') && (( isHead() ))) {s = 23;} + else if ( ((LA21_77>='(' && LA21_77<=')')||LA21_77==',') && ((( isHead() )||( isValue() )))) {s = 77;} - else s = 82; + else s = 67; - input.seek(index21_54); + input.seek(index21_77); if ( s>=0 ) return s; break; case 36 : - int LA21_80 = input.LA(1); + int LA21_18 = input.LA(1); - int index21_80 = input.index(); + int index21_18 = input.index(); input.rewind(); s = -1; - if ( (LA21_80=='\n'||LA21_80=='\r'||(LA21_80>='\"' && LA21_80<='#')||LA21_80=='\\') && (( isHead() ))) {s = 23;} - - else if ( (LA21_80=='\t'||LA21_80==' ') && ((( isHead() )||( isValue() )))) {s = 78;} - - else if ( ((LA21_80>='\u0000' && LA21_80<='\b')||(LA21_80>='\u000B' && LA21_80<='\f')||(LA21_80>='\u000E' && LA21_80<='\u001F')||LA21_80=='!'||(LA21_80>='$' && LA21_80<='\'')||LA21_80=='+'||(LA21_80>='-' && LA21_80<='9')||(LA21_80>=';' && LA21_80<='=')||(LA21_80>='?' && LA21_80<='Z')||(LA21_80>='^' && LA21_80<='z')||(LA21_80>='~' && LA21_80<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} - - else if ( (LA21_80=='*'||LA21_80==':'||LA21_80=='>'||LA21_80=='['||LA21_80==']'||(LA21_80>='{' && LA21_80<='}')) && ((( isHead() )||( isValue() )))) {s = 80;} - - else if ( ((LA21_80>='(' && LA21_80<=')')||LA21_80==',') && ((( isValue() )||( isHead() )))) {s = 81;} + if ( ((LA21_18>='\u0000' && LA21_18<='\uFFFF')) && (( isHead() ))) {s = 23;} - else s = 73; + else s = 52; - input.seek(index21_80); + input.seek(index21_18); if ( s>=0 ) return s; break; case 37 : - int LA21_105 = input.LA(1); + int LA21_19 = input.LA(1); - int index21_105 = input.index(); + int index21_19 = input.index(); input.rewind(); s = -1; - if ( (LA21_105=='\n'||LA21_105=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_19=='\t'||LA21_19==' ') ) {s = 47;} - else if ( (LA21_105=='\"') ) {s = 88;} + else if ( ((LA21_19>='\u0000' && LA21_19<='\b')||(LA21_19>='\u000B' && LA21_19<='\f')||(LA21_19>='\u000E' && LA21_19<='\u001F')||LA21_19=='!'||(LA21_19>='$' && LA21_19<='\'')||LA21_19=='+'||(LA21_19>='-' && LA21_19<='9')||(LA21_19>=';' && LA21_19<='=')||(LA21_19>='?' && LA21_19<='Z')||(LA21_19>='^' && LA21_19<='z')||(LA21_19>='~' && LA21_19<='\uFFFF')) ) {s = 54;} - else if ( ((LA21_105>='\u0000' && LA21_105<='\t')||(LA21_105>='\u000B' && LA21_105<='\f')||(LA21_105>='\u000E' && LA21_105<='!')||(LA21_105>='#' && LA21_105<='[')||(LA21_105>=']' && LA21_105<='\uFFFF')) ) {s = 89;} + else if ( (LA21_19=='*'||LA21_19==':'||LA21_19=='>'||LA21_19=='['||LA21_19==']'||(LA21_19>='{' && LA21_19<='}')) ) {s = 55;} - else if ( (LA21_105=='\\') ) {s = 90;} + else if ( ((LA21_19>='(' && LA21_19<=')')||LA21_19==',') ) {s = 56;} + + else if ( (LA21_19=='\n'||LA21_19=='\r'||LA21_19=='\"'||LA21_19=='\\') && (( isHead() ))) {s = 23;} + + else if ( (LA21_19=='#') && ((( isValue() )||( isHead() )))) {s = 43;} + + else s = 53; - input.seek(index21_105); + input.seek(index21_19); if ( s>=0 ) return s; break; case 38 : - int LA21_59 = input.LA(1); + int LA21_106 = input.LA(1); - int index21_59 = input.index(); + int index21_106 = input.index(); input.rewind(); s = -1; - if ( (LA21_59=='\"') ) {s = 88;} + if ( (LA21_106=='\"') ) {s = 98;} - else if ( (LA21_59=='\n'||LA21_59=='\r') && (( isHead() ))) {s = 23;} + else if ( ((LA21_106>='\u0000' && LA21_106<='\t')||(LA21_106>='\u000B' && LA21_106<='\f')||(LA21_106>='\u000E' && LA21_106<='!')||(LA21_106>='#' && LA21_106<='[')||(LA21_106>=']' && LA21_106<='\uFFFF')) ) {s = 99;} - else if ( ((LA21_59>='\u0000' && LA21_59<='\t')||(LA21_59>='\u000B' && LA21_59<='\f')||(LA21_59>='\u000E' && LA21_59<='!')||(LA21_59>='#' && LA21_59<='[')||(LA21_59>=']' && LA21_59<='\uFFFF')) ) {s = 89;} + else if ( (LA21_106=='\\') ) {s = 100;} - else if ( (LA21_59=='\\') ) {s = 90;} + else if ( (LA21_106=='\n'||LA21_106=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_59); + input.seek(index21_106); if ( s>=0 ) return s; break; case 39 : - int LA21_108 = input.LA(1); + int LA21_9 = input.LA(1); - int index21_108 = input.index(); + int index21_9 = input.index(); input.rewind(); s = -1; - if ( (LA21_108=='\n'||LA21_108=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_9=='\n'||LA21_9=='\r') && (( isHead() ))) {s = 34;} - else if ( (LA21_108=='\"') ) {s = 88;} + else if ( (LA21_9=='\t'||LA21_9==' ') && ((( !isHead() )||( isHead() )))) {s = 35;} - else if ( ((LA21_108>='\u0000' && LA21_108<='\t')||(LA21_108>='\u000B' && LA21_108<='\f')||(LA21_108>='\u000E' && LA21_108<='!')||(LA21_108>='#' && LA21_108<='[')||(LA21_108>=']' && LA21_108<='\uFFFF')) ) {s = 89;} + else if ( ((LA21_9>='\u0000' && LA21_9<='\b')||(LA21_9>='\u000B' && LA21_9<='\f')||(LA21_9>='\u000E' && LA21_9<='\u001F')||(LA21_9>='!' && LA21_9<='\"')||LA21_9=='$'||(LA21_9>='&' && LA21_9<=',')||(LA21_9>='.' && LA21_9<='?')||(LA21_9>='A' && LA21_9<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_108=='\\') ) {s = 90;} + else s = 33; - input.seek(index21_108); + input.seek(index21_9); if ( s>=0 ) return s; break; case 40 : - int LA21_101 = input.LA(1); + int LA21_86 = input.LA(1); - int index21_101 = input.index(); + int index21_86 = input.index(); input.rewind(); s = -1; - s = 102; + if ( (LA21_86=='\n'||LA21_86=='\r'||(LA21_86>='\"' && LA21_86<='#')||LA21_86=='\\') && (( isHead() ))) {s = 23;} + + else if ( (LA21_86=='\t'||LA21_86==' ') ) {s = 84;} + + else if ( ((LA21_86>='\u0000' && LA21_86<='\b')||(LA21_86>='\u000B' && LA21_86<='\f')||(LA21_86>='\u000E' && LA21_86<='\u001F')||LA21_86=='!'||(LA21_86>='$' && LA21_86<='\'')||LA21_86=='+'||(LA21_86>='-' && LA21_86<='9')||(LA21_86>=';' && LA21_86<='=')||(LA21_86>='?' && LA21_86<='Z')||(LA21_86>='^' && LA21_86<='z')||(LA21_86>='~' && LA21_86<='\uFFFF')) ) {s = 85;} + + else if ( (LA21_86=='*'||LA21_86==':'||LA21_86=='>'||LA21_86=='['||LA21_86==']'||(LA21_86>='{' && LA21_86<='}')) ) {s = 86;} + + else if ( ((LA21_86>='(' && LA21_86<=')')||LA21_86==',') ) {s = 87;} + + else s = 83; - input.seek(index21_101); + input.seek(index21_86); if ( s>=0 ) return s; break; case 41 : - int LA21_93 = input.LA(1); + int LA21_56 = input.LA(1); - int index21_93 = input.index(); + int index21_56 = input.index(); input.rewind(); s = -1; - if ( (LA21_93=='\"') ) {s = 61;} + if ( (LA21_56=='\n'||LA21_56=='\r'||(LA21_56>='\"' && LA21_56<='#')||LA21_56=='\\') && (( isHead() ))) {s = 23;} + + else if ( (LA21_56=='\t'||LA21_56==' ') ) {s = 84;} - else if ( (LA21_93=='#') ) {s = 59;} + else if ( ((LA21_56>='\u0000' && LA21_56<='\b')||(LA21_56>='\u000B' && LA21_56<='\f')||(LA21_56>='\u000E' && LA21_56<='\u001F')||LA21_56=='!'||(LA21_56>='$' && LA21_56<='\'')||LA21_56=='+'||(LA21_56>='-' && LA21_56<='9')||(LA21_56>=';' && LA21_56<='=')||(LA21_56>='?' && LA21_56<='Z')||(LA21_56>='^' && LA21_56<='z')||(LA21_56>='~' && LA21_56<='\uFFFF')) ) {s = 85;} - else if ( (LA21_93=='\\') ) {s = 60;} + else if ( (LA21_56=='*'||LA21_56==':'||LA21_56=='>'||LA21_56=='['||LA21_56==']'||(LA21_56>='{' && LA21_56<='}')) ) {s = 86;} - else if ( (LA21_93=='\n'||LA21_93=='\r') && (( isHead() ))) {s = 23;} + else if ( ((LA21_56>='(' && LA21_56<=')')||LA21_56==',') ) {s = 87;} - else if ( ((LA21_93>='\u0000' && LA21_93<='\t')||(LA21_93>='\u000B' && LA21_93<='\f')||(LA21_93>='\u000E' && LA21_93<='!')||(LA21_93>='$' && LA21_93<='[')||(LA21_93>=']' && LA21_93<='\uFFFF')) ) {s = 58;} + else s = 83; - input.seek(index21_93); + input.seek(index21_56); if ( s>=0 ) return s; break; case 42 : - int LA21_118 = input.LA(1); + int LA21_95 = input.LA(1); - int index21_118 = input.index(); + int index21_95 = input.index(); input.rewind(); s = -1; - if ( ((LA21_118>='\u0000' && LA21_118<='/')||(LA21_118>=':' && LA21_118<='@')||(LA21_118>='G' && LA21_118<='`')||(LA21_118>='g' && LA21_118<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( (LA21_95=='\n'||LA21_95=='\r') && (( isHead() ))) {s = 23;} - else if ( ((LA21_118>='0' && LA21_118<='9')||(LA21_118>='A' && LA21_118<='F')||(LA21_118>='a' && LA21_118<='f')) ) {s = 120;} + else if ( (LA21_95=='#') ) {s = 60;} - - input.seek(index21_118); - if ( s>=0 ) return s; - break; - case 43 : - int LA21_11 = input.LA(1); + else if ( (LA21_95=='\"') ) {s = 59;} - - int index21_11 = input.index(); - input.rewind(); - s = -1; - if ( ((LA21_11>='\u0000' && LA21_11<='\uFFFF')) && (( isHead() ))) {s = 23;} + else if ( ((LA21_95>='\u0000' && LA21_95<='\t')||(LA21_95>='\u000B' && LA21_95<='\f')||(LA21_95>='\u000E' && LA21_95<='!')||(LA21_95>='$' && LA21_95<='[')||(LA21_95>=']' && LA21_95<='\uFFFF')) ) {s = 57;} - else s = 40; + else if ( (LA21_95=='\\') ) {s = 58;} - input.seek(index21_11); + input.seek(index21_95); if ( s>=0 ) return s; break; - case 44 : + case 43 : int LA21_78 = input.LA(1); int index21_78 = input.index(); input.rewind(); s = -1; - if ( (LA21_78=='\n'||LA21_78=='\r'||(LA21_78>='\"' && LA21_78<='#')||LA21_78=='\\') && (( isHead() ))) {s = 23;} - - else if ( (LA21_78=='\t'||LA21_78==' ') && ((( isHead() )||( isValue() )))) {s = 78;} + if ( (LA21_78=='\t'||LA21_78==' ') && ((( isHead() )||( isValue() )))) {s = 78;} else if ( ((LA21_78>='\u0000' && LA21_78<='\b')||(LA21_78>='\u000B' && LA21_78<='\f')||(LA21_78>='\u000E' && LA21_78<='\u001F')||LA21_78=='!'||(LA21_78>='$' && LA21_78<='\'')||LA21_78=='+'||(LA21_78>='-' && LA21_78<='9')||(LA21_78>=';' && LA21_78<='=')||(LA21_78>='?' && LA21_78<='Z')||(LA21_78>='^' && LA21_78<='z')||(LA21_78>='~' && LA21_78<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} @@ -3200,109 +3235,134 @@ public class SilkLexer extends Lexer { else if ( ((LA21_78>='(' && LA21_78<=')')||LA21_78==',') && ((( isValue() )||( isHead() )))) {s = 81;} - else s = 73; + else if ( (LA21_78=='\n'||LA21_78=='\r'||(LA21_78>='\"' && LA21_78<='#')||LA21_78=='\\') && (( isHead() ))) {s = 23;} + + else s = 67; input.seek(index21_78); if ( s>=0 ) return s; break; - case 45 : - int LA21_107 = input.LA(1); + case 44 : + int LA21_88 = input.LA(1); - int index21_107 = input.index(); + int index21_88 = input.index(); input.rewind(); s = -1; - if ( (LA21_107=='\n'||LA21_107=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_88=='\n'||LA21_88=='\r') && (( isHead() ))) {s = 23;} + + else if ( (LA21_88=='#') ) {s = 60;} - else if ( (LA21_107=='\"') ) {s = 88;} + else if ( (LA21_88=='\"') ) {s = 59;} - else if ( ((LA21_107>='\u0000' && LA21_107<='\t')||(LA21_107>='\u000B' && LA21_107<='\f')||(LA21_107>='\u000E' && LA21_107<='!')||(LA21_107>='#' && LA21_107<='[')||(LA21_107>=']' && LA21_107<='\uFFFF')) ) {s = 89;} + else if ( ((LA21_88>='\u0000' && LA21_88<='\t')||(LA21_88>='\u000B' && LA21_88<='\f')||(LA21_88>='\u000E' && LA21_88<='!')||(LA21_88>='$' && LA21_88<='[')||(LA21_88>=']' && LA21_88<='\uFFFF')) ) {s = 57;} - else if ( (LA21_107=='\\') ) {s = 90;} + else if ( (LA21_88=='\\') ) {s = 58;} - input.seek(index21_107); + input.seek(index21_88); if ( s>=0 ) return s; break; - case 46 : - int LA21_47 = input.LA(1); + case 45 : + int LA21_89 = input.LA(1); - int index21_47 = input.index(); + int index21_89 = input.index(); input.rewind(); s = -1; - if ( (LA21_47=='\t'||LA21_47==' ') ) {s = 47;} - - else if ( ((LA21_47>='\u0000' && LA21_47<='\b')||(LA21_47>='\u000B' && LA21_47<='\f')||(LA21_47>='\u000E' && LA21_47<='\u001F')||LA21_47=='!'||(LA21_47>='$' && LA21_47<='\'')||LA21_47=='+'||(LA21_47>='-' && LA21_47<='9')||(LA21_47>=';' && LA21_47<='=')||(LA21_47>='?' && LA21_47<='Z')||(LA21_47>='^' && LA21_47<='z')||(LA21_47>='~' && LA21_47<='\uFFFF')) ) {s = 49;} + if ( (LA21_89=='\n'||LA21_89=='\r') && (( isHead() ))) {s = 23;} - else if ( (LA21_47=='*'||LA21_47==':'||LA21_47=='>'||LA21_47=='['||LA21_47==']'||(LA21_47>='{' && LA21_47<='}')) ) {s = 50;} + else if ( (LA21_89=='#') ) {s = 60;} - else if ( ((LA21_47>='(' && LA21_47<=')')||LA21_47==',') ) {s = 51;} + else if ( (LA21_89=='\"') ) {s = 59;} - else if ( (LA21_47=='\n'||LA21_47=='\r'||(LA21_47>='\"' && LA21_47<='#')||LA21_47=='\\') && (( isHead() ))) {s = 23;} + else if ( ((LA21_89>='\u0000' && LA21_89<='\t')||(LA21_89>='\u000B' && LA21_89<='\f')||(LA21_89>='\u000E' && LA21_89<='!')||(LA21_89>='$' && LA21_89<='[')||(LA21_89>=']' && LA21_89<='\uFFFF')) ) {s = 57;} - else s = 82; + else if ( (LA21_89=='\\') ) {s = 58;} - input.seek(index21_47); + input.seek(index21_89); if ( s>=0 ) return s; break; - case 47 : - int LA21_74 = input.LA(1); + case 46 : + int LA21_51 = input.LA(1); - int index21_74 = input.index(); + int index21_51 = input.index(); input.rewind(); s = -1; - if ( (LA21_74=='\t'||LA21_74==' ') && ((( isValue() )||( isHead() )))) {s = 74;} + if ( (!((( isValue() )))) ) {s = 82;} - else if ( ((LA21_74>='\u0000' && LA21_74<='\b')||(LA21_74>='\u000B' && LA21_74<='\f')||(LA21_74>='\u000E' && LA21_74<='\u001F')||LA21_74=='!'||(LA21_74>='$' && LA21_74<='\'')||LA21_74=='+'||(LA21_74>='-' && LA21_74<='9')||(LA21_74>=';' && LA21_74<='=')||(LA21_74>='?' && LA21_74<='Z')||(LA21_74>='^' && LA21_74<='z')||(LA21_74>='~' && LA21_74<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 75;} + else if ( (( isValue() )) ) {s = 62;} - else if ( (LA21_74=='*'||LA21_74==':'||LA21_74=='>'||LA21_74=='['||LA21_74==']'||(LA21_74>='{' && LA21_74<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} + + input.seek(index21_51); + if ( s>=0 ) return s; + break; + case 47 : + int LA21_105 = input.LA(1); - else if ( ((LA21_74>='(' && LA21_74<=')')||LA21_74==',') && ((( isValue() )||( isHead() )))) {s = 77;} + + int index21_105 = input.index(); + input.rewind(); + s = -1; + if ( (LA21_105=='\"') ) {s = 98;} - else if ( (LA21_74=='\n'||LA21_74=='\r'||(LA21_74>='\"' && LA21_74<='#')||LA21_74=='\\') && (( isHead() ))) {s = 23;} + else if ( ((LA21_105>='\u0000' && LA21_105<='\t')||(LA21_105>='\u000B' && LA21_105<='\f')||(LA21_105>='\u000E' && LA21_105<='!')||(LA21_105>='#' && LA21_105<='[')||(LA21_105>=']' && LA21_105<='\uFFFF')) ) {s = 99;} - else s = 73; + else if ( (LA21_105=='\\') ) {s = 100;} + + else if ( (LA21_105=='\n'||LA21_105=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_74); + input.seek(index21_105); if ( s>=0 ) return s; break; case 48 : - int LA21_67 = input.LA(1); + int LA21_79 = input.LA(1); - int index21_67 = input.index(); + int index21_79 = input.index(); input.rewind(); s = -1; - if ( (LA21_67=='\r') && (( isHead() ))) {s = 68;} + if ( (LA21_79=='\t'||LA21_79==' ') && ((( isHead() )||( isValue() )))) {s = 78;} + + else if ( ((LA21_79>='\u0000' && LA21_79<='\b')||(LA21_79>='\u000B' && LA21_79<='\f')||(LA21_79>='\u000E' && LA21_79<='\u001F')||LA21_79=='!'||(LA21_79>='$' && LA21_79<='\'')||LA21_79=='+'||(LA21_79>='-' && LA21_79<='9')||(LA21_79>=';' && LA21_79<='=')||(LA21_79>='?' && LA21_79<='Z')||(LA21_79>='^' && LA21_79<='z')||(LA21_79>='~' && LA21_79<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} + + else if ( (LA21_79=='*'||LA21_79==':'||LA21_79=='>'||LA21_79=='['||LA21_79==']'||(LA21_79>='{' && LA21_79<='}')) && ((( isHead() )||( isValue() )))) {s = 80;} - else if ( (LA21_67=='\n') && (( isHead() ))) {s = 69;} + else if ( ((LA21_79>='(' && LA21_79<=')')||LA21_79==',') && ((( isValue() )||( isHead() )))) {s = 81;} - else if ( (LA21_67=='\t'||LA21_67==' ') && (( isHead() ))) {s = 67;} + else if ( (LA21_79=='\n'||LA21_79=='\r'||(LA21_79>='\"' && LA21_79<='#')||LA21_79=='\\') && (( isHead() ))) {s = 23;} - else if ( ((LA21_67>='\u0000' && LA21_67<='\b')||(LA21_67>='\u000B' && LA21_67<='\f')||(LA21_67>='\u000E' && LA21_67<='\u001F')||(LA21_67>='!' && LA21_67<='\uFFFF')) && (( isHead() ))) {s = 23;} + else s = 67; - input.seek(index21_67); + input.seek(index21_79); if ( s>=0 ) return s; break; case 49 : - int LA21_14 = input.LA(1); + int LA21_87 = input.LA(1); - int index21_14 = input.index(); + int index21_87 = input.index(); input.rewind(); s = -1; - if ( ((LA21_14>='\u0000' && LA21_14<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( (LA21_87=='\n'||LA21_87=='\r'||(LA21_87>='\"' && LA21_87<='#')||LA21_87=='\\') && (( isHead() ))) {s = 23;} - else s = 45; + else if ( (LA21_87=='\t'||LA21_87==' ') ) {s = 84;} + + else if ( ((LA21_87>='\u0000' && LA21_87<='\b')||(LA21_87>='\u000B' && LA21_87<='\f')||(LA21_87>='\u000E' && LA21_87<='\u001F')||LA21_87=='!'||(LA21_87>='$' && LA21_87<='\'')||LA21_87=='+'||(LA21_87>='-' && LA21_87<='9')||(LA21_87>=';' && LA21_87<='=')||(LA21_87>='?' && LA21_87<='Z')||(LA21_87>='^' && LA21_87<='z')||(LA21_87>='~' && LA21_87<='\uFFFF')) ) {s = 85;} + + else if ( (LA21_87=='*'||LA21_87==':'||LA21_87=='>'||LA21_87=='['||LA21_87==']'||(LA21_87>='{' && LA21_87<='}')) ) {s = 86;} + + else if ( ((LA21_87>='(' && LA21_87<=')')||LA21_87==',') ) {s = 87;} + + else s = 83; - input.seek(index21_14); + input.seek(index21_87); if ( s>=0 ) return s; break; case 50 : @@ -3321,775 +3381,720 @@ public class SilkLexer extends Lexer { if ( s>=0 ) return s; break; case 51 : - int LA21_106 = input.LA(1); + int LA21_17 = input.LA(1); - int index21_106 = input.index(); + int index21_17 = input.index(); input.rewind(); s = -1; - if ( (LA21_106=='\n'||LA21_106=='\r') && (( isHead() ))) {s = 23;} - - else if ( (LA21_106=='\"') ) {s = 88;} - - else if ( ((LA21_106>='\u0000' && LA21_106<='\t')||(LA21_106>='\u000B' && LA21_106<='\f')||(LA21_106>='\u000E' && LA21_106<='!')||(LA21_106>='#' && LA21_106<='[')||(LA21_106>=']' && LA21_106<='\uFFFF')) ) {s = 89;} + if ( ((LA21_17>='\u0000' && LA21_17<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_106=='\\') ) {s = 90;} + else s = 51; - input.seek(index21_106); + input.seek(index21_17); if ( s>=0 ) return s; break; case 52 : - int LA21_49 = input.LA(1); + int LA21_58 = input.LA(1); - int index21_49 = input.index(); + int index21_58 = input.index(); input.rewind(); s = -1; - if ( (LA21_49=='\t'||LA21_49==' ') ) {s = 47;} + if ( ((LA21_58>='\u0000' && LA21_58<='!')||(LA21_58>='#' && LA21_58<='.')||(LA21_58>='0' && LA21_58<='[')||(LA21_58>=']' && LA21_58<='a')||(LA21_58>='c' && LA21_58<='e')||(LA21_58>='g' && LA21_58<='m')||(LA21_58>='o' && LA21_58<='q')||LA21_58=='s'||(LA21_58>='v' && LA21_58<='\uFFFF')) && (( isHead() ))) {s = 23;} + + else if ( (LA21_58=='\"') ) {s = 88;} - else if ( ((LA21_49>='\u0000' && LA21_49<='\b')||(LA21_49>='\u000B' && LA21_49<='\f')||(LA21_49>='\u000E' && LA21_49<='\u001F')||LA21_49=='!'||(LA21_49>='$' && LA21_49<='\'')||LA21_49=='+'||(LA21_49>='-' && LA21_49<='9')||(LA21_49>=';' && LA21_49<='=')||(LA21_49>='?' && LA21_49<='Z')||(LA21_49>='^' && LA21_49<='z')||(LA21_49>='~' && LA21_49<='\uFFFF')) ) {s = 49;} + else if ( (LA21_58=='\\') ) {s = 89;} - else if ( (LA21_49=='*'||LA21_49==':'||LA21_49=='>'||LA21_49=='['||LA21_49==']'||(LA21_49>='{' && LA21_49<='}')) ) {s = 50;} + else if ( (LA21_58=='/') ) {s = 90;} - else if ( ((LA21_49>='(' && LA21_49<=')')||LA21_49==',') ) {s = 51;} + else if ( (LA21_58=='b') ) {s = 91;} - else if ( (LA21_49=='\n'||LA21_49=='\r'||(LA21_49>='\"' && LA21_49<='#')||LA21_49=='\\') && (( isHead() ))) {s = 23;} + else if ( (LA21_58=='f') ) {s = 92;} - else s = 82; + else if ( (LA21_58=='n') ) {s = 93;} + + else if ( (LA21_58=='r') ) {s = 94;} + + else if ( (LA21_58=='t') ) {s = 95;} + + else if ( (LA21_58=='u') ) {s = 96;} - input.seek(index21_49); + input.seek(index21_58); if ( s>=0 ) return s; break; case 53 : - int LA21_75 = input.LA(1); + int LA21_94 = input.LA(1); - int index21_75 = input.index(); + int index21_94 = input.index(); input.rewind(); s = -1; - if ( (LA21_75=='\t'||LA21_75==' ') && ((( isValue() )||( isHead() )))) {s = 74;} + if ( (LA21_94=='\"') ) {s = 59;} - else if ( ((LA21_75>='\u0000' && LA21_75<='\b')||(LA21_75>='\u000B' && LA21_75<='\f')||(LA21_75>='\u000E' && LA21_75<='\u001F')||LA21_75=='!'||(LA21_75>='$' && LA21_75<='\'')||LA21_75=='+'||(LA21_75>='-' && LA21_75<='9')||(LA21_75>=';' && LA21_75<='=')||(LA21_75>='?' && LA21_75<='Z')||(LA21_75>='^' && LA21_75<='z')||(LA21_75>='~' && LA21_75<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 75;} - - else if ( (LA21_75=='*'||LA21_75==':'||LA21_75=='>'||LA21_75=='['||LA21_75==']'||(LA21_75>='{' && LA21_75<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} + else if ( (LA21_94=='#') ) {s = 60;} - else if ( ((LA21_75>='(' && LA21_75<=')')||LA21_75==',') && ((( isValue() )||( isHead() )))) {s = 77;} + else if ( (LA21_94=='\\') ) {s = 58;} - else if ( (LA21_75=='\n'||LA21_75=='\r'||(LA21_75>='\"' && LA21_75<='#')||LA21_75=='\\') && (( isHead() ))) {s = 23;} + else if ( (LA21_94=='\n'||LA21_94=='\r') && (( isHead() ))) {s = 23;} - else s = 73; + else if ( ((LA21_94>='\u0000' && LA21_94<='\t')||(LA21_94>='\u000B' && LA21_94<='\f')||(LA21_94>='\u000E' && LA21_94<='!')||(LA21_94>='$' && LA21_94<='[')||(LA21_94>=']' && LA21_94<='\uFFFF')) ) {s = 57;} - input.seek(index21_75); + input.seek(index21_94); if ( s>=0 ) return s; break; case 54 : - int LA21_96 = input.LA(1); + int LA21_57 = input.LA(1); - int index21_96 = input.index(); + int index21_57 = input.index(); input.rewind(); s = -1; - if ( (LA21_96=='\n'||LA21_96=='\r') && (( isHead() ))) {s = 23;} + if ( (LA21_57=='\n'||LA21_57=='\r') && (( isHead() ))) {s = 23;} - else if ( (LA21_96=='#') ) {s = 59;} + else if ( (LA21_57=='#') ) {s = 60;} - else if ( (LA21_96=='\"') ) {s = 61;} + else if ( (LA21_57=='\"') ) {s = 59;} - else if ( ((LA21_96>='\u0000' && LA21_96<='\t')||(LA21_96>='\u000B' && LA21_96<='\f')||(LA21_96>='\u000E' && LA21_96<='!')||(LA21_96>='$' && LA21_96<='[')||(LA21_96>=']' && LA21_96<='\uFFFF')) ) {s = 58;} + else if ( ((LA21_57>='\u0000' && LA21_57<='\t')||(LA21_57>='\u000B' && LA21_57<='\f')||(LA21_57>='\u000E' && LA21_57<='!')||(LA21_57>='$' && LA21_57<='[')||(LA21_57>=']' && LA21_57<='\uFFFF')) ) {s = 57;} - else if ( (LA21_96=='\\') ) {s = 60;} + else if ( (LA21_57=='\\') ) {s = 58;} - input.seek(index21_96); + input.seek(index21_57); if ( s>=0 ) return s; break; case 55 : - int LA21_69 = input.LA(1); + int LA21_65 = input.LA(1); - int index21_69 = input.index(); + int index21_65 = input.index(); input.rewind(); s = -1; - s = 102; + if ( (LA21_65=='\t'||LA21_65==' ') && ((( isValue() )||( isHead() )))) {s = 65;} + + else if ( ((LA21_65>='\u0000' && LA21_65<='\b')||(LA21_65>='\u000B' && LA21_65<='\f')||(LA21_65>='\u000E' && LA21_65<='\u001F')||LA21_65=='!'||(LA21_65>='$' && LA21_65<='[')||(LA21_65>=']' && LA21_65<='\uFFFF')) && (( isValue() ))) {s = 101;} + + else if ( (LA21_65=='\n'||LA21_65=='\r') && (( isHead() ))) {s = 66;} + + else s = 67; - input.seek(index21_69); + input.seek(index21_65); if ( s>=0 ) return s; break; case 56 : - int LA21_9 = input.LA(1); + int LA21_49 = input.LA(1); - int index21_9 = input.index(); + int index21_49 = input.index(); input.rewind(); s = -1; - if ( (LA21_9=='\t'||LA21_9==' ') ) {s = 35;} + if ( (LA21_49=='\n'||LA21_49=='\r'||(LA21_49>='\"' && LA21_49<='#')||LA21_49=='\\') && (( isHead() ))) {s = 23;} - else if ( ((LA21_9>='\u0000' && LA21_9<='\b')||(LA21_9>='\u000B' && LA21_9<='\f')||(LA21_9>='\u000E' && LA21_9<='\u001F')||(LA21_9>='!' && LA21_9<='\"')||LA21_9=='$'||(LA21_9>='&' && LA21_9<=',')||(LA21_9>='.' && LA21_9<='?')||(LA21_9>='A' && LA21_9<='\uFFFF')) && (( isHead() ))) {s = 23;} + else if ( (LA21_49=='\t'||LA21_49==' ') ) {s = 47;} + + else if ( ((LA21_49>='\u0000' && LA21_49<='\b')||(LA21_49>='\u000B' && LA21_49<='\f')||(LA21_49>='\u000E' && LA21_49<='\u001F')||LA21_49=='!'||(LA21_49>='$' && LA21_49<='\'')||LA21_49=='+'||(LA21_49>='-' && LA21_49<='9')||(LA21_49>=';' && LA21_49<='=')||(LA21_49>='?' && LA21_49<='Z')||(LA21_49>='^' && LA21_49<='z')||(LA21_49>='~' && LA21_49<='\uFFFF')) ) {s = 48;} - else if ( (LA21_9=='\n'||LA21_9=='\r') && (( isHead() ))) {s = 37;} + else if ( (LA21_49=='*'||LA21_49==':'||LA21_49=='>'||LA21_49=='['||LA21_49==']'||(LA21_49>='{' && LA21_49<='}')) ) {s = 49;} - else s = 32; + else if ( ((LA21_49>='(' && LA21_49<=')')||LA21_49==',') ) {s = 50;} + + else s = 61; - input.seek(index21_9); + input.seek(index21_49); if ( s>=0 ) return s; break; case 57 : - int LA21_92 = input.LA(1); + int LA21_76 = input.LA(1); - int index21_92 = input.index(); + int index21_76 = input.index(); input.rewind(); s = -1; - if ( (LA21_92=='\"') ) {s = 61;} + if ( (LA21_76=='\n'||LA21_76=='\r'||(LA21_76>='\"' && LA21_76<='#')||LA21_76=='\\') && (( isHead() ))) {s = 23;} - else if ( (LA21_92=='#') ) {s = 59;} + else if ( (LA21_76=='\t'||LA21_76==' ') && ((( isValue() )||( isHead() )))) {s = 74;} - else if ( (LA21_92=='\\') ) {s = 60;} + else if ( ((LA21_76>='\u0000' && LA21_76<='\b')||(LA21_76>='\u000B' && LA21_76<='\f')||(LA21_76>='\u000E' && LA21_76<='\u001F')||LA21_76=='!'||(LA21_76>='$' && LA21_76<='\'')||LA21_76=='+'||(LA21_76>='-' && LA21_76<='9')||(LA21_76>=';' && LA21_76<='=')||(LA21_76>='?' && LA21_76<='Z')||(LA21_76>='^' && LA21_76<='z')||(LA21_76>='~' && LA21_76<='\uFFFF')) && ((( isHead() )||( isValue() )))) {s = 75;} - else if ( (LA21_92=='\n'||LA21_92=='\r') && (( isHead() ))) {s = 23;} + else if ( (LA21_76=='*'||LA21_76==':'||LA21_76=='>'||LA21_76=='['||LA21_76==']'||(LA21_76>='{' && LA21_76<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} + + else if ( ((LA21_76>='(' && LA21_76<=')')||LA21_76==',') && ((( isHead() )||( isValue() )))) {s = 77;} - else if ( ((LA21_92>='\u0000' && LA21_92<='\t')||(LA21_92>='\u000B' && LA21_92<='\f')||(LA21_92>='\u000E' && LA21_92<='!')||(LA21_92>='$' && LA21_92<='[')||(LA21_92>=']' && LA21_92<='\uFFFF')) ) {s = 58;} + else s = 67; - input.seek(index21_92); + input.seek(index21_76); if ( s>=0 ) return s; break; case 58 : - int LA21_84 = input.LA(1); + int LA21_91 = input.LA(1); - int index21_84 = input.index(); + int index21_91 = input.index(); input.rewind(); s = -1; - if ( (LA21_84=='\t'||LA21_84==' ') ) {s = 84;} - - else if ( ((LA21_84>='\u0000' && LA21_84<='\b')||(LA21_84>='\u000B' && LA21_84<='\f')||(LA21_84>='\u000E' && LA21_84<='\u001F')||LA21_84=='!'||(LA21_84>='$' && LA21_84<='\'')||LA21_84=='+'||(LA21_84>='-' && LA21_84<='9')||(LA21_84>=';' && LA21_84<='=')||(LA21_84>='?' && LA21_84<='Z')||(LA21_84>='^' && LA21_84<='z')||(LA21_84>='~' && LA21_84<='\uFFFF')) ) {s = 85;} + if ( (LA21_91=='\n'||LA21_91=='\r') && (( isHead() ))) {s = 23;} - else if ( (LA21_84=='*'||LA21_84==':'||LA21_84=='>'||LA21_84=='['||LA21_84==']'||(LA21_84>='{' && LA21_84<='}')) ) {s = 86;} + else if ( (LA21_91=='#') ) {s = 60;} - else if ( ((LA21_84>='(' && LA21_84<=')')||LA21_84==',') ) {s = 87;} + else if ( (LA21_91=='\"') ) {s = 59;} - else if ( (LA21_84=='\n'||LA21_84=='\r'||(LA21_84>='\"' && LA21_84<='#')||LA21_84=='\\') && (( isHead() ))) {s = 23;} + else if ( ((LA21_91>='\u0000' && LA21_91<='\t')||(LA21_91>='\u000B' && LA21_91<='\f')||(LA21_91>='\u000E' && LA21_91<='!')||(LA21_91>='$' && LA21_91<='[')||(LA21_91>=']' && LA21_91<='\uFFFF')) ) {s = 57;} - else s = 82; + else if ( (LA21_91=='\\') ) {s = 58;} - input.seek(index21_84); + input.seek(index21_91); if ( s>=0 ) return s; break; case 59 : - int LA21_38 = input.LA(1); + int LA21_117 = input.LA(1); - int index21_38 = input.index(); + int index21_117 = input.index(); input.rewind(); s = -1; - if ( (( isHead() )) ) {s = 33;} + if ( ((LA21_117>='\u0000' && LA21_117<='/')||(LA21_117>=':' && LA21_117<='@')||(LA21_117>='G' && LA21_117<='`')||(LA21_117>='g' && LA21_117<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (true) ) {s = 72;} + else if ( ((LA21_117>='0' && LA21_117<='9')||(LA21_117>='A' && LA21_117<='F')||(LA21_117>='a' && LA21_117<='f')) ) {s = 119;} - input.seek(index21_38); + input.seek(index21_117); if ( s>=0 ) return s; break; case 60 : - int LA21_116 = input.LA(1); + int LA21_110 = input.LA(1); - int index21_116 = input.index(); + int index21_110 = input.index(); input.rewind(); s = -1; - if ( ((LA21_116>='\u0000' && LA21_116<='/')||(LA21_116>=':' && LA21_116<='@')||(LA21_116>='G' && LA21_116<='`')||(LA21_116>='g' && LA21_116<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( (LA21_110=='\"') ) {s = 98;} + + else if ( ((LA21_110>='\u0000' && LA21_110<='\t')||(LA21_110>='\u000B' && LA21_110<='\f')||(LA21_110>='\u000E' && LA21_110<='!')||(LA21_110>='#' && LA21_110<='[')||(LA21_110>=']' && LA21_110<='\uFFFF')) ) {s = 99;} - else if ( ((LA21_116>='0' && LA21_116<='9')||(LA21_116>='A' && LA21_116<='F')||(LA21_116>='a' && LA21_116<='f')) ) {s = 118;} + else if ( (LA21_110=='\\') ) {s = 100;} + + else if ( (LA21_110=='\n'||LA21_110=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_116); + input.seek(index21_110); if ( s>=0 ) return s; break; case 61 : - int LA21_97 = input.LA(1); + int LA21_6 = input.LA(1); - int index21_97 = input.index(); + int index21_6 = input.index(); input.rewind(); s = -1; - if ( (LA21_97=='\"') ) {s = 61;} + if ( (LA21_6=='>') && (( isHead() ))) {s = 30;} - else if ( (LA21_97=='#') ) {s = 59;} - - else if ( (LA21_97=='\\') ) {s = 60;} - - else if ( (LA21_97=='\n'||LA21_97=='\r') && (( isHead() ))) {s = 23;} + else if ( ((LA21_6>='\u0000' && LA21_6<='=')||(LA21_6>='?' && LA21_6<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( ((LA21_97>='\u0000' && LA21_97<='\t')||(LA21_97>='\u000B' && LA21_97<='\f')||(LA21_97>='\u000E' && LA21_97<='!')||(LA21_97>='$' && LA21_97<='[')||(LA21_97>=']' && LA21_97<='\uFFFF')) ) {s = 58;} + else s = 31; - input.seek(index21_97); + input.seek(index21_6); if ( s>=0 ) return s; break; case 62 : - int LA21_52 = input.LA(1); + int LA21_26 = input.LA(1); - int index21_52 = input.index(); + int index21_26 = input.index(); input.rewind(); s = -1; - if ( (!((( isValue() )))) ) {s = 83;} + if ( (!((( isHead() )))) ) {s = 64;} - else if ( (( isValue() )) ) {s = 62;} + else if ( (( isHead() )) ) {s = 34;} - input.seek(index21_52); + input.seek(index21_26); if ( s>=0 ) return s; break; case 63 : - int LA21_61 = input.LA(1); + int LA21_25 = input.LA(1); - int index21_61 = input.index(); + int index21_25 = input.index(); input.rewind(); s = -1; - if ( ((LA21_61>='\u0000' && LA21_61<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( (!((( isHead() )))) ) {s = 64;} - else s = 100; + else if ( (( isHead() )) ) {s = 34;} - input.seek(index21_61); + input.seek(index21_25); if ( s>=0 ) return s; break; case 64 : - int LA21_98 = input.LA(1); + int LA21_63 = input.LA(1); - int index21_98 = input.index(); + int index21_63 = input.index(); input.rewind(); s = -1; - if ( (LA21_98=='\"') ) {s = 61;} - - else if ( (LA21_98=='#') ) {s = 59;} - - else if ( (LA21_98=='\\') ) {s = 60;} - - else if ( (LA21_98=='\n'||LA21_98=='\r') && (( isHead() ))) {s = 23;} + if ( (!((( isHead() )))) ) {s = 64;} - else if ( ((LA21_98>='\u0000' && LA21_98<='\t')||(LA21_98>='\u000B' && LA21_98<='\f')||(LA21_98>='\u000E' && LA21_98<='!')||(LA21_98>='$' && LA21_98<='[')||(LA21_98>=']' && LA21_98<='\uFFFF')) ) {s = 58;} + else if ( (( isHead() )) ) {s = 34;} - input.seek(index21_98); + input.seek(index21_63); if ( s>=0 ) return s; break; case 65 : - int LA21_99 = input.LA(1); + int LA21_48 = input.LA(1); - int index21_99 = input.index(); + int index21_48 = input.index(); input.rewind(); s = -1; - if ( ((LA21_99>='0' && LA21_99<='9')||(LA21_99>='A' && LA21_99<='F')||(LA21_99>='a' && LA21_99<='f')) ) {s = 112;} + if ( (LA21_48=='\t'||LA21_48==' ') ) {s = 47;} + + else if ( ((LA21_48>='\u0000' && LA21_48<='\b')||(LA21_48>='\u000B' && LA21_48<='\f')||(LA21_48>='\u000E' && LA21_48<='\u001F')||LA21_48=='!'||(LA21_48>='$' && LA21_48<='\'')||LA21_48=='+'||(LA21_48>='-' && LA21_48<='9')||(LA21_48>=';' && LA21_48<='=')||(LA21_48>='?' && LA21_48<='Z')||(LA21_48>='^' && LA21_48<='z')||(LA21_48>='~' && LA21_48<='\uFFFF')) ) {s = 48;} + + else if ( (LA21_48=='*'||LA21_48==':'||LA21_48=='>'||LA21_48=='['||LA21_48==']'||(LA21_48>='{' && LA21_48<='}')) ) {s = 49;} - else if ( ((LA21_99>='\u0000' && LA21_99<='/')||(LA21_99>=':' && LA21_99<='@')||(LA21_99>='G' && LA21_99<='`')||(LA21_99>='g' && LA21_99<='\uFFFF')) && (( isHead() ))) {s = 23;} + else if ( ((LA21_48>='(' && LA21_48<=')')||LA21_48==',') ) {s = 50;} + + else if ( (LA21_48=='\n'||LA21_48=='\r'||(LA21_48>='\"' && LA21_48<='#')||LA21_48=='\\') && (( isHead() ))) {s = 23;} + + else s = 61; - input.seek(index21_99); + input.seek(index21_48); if ( s>=0 ) return s; break; case 66 : - int LA21_16 = input.LA(1); + int LA21_20 = input.LA(1); - int index21_16 = input.index(); + int index21_20 = input.index(); input.rewind(); s = -1; - if ( (LA21_16=='\t'||LA21_16==' ') ) {s = 47;} + if ( ((LA21_20>='\u0000' && LA21_20<='\t')||(LA21_20>='\u000B' && LA21_20<='\f')||(LA21_20>='\u000E' && LA21_20<='!')||(LA21_20>='$' && LA21_20<='[')||(LA21_20>=']' && LA21_20<='\uFFFF')) ) {s = 57;} - else if ( (LA21_16=='\n'||LA21_16=='\r'||(LA21_16>='\"' && LA21_16<='#')||LA21_16=='\\') && (( isHead() ))) {s = 23;} + else if ( (LA21_20=='\\') ) {s = 58;} - else if ( ((LA21_16>='\u0000' && LA21_16<='\b')||(LA21_16>='\u000B' && LA21_16<='\f')||(LA21_16>='\u000E' && LA21_16<='\u001F')||LA21_16=='!'||(LA21_16>='$' && LA21_16<='\'')||LA21_16=='+'||(LA21_16>='-' && LA21_16<='9')||(LA21_16>=';' && LA21_16<='=')||(LA21_16>='?' && LA21_16<='Z')||(LA21_16>='^' && LA21_16<='z')||(LA21_16>='~' && LA21_16<='\uFFFF')) ) {s = 49;} + else if ( (LA21_20=='\"') ) {s = 59;} - else if ( (LA21_16=='*'||LA21_16==':'||LA21_16=='>'||LA21_16=='['||LA21_16==']'||(LA21_16>='{' && LA21_16<='}')) ) {s = 50;} + else if ( (LA21_20=='#') ) {s = 60;} - else if ( ((LA21_16>='(' && LA21_16<=')')||LA21_16==',') ) {s = 51;} - - else s = 48; + else if ( (LA21_20=='\n'||LA21_20=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_16); + input.seek(index21_20); if ( s>=0 ) return s; break; case 67 : - int LA21_21 = input.LA(1); + int LA21_75 = input.LA(1); - int index21_21 = input.index(); + int index21_75 = input.index(); input.rewind(); s = -1; - if ( (LA21_21=='\t'||LA21_21==' ') ) {s = 47;} + if ( (LA21_75=='\t'||LA21_75==' ') && ((( isValue() )||( isHead() )))) {s = 74;} - else if ( (LA21_21=='\n'||LA21_21=='\r'||(LA21_21>='\"' && LA21_21<='#')||LA21_21=='\\') && (( isHead() ))) {s = 23;} + else if ( ((LA21_75>='\u0000' && LA21_75<='\b')||(LA21_75>='\u000B' && LA21_75<='\f')||(LA21_75>='\u000E' && LA21_75<='\u001F')||LA21_75=='!'||(LA21_75>='$' && LA21_75<='\'')||LA21_75=='+'||(LA21_75>='-' && LA21_75<='9')||(LA21_75>=';' && LA21_75<='=')||(LA21_75>='?' && LA21_75<='Z')||(LA21_75>='^' && LA21_75<='z')||(LA21_75>='~' && LA21_75<='\uFFFF')) && ((( isHead() )||( isValue() )))) {s = 75;} - else if ( ((LA21_21>='\u0000' && LA21_21<='\b')||(LA21_21>='\u000B' && LA21_21<='\f')||(LA21_21>='\u000E' && LA21_21<='\u001F')||LA21_21=='!'||(LA21_21>='$' && LA21_21<='\'')||LA21_21=='+'||(LA21_21>='-' && LA21_21<='9')||(LA21_21>=';' && LA21_21<='=')||(LA21_21>='?' && LA21_21<='Z')||(LA21_21>='^' && LA21_21<='z')||(LA21_21>='~' && LA21_21<='\uFFFF')) ) {s = 49;} + else if ( (LA21_75=='*'||LA21_75==':'||LA21_75=='>'||LA21_75=='['||LA21_75==']'||(LA21_75>='{' && LA21_75<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} - else if ( (LA21_21=='*'||LA21_21==':'||LA21_21=='>'||LA21_21=='['||LA21_21==']'||(LA21_21>='{' && LA21_21<='}')) ) {s = 50;} + else if ( ((LA21_75>='(' && LA21_75<=')')||LA21_75==',') && ((( isHead() )||( isValue() )))) {s = 77;} - else if ( ((LA21_21>='(' && LA21_21<=')')||LA21_21==',') ) {s = 51;} + else if ( (LA21_75=='\n'||LA21_75=='\r'||(LA21_75>='\"' && LA21_75<='#')||LA21_75=='\\') && (( isHead() ))) {s = 23;} - else s = 29; + else s = 67; - input.seek(index21_21); + input.seek(index21_75); if ( s>=0 ) return s; break; case 68 : - int LA21_57 = input.LA(1); + int LA21_121 = input.LA(1); - int index21_57 = input.index(); + int index21_121 = input.index(); input.rewind(); s = -1; - if ( (LA21_57=='\t'||LA21_57==' ') ) {s = 84;} - - else if ( ((LA21_57>='\u0000' && LA21_57<='\b')||(LA21_57>='\u000B' && LA21_57<='\f')||(LA21_57>='\u000E' && LA21_57<='\u001F')||LA21_57=='!'||(LA21_57>='$' && LA21_57<='\'')||LA21_57=='+'||(LA21_57>='-' && LA21_57<='9')||(LA21_57>=';' && LA21_57<='=')||(LA21_57>='?' && LA21_57<='Z')||(LA21_57>='^' && LA21_57<='z')||(LA21_57>='~' && LA21_57<='\uFFFF')) ) {s = 85;} + if ( (LA21_121=='\"') ) {s = 98;} - else if ( (LA21_57=='*'||LA21_57==':'||LA21_57=='>'||LA21_57=='['||LA21_57==']'||(LA21_57>='{' && LA21_57<='}')) ) {s = 86;} + else if ( ((LA21_121>='\u0000' && LA21_121<='\t')||(LA21_121>='\u000B' && LA21_121<='\f')||(LA21_121>='\u000E' && LA21_121<='!')||(LA21_121>='#' && LA21_121<='[')||(LA21_121>=']' && LA21_121<='\uFFFF')) ) {s = 99;} - else if ( ((LA21_57>='(' && LA21_57<=')')||LA21_57==',') ) {s = 87;} + else if ( (LA21_121=='\\') ) {s = 100;} - else if ( (LA21_57=='\n'||LA21_57=='\r'||(LA21_57>='\"' && LA21_57<='#')||LA21_57=='\\') && (( isHead() ))) {s = 23;} - - else s = 82; + else if ( (LA21_121=='\n'||LA21_121=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_57); + input.seek(index21_121); if ( s>=0 ) return s; break; case 69 : - int LA21_95 = input.LA(1); + int LA21_21 = input.LA(1); - int index21_95 = input.index(); + int index21_21 = input.index(); input.rewind(); s = -1; - if ( (LA21_95=='\"') ) {s = 61;} + if ( (LA21_21=='\t'||LA21_21==' ') ) {s = 47;} - else if ( (LA21_95=='#') ) {s = 59;} + else if ( ((LA21_21>='\u0000' && LA21_21<='\b')||(LA21_21>='\u000B' && LA21_21<='\f')||(LA21_21>='\u000E' && LA21_21<='\u001F')||LA21_21=='!'||(LA21_21>='$' && LA21_21<='\'')||LA21_21=='+'||(LA21_21>='-' && LA21_21<='9')||(LA21_21>=';' && LA21_21<='=')||(LA21_21>='?' && LA21_21<='Z')||(LA21_21>='^' && LA21_21<='z')||(LA21_21>='~' && LA21_21<='\uFFFF')) ) {s = 48;} - else if ( (LA21_95=='\\') ) {s = 60;} + else if ( (LA21_21=='*'||LA21_21==':'||LA21_21=='>'||LA21_21=='['||LA21_21==']'||(LA21_21>='{' && LA21_21<='}')) ) {s = 49;} - else if ( (LA21_95=='\n'||LA21_95=='\r') && (( isHead() ))) {s = 23;} + else if ( ((LA21_21>='(' && LA21_21<=')')||LA21_21==',') ) {s = 50;} + + else if ( (LA21_21=='\n'||LA21_21=='\r'||(LA21_21>='\"' && LA21_21<='#')||LA21_21=='\\') && (( isHead() ))) {s = 23;} - else if ( ((LA21_95>='\u0000' && LA21_95<='\t')||(LA21_95>='\u000B' && LA21_95<='\f')||(LA21_95>='\u000E' && LA21_95<='!')||(LA21_95>='$' && LA21_95<='[')||(LA21_95>=']' && LA21_95<='\uFFFF')) ) {s = 58;} + else s = 61; - input.seek(index21_95); + input.seek(index21_21); if ( s>=0 ) return s; break; case 70 : - int LA21_6 = input.LA(1); + int LA21_108 = input.LA(1); - int index21_6 = input.index(); + int index21_108 = input.index(); input.rewind(); s = -1; - if ( (LA21_6=='>') && (( isHead() ))) {s = 30;} + if ( (LA21_108=='\"') ) {s = 98;} - else if ( ((LA21_6>='\u0000' && LA21_6<='=')||(LA21_6>='?' && LA21_6<='\uFFFF')) && (( isHead() ))) {s = 23;} + else if ( ((LA21_108>='\u0000' && LA21_108<='\t')||(LA21_108>='\u000B' && LA21_108<='\f')||(LA21_108>='\u000E' && LA21_108<='!')||(LA21_108>='#' && LA21_108<='[')||(LA21_108>=']' && LA21_108<='\uFFFF')) ) {s = 99;} - else s = 31; + else if ( (LA21_108=='\\') ) {s = 100;} + + else if ( (LA21_108=='\n'||LA21_108=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_6); + input.seek(index21_108); if ( s>=0 ) return s; break; case 71 : - int LA21_19 = input.LA(1); + int LA21_92 = input.LA(1); - int index21_19 = input.index(); + int index21_92 = input.index(); input.rewind(); s = -1; - if ( ((LA21_19>='\u0000' && LA21_19<='\b')||(LA21_19>='\u000B' && LA21_19<='\f')||(LA21_19>='\u000E' && LA21_19<='\u001F')||LA21_19=='!'||(LA21_19>='$' && LA21_19<='\'')||LA21_19=='+'||(LA21_19>='-' && LA21_19<='9')||(LA21_19>=';' && LA21_19<='=')||(LA21_19>='?' && LA21_19<='Z')||(LA21_19>='^' && LA21_19<='z')||(LA21_19>='~' && LA21_19<='\uFFFF')) ) {s = 54;} - - else if ( (LA21_19=='\n'||LA21_19=='\r'||LA21_19=='\"'||LA21_19=='\\') && (( isHead() ))) {s = 23;} - - else if ( (LA21_19=='#') && ((( isValue() )||( isHead() )))) {s = 44;} + if ( (LA21_92=='\"') ) {s = 59;} - else if ( (LA21_19=='\t'||LA21_19==' ') ) {s = 47;} + else if ( (LA21_92=='#') ) {s = 60;} - else if ( (LA21_19=='*'||LA21_19==':'||LA21_19=='>'||LA21_19=='['||LA21_19==']'||(LA21_19>='{' && LA21_19<='}')) ) {s = 56;} + else if ( (LA21_92=='\\') ) {s = 58;} - else if ( ((LA21_19>='(' && LA21_19<=')')||LA21_19==',') ) {s = 57;} + else if ( (LA21_92=='\n'||LA21_92=='\r') && (( isHead() ))) {s = 23;} - else s = 55; + else if ( ((LA21_92>='\u0000' && LA21_92<='\t')||(LA21_92>='\u000B' && LA21_92<='\f')||(LA21_92>='\u000E' && LA21_92<='!')||(LA21_92>='$' && LA21_92<='[')||(LA21_92>=']' && LA21_92<='\uFFFF')) ) {s = 57;} - input.seek(index21_19); + input.seek(index21_92); if ( s>=0 ) return s; break; case 72 : - int LA21_44 = input.LA(1); + int LA21_42 = input.LA(1); - int index21_44 = input.index(); + int index21_42 = input.index(); input.rewind(); s = -1; - if ( (LA21_44=='\t'||LA21_44==' ') && ((( isHead() )||( isValue() )))) {s = 78;} + if ( (LA21_42=='\n'||LA21_42=='\r'||(LA21_42>='\"' && LA21_42<='#')||LA21_42=='\\') && (( isHead() ))) {s = 23;} - else if ( (LA21_44=='\n'||LA21_44=='\r'||(LA21_44>='\"' && LA21_44<='#')||LA21_44=='\\') && (( isHead() ))) {s = 23;} + else if ( (LA21_42=='\t'||LA21_42==' ') && ((( isValue() )||( isHead() )))) {s = 74;} - else if ( ((LA21_44>='\u0000' && LA21_44<='\b')||(LA21_44>='\u000B' && LA21_44<='\f')||(LA21_44>='\u000E' && LA21_44<='\u001F')||LA21_44=='!'||(LA21_44>='$' && LA21_44<='\'')||LA21_44=='+'||(LA21_44>='-' && LA21_44<='9')||(LA21_44>=';' && LA21_44<='=')||(LA21_44>='?' && LA21_44<='Z')||(LA21_44>='^' && LA21_44<='z')||(LA21_44>='~' && LA21_44<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} + else if ( ((LA21_42>='\u0000' && LA21_42<='\b')||(LA21_42>='\u000B' && LA21_42<='\f')||(LA21_42>='\u000E' && LA21_42<='\u001F')||LA21_42=='!'||(LA21_42>='$' && LA21_42<='\'')||LA21_42=='+'||(LA21_42>='-' && LA21_42<='9')||(LA21_42>=';' && LA21_42<='=')||(LA21_42>='?' && LA21_42<='Z')||(LA21_42>='^' && LA21_42<='z')||(LA21_42>='~' && LA21_42<='\uFFFF')) && ((( isHead() )||( isValue() )))) {s = 75;} - else if ( (LA21_44=='*'||LA21_44==':'||LA21_44=='>'||LA21_44=='['||LA21_44==']'||(LA21_44>='{' && LA21_44<='}')) && ((( isHead() )||( isValue() )))) {s = 80;} + else if ( (LA21_42=='*'||LA21_42==':'||LA21_42=='>'||LA21_42=='['||LA21_42==']'||(LA21_42>='{' && LA21_42<='}')) && ((( isValue() )||( isHead() )))) {s = 76;} - else if ( ((LA21_44>='(' && LA21_44<=')')||LA21_44==',') && ((( isValue() )||( isHead() )))) {s = 81;} + else if ( ((LA21_42>='(' && LA21_42<=')')||LA21_42==',') && ((( isHead() )||( isValue() )))) {s = 77;} - else s = 73; + else s = 67; - input.seek(index21_44); + input.seek(index21_42); if ( s>=0 ) return s; break; case 73 : - int LA21_68 = input.LA(1); + int LA21_27 = input.LA(1); - int index21_68 = input.index(); + int index21_27 = input.index(); input.rewind(); s = -1; - if ( (LA21_68=='\n') && (( isHead() ))) {s = 101;} + if ( (LA21_27=='\t'||LA21_27==' ') && ((( isValue() )||( isHead() )))) {s = 65;} - else s = 102; + else if ( (LA21_27=='\n'||LA21_27=='\r') && (( isHead() ))) {s = 66;} + + else s = 67; - input.seek(index21_68); + input.seek(index21_27); if ( s>=0 ) return s; break; case 74 : - int LA21_65 = input.LA(1); + int LA21_13 = input.LA(1); - int index21_65 = input.index(); + int index21_13 = input.index(); input.rewind(); s = -1; - if ( (LA21_65=='\t'||LA21_65==' ') ) {s = 65;} + if ( ((LA21_13>='\u0000' && LA21_13<='\b')||(LA21_13>='\u000B' && LA21_13<='\f')||(LA21_13>='\u000E' && LA21_13<='\u001F')||LA21_13=='!'||(LA21_13>='$' && LA21_13<='[')||(LA21_13>=']' && LA21_13<='\uFFFF')) && ((( isHead() )||( isValue() )))) {s = 42;} - else if ( (LA21_65=='\n'||LA21_65=='\r') && (( isHead() ))) {s = 66;} + else if ( ((LA21_13>='\t' && LA21_13<='\n')||LA21_13=='\r'||LA21_13==' '||LA21_13=='\"'||LA21_13=='\\') && (( isHead() ))) {s = 23;} - else s = 82; + else if ( (LA21_13=='#') && ((( isValue() )||( isHead() )))) {s = 43;} + + else s = 41; - input.seek(index21_65); + input.seek(index21_13); if ( s>=0 ) return s; break; case 75 : - int LA21_35 = input.LA(1); + int LA21_12 = input.LA(1); - int index21_35 = input.index(); + int index21_12 = input.index(); input.rewind(); s = -1; - if ( (LA21_35=='\t'||LA21_35==' ') ) {s = 35;} - - else if ( ((LA21_35>='\u0000' && LA21_35<='\b')||(LA21_35>='\u000B' && LA21_35<='\f')||(LA21_35>='\u000E' && LA21_35<='\u001F')||(LA21_35>='!' && LA21_35<='\"')||LA21_35=='$'||(LA21_35>='&' && LA21_35<=',')||(LA21_35>='.' && LA21_35<='?')||(LA21_35>='A' && LA21_35<='\uFFFF')) && (( isHead() ))) {s = 23;} - - else if ( (LA21_35=='\n'||LA21_35=='\r') && (( isHead() ))) {s = 37;} + if ( ((LA21_12>='\u0000' && LA21_12<='\uFFFF')) && (( isHead() ))) {s = 23;} - else s = 70; + else s = 40; - input.seek(index21_35); + input.seek(index21_12); if ( s>=0 ) return s; break; case 76 : - int LA21_81 = input.LA(1); + int LA21_15 = input.LA(1); - int index21_81 = input.index(); + int index21_15 = input.index(); input.rewind(); s = -1; - if ( (LA21_81=='\n'||LA21_81=='\r'||(LA21_81>='\"' && LA21_81<='#')||LA21_81=='\\') && (( isHead() ))) {s = 23;} - - else if ( (LA21_81=='\t'||LA21_81==' ') && ((( isHead() )||( isValue() )))) {s = 78;} - - else if ( ((LA21_81>='\u0000' && LA21_81<='\b')||(LA21_81>='\u000B' && LA21_81<='\f')||(LA21_81>='\u000E' && LA21_81<='\u001F')||LA21_81=='!'||(LA21_81>='$' && LA21_81<='\'')||LA21_81=='+'||(LA21_81>='-' && LA21_81<='9')||(LA21_81>=';' && LA21_81<='=')||(LA21_81>='?' && LA21_81<='Z')||(LA21_81>='^' && LA21_81<='z')||(LA21_81>='~' && LA21_81<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} - - else if ( (LA21_81=='*'||LA21_81==':'||LA21_81=='>'||LA21_81=='['||LA21_81==']'||(LA21_81>='{' && LA21_81<='}')) && ((( isHead() )||( isValue() )))) {s = 80;} - - else if ( ((LA21_81>='(' && LA21_81<=')')||LA21_81==',') && ((( isValue() )||( isHead() )))) {s = 81;} + if ( ((LA21_15>='\u0000' && LA21_15<='\uFFFF')) && (( isHead() ))) {s = 23;} - else s = 73; + else s = 45; - input.seek(index21_81); + input.seek(index21_15); if ( s>=0 ) return s; break; case 77 : - int LA21_90 = input.LA(1); + int LA21_70 = input.LA(1); - int index21_90 = input.index(); + int index21_70 = input.index(); input.rewind(); s = -1; - if ( ((LA21_90>='\u0000' && LA21_90<='!')||(LA21_90>='#' && LA21_90<='.')||(LA21_90>='0' && LA21_90<='[')||(LA21_90>=']' && LA21_90<='a')||(LA21_90>='c' && LA21_90<='e')||(LA21_90>='g' && LA21_90<='m')||(LA21_90>='o' && LA21_90<='q')||LA21_90=='s'||(LA21_90>='v' && LA21_90<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( (LA21_70=='\r') && (( isHead() ))) {s = 68;} - else if ( (LA21_90=='\"') ) {s = 103;} + else if ( (LA21_70=='\n') && (( isHead() ))) {s = 69;} - else if ( (LA21_90=='\\') ) {s = 104;} + else if ( ((LA21_70>='\u0000' && LA21_70<='\b')||(LA21_70>='\u000B' && LA21_70<='\f')||(LA21_70>='\u000E' && LA21_70<='\u001F')||(LA21_70>='!' && LA21_70<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( (LA21_90=='/') ) {s = 105;} - - else if ( (LA21_90=='b') ) {s = 106;} - - else if ( (LA21_90=='f') ) {s = 107;} - - else if ( (LA21_90=='n') ) {s = 108;} - - else if ( (LA21_90=='r') ) {s = 109;} - - else if ( (LA21_90=='t') ) {s = 110;} - - else if ( (LA21_90=='u') ) {s = 111;} + else if ( (LA21_70=='\t'||LA21_70==' ') && (( isHead() ))) {s = 70;} - input.seek(index21_90); + input.seek(index21_70); if ( s>=0 ) return s; break; case 78 : - int LA21_114 = input.LA(1); + int LA21_93 = input.LA(1); - int index21_114 = input.index(); + int index21_93 = input.index(); input.rewind(); s = -1; - if ( ((LA21_114>='0' && LA21_114<='9')||(LA21_114>='A' && LA21_114<='F')||(LA21_114>='a' && LA21_114<='f')) ) {s = 116;} + if ( (LA21_93=='\n'||LA21_93=='\r') && (( isHead() ))) {s = 23;} - else if ( ((LA21_114>='\u0000' && LA21_114<='/')||(LA21_114>=':' && LA21_114<='@')||(LA21_114>='G' && LA21_114<='`')||(LA21_114>='g' && LA21_114<='\uFFFF')) && (( isHead() ))) {s = 23;} + else if ( (LA21_93=='#') ) {s = 60;} + + else if ( (LA21_93=='\"') ) {s = 59;} + + else if ( ((LA21_93>='\u0000' && LA21_93<='\t')||(LA21_93>='\u000B' && LA21_93<='\f')||(LA21_93>='\u000E' && LA21_93<='!')||(LA21_93>='$' && LA21_93<='[')||(LA21_93>=']' && LA21_93<='\uFFFF')) ) {s = 57;} + + else if ( (LA21_93=='\\') ) {s = 58;} - input.seek(index21_114); + input.seek(index21_93); if ( s>=0 ) return s; break; case 79 : - int LA21_86 = input.LA(1); + int LA21_113 = input.LA(1); - int index21_86 = input.index(); + int index21_113 = input.index(); input.rewind(); s = -1; - if ( (LA21_86=='\t'||LA21_86==' ') ) {s = 84;} + if ( ((LA21_113>='0' && LA21_113<='9')||(LA21_113>='A' && LA21_113<='F')||(LA21_113>='a' && LA21_113<='f')) ) {s = 116;} - else if ( ((LA21_86>='\u0000' && LA21_86<='\b')||(LA21_86>='\u000B' && LA21_86<='\f')||(LA21_86>='\u000E' && LA21_86<='\u001F')||LA21_86=='!'||(LA21_86>='$' && LA21_86<='\'')||LA21_86=='+'||(LA21_86>='-' && LA21_86<='9')||(LA21_86>=';' && LA21_86<='=')||(LA21_86>='?' && LA21_86<='Z')||(LA21_86>='^' && LA21_86<='z')||(LA21_86>='~' && LA21_86<='\uFFFF')) ) {s = 85;} - - else if ( (LA21_86=='*'||LA21_86==':'||LA21_86=='>'||LA21_86=='['||LA21_86==']'||(LA21_86>='{' && LA21_86<='}')) ) {s = 86;} - - else if ( ((LA21_86>='(' && LA21_86<=')')||LA21_86==',') ) {s = 87;} - - else if ( (LA21_86=='\n'||LA21_86=='\r'||(LA21_86>='\"' && LA21_86<='#')||LA21_86=='\\') && (( isHead() ))) {s = 23;} - - else s = 82; + else if ( ((LA21_113>='\u0000' && LA21_113<='/')||(LA21_113>=':' && LA21_113<='@')||(LA21_113>='G' && LA21_113<='`')||(LA21_113>='g' && LA21_113<='\uFFFF')) && (( isHead() ))) {s = 23;} - input.seek(index21_86); + input.seek(index21_113); if ( s>=0 ) return s; break; case 80 : - int LA21_79 = input.LA(1); + int LA21_104 = input.LA(1); - int index21_79 = input.index(); + int index21_104 = input.index(); input.rewind(); s = -1; - if ( (LA21_79=='\n'||LA21_79=='\r'||(LA21_79>='\"' && LA21_79<='#')||LA21_79=='\\') && (( isHead() ))) {s = 23;} + if ( ((LA21_104>='0' && LA21_104<='9')||(LA21_104>='A' && LA21_104<='F')||(LA21_104>='a' && LA21_104<='f')) ) {s = 115;} - else if ( (LA21_79=='\t'||LA21_79==' ') && ((( isHead() )||( isValue() )))) {s = 78;} - - else if ( ((LA21_79>='\u0000' && LA21_79<='\b')||(LA21_79>='\u000B' && LA21_79<='\f')||(LA21_79>='\u000E' && LA21_79<='\u001F')||LA21_79=='!'||(LA21_79>='$' && LA21_79<='\'')||LA21_79=='+'||(LA21_79>='-' && LA21_79<='9')||(LA21_79>=';' && LA21_79<='=')||(LA21_79>='?' && LA21_79<='Z')||(LA21_79>='^' && LA21_79<='z')||(LA21_79>='~' && LA21_79<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} - - else if ( (LA21_79=='*'||LA21_79==':'||LA21_79=='>'||LA21_79=='['||LA21_79==']'||(LA21_79>='{' && LA21_79<='}')) && ((( isHead() )||( isValue() )))) {s = 80;} - - else if ( ((LA21_79>='(' && LA21_79<=')')||LA21_79==',') && ((( isValue() )||( isHead() )))) {s = 81;} - - else s = 73; + else if ( ((LA21_104>='\u0000' && LA21_104<='/')||(LA21_104>=':' && LA21_104<='@')||(LA21_104>='G' && LA21_104<='`')||(LA21_104>='g' && LA21_104<='\uFFFF')) && (( isHead() ))) {s = 23;} - input.seek(index21_79); + input.seek(index21_104); if ( s>=0 ) return s; break; case 81 : - int LA21_94 = input.LA(1); + int LA21_22 = input.LA(1); - int index21_94 = input.index(); + int index21_22 = input.index(); input.rewind(); s = -1; - if ( (LA21_94=='\"') ) {s = 61;} - - else if ( (LA21_94=='#') ) {s = 59;} - - else if ( (LA21_94=='\\') ) {s = 60;} - - else if ( (LA21_94=='\n'||LA21_94=='\r') && (( isHead() ))) {s = 23;} + if ( ((LA21_22>='\u0000' && LA21_22<='\uFFFF')) && (( isHead() ))) {s = 23;} - else if ( ((LA21_94>='\u0000' && LA21_94<='\t')||(LA21_94>='\u000B' && LA21_94<='\f')||(LA21_94>='\u000E' && LA21_94<='!')||(LA21_94>='$' && LA21_94<='[')||(LA21_94>=']' && LA21_94<='\uFFFF')) ) {s = 58;} + else s = 62; - input.seek(index21_94); + input.seek(index21_22); if ( s>=0 ) return s; break; case 82 : - int LA21_0 = input.LA(1); + int LA21_85 = input.LA(1); - int index21_0 = input.index(); + int index21_85 = input.index(); input.rewind(); s = -1; - if ( (LA21_0=='#') ) {s = 1;} - - else if ( (LA21_0=='%') ) {s = 2;} - - else if ( (LA21_0=='\r') ) {s = 3;} - - else if ( (LA21_0=='\n') ) {s = 4;} - - else if ( (LA21_0=='-') ) {s = 5;} - - else if ( (LA21_0=='>') ) {s = 6;} - - else if ( (LA21_0==' ') ) {s = 7;} - - else if ( (LA21_0=='@') ) {s = 8;} - - else if ( (LA21_0=='\t') ) {s = 9;} - - else if ( (LA21_0=='(') ) {s = 10;} - - else if ( (LA21_0==')') ) {s = 11;} - - else if ( (LA21_0==',') ) {s = 12;} - - else if ( (LA21_0==':') ) {s = 13;} - - else if ( (LA21_0=='|') ) {s = 14;} - - else if ( (LA21_0=='*') ) {s = 15;} - - else if ( (LA21_0=='+') ) {s = 16;} - - else if ( (LA21_0=='[') ) {s = 17;} - - else if ( (LA21_0==']') ) {s = 18;} + if ( (LA21_85=='\t'||LA21_85==' ') ) {s = 84;} - else if ( (LA21_0=='?') ) {s = 19;} + else if ( ((LA21_85>='\u0000' && LA21_85<='\b')||(LA21_85>='\u000B' && LA21_85<='\f')||(LA21_85>='\u000E' && LA21_85<='\u001F')||LA21_85=='!'||(LA21_85>='$' && LA21_85<='\'')||LA21_85=='+'||(LA21_85>='-' && LA21_85<='9')||(LA21_85>=';' && LA21_85<='=')||(LA21_85>='?' && LA21_85<='Z')||(LA21_85>='^' && LA21_85<='z')||(LA21_85>='~' && LA21_85<='\uFFFF')) ) {s = 85;} - else if ( (LA21_0=='\"') ) {s = 20;} + else if ( (LA21_85=='*'||LA21_85==':'||LA21_85=='>'||LA21_85=='['||LA21_85==']'||(LA21_85>='{' && LA21_85<='}')) ) {s = 86;} - else if ( ((LA21_0>='\u0000' && LA21_0<='\b')||(LA21_0>='\u000B' && LA21_0<='\f')||(LA21_0>='\u000E' && LA21_0<='\u001F')||LA21_0=='!'||LA21_0=='$'||LA21_0=='&'||(LA21_0>='.' && LA21_0<='9')||(LA21_0>=';' && LA21_0<='=')||(LA21_0>='A' && LA21_0<='Z')||(LA21_0>='^' && LA21_0<='z')||(LA21_0>='~' && LA21_0<='\uFFFF')) ) {s = 21;} + else if ( ((LA21_85>='(' && LA21_85<=')')||LA21_85==',') ) {s = 87;} - else if ( (LA21_0=='{') && ((( isValue() )||( isHead() )))) {s = 22;} + else if ( (LA21_85=='\n'||LA21_85=='\r'||(LA21_85>='\"' && LA21_85<='#')||LA21_85=='\\') && (( isHead() ))) {s = 23;} - else if ( (LA21_0=='\''||LA21_0=='\\'||LA21_0=='}') && (( isHead() ))) {s = 23;} + else s = 83; - input.seek(index21_0); + input.seek(index21_85); if ( s>=0 ) return s; break; case 83 : - int LA21_26 = input.LA(1); + int LA21_90 = input.LA(1); - int index21_26 = input.index(); + int index21_90 = input.index(); input.rewind(); s = -1; - if ( (!((( isHead() )))) ) {s = 64;} + if ( (LA21_90=='\n'||LA21_90=='\r') && (( isHead() ))) {s = 23;} + + else if ( (LA21_90=='#') ) {s = 60;} + + else if ( (LA21_90=='\"') ) {s = 59;} + + else if ( ((LA21_90>='\u0000' && LA21_90<='\t')||(LA21_90>='\u000B' && LA21_90<='\f')||(LA21_90>='\u000E' && LA21_90<='!')||(LA21_90>='$' && LA21_90<='[')||(LA21_90>=']' && LA21_90<='\uFFFF')) ) {s = 57;} - else if ( (( isHead() )) ) {s = 37;} + else if ( (LA21_90=='\\') ) {s = 58;} - input.seek(index21_26); + input.seek(index21_90); if ( s>=0 ) return s; break; case 84 : - int LA21_25 = input.LA(1); + int LA21_80 = input.LA(1); - int index21_25 = input.index(); + int index21_80 = input.index(); input.rewind(); s = -1; - if ( (!((( isHead() )))) ) {s = 64;} + if ( (LA21_80=='\t'||LA21_80==' ') && ((( isHead() )||( isValue() )))) {s = 78;} + + else if ( ((LA21_80>='\u0000' && LA21_80<='\b')||(LA21_80>='\u000B' && LA21_80<='\f')||(LA21_80>='\u000E' && LA21_80<='\u001F')||LA21_80=='!'||(LA21_80>='$' && LA21_80<='\'')||LA21_80=='+'||(LA21_80>='-' && LA21_80<='9')||(LA21_80>=';' && LA21_80<='=')||(LA21_80>='?' && LA21_80<='Z')||(LA21_80>='^' && LA21_80<='z')||(LA21_80>='~' && LA21_80<='\uFFFF')) && ((( isValue() )||( isHead() )))) {s = 79;} + + else if ( (LA21_80=='*'||LA21_80==':'||LA21_80=='>'||LA21_80=='['||LA21_80==']'||(LA21_80>='{' && LA21_80<='}')) && ((( isHead() )||( isValue() )))) {s = 80;} + + else if ( ((LA21_80>='(' && LA21_80<=')')||LA21_80==',') && ((( isValue() )||( isHead() )))) {s = 81;} - else if ( (( isHead() )) ) {s = 37;} + else if ( (LA21_80=='\n'||LA21_80=='\r'||(LA21_80>='\"' && LA21_80<='#')||LA21_80=='\\') && (( isHead() ))) {s = 23;} + + else s = 67; - input.seek(index21_25); + input.seek(index21_80); if ( s>=0 ) return s; break; case 85 : - int LA21_63 = input.LA(1); + int LA21_109 = input.LA(1); - int index21_63 = input.index(); + int index21_109 = input.index(); input.rewind(); s = -1; - if ( (!((( isHead() )))) ) {s = 64;} + if ( (LA21_109=='\"') ) {s = 98;} + + else if ( ((LA21_109>='\u0000' && LA21_109<='\t')||(LA21_109>='\u000B' && LA21_109<='\f')||(LA21_109>='\u000E' && LA21_109<='!')||(LA21_109>='#' && LA21_109<='[')||(LA21_109>=']' && LA21_109<='\uFFFF')) ) {s = 99;} - else if ( (( isHead() )) ) {s = 37;} + else if ( (LA21_109=='\\') ) {s = 100;} + + else if ( (LA21_109=='\n'||LA21_109=='\r') && (( isHead() ))) {s = 23;} - input.seek(index21_63); + input.seek(index21_109); if ( s>=0 ) return s; break; case 86 : - int LA21_88 = input.LA(1); + int LA21_55 = input.LA(1); - int index21_88 = input.index(); + int index21_55 = input.index(); input.rewind(); s = -1; - if ( ((LA21_88>='\u0000' && LA21_88<='\uFFFF')) && (( isHead() ))) {s = 23;} + if ( (LA21_55=='\n'||LA21_55=='\r'||(LA21_55>='\"' && LA21_55<='#')||LA21_55=='\\') && (( isHead() ))) {s = 23;} - else s = 100; + else if ( (LA21_55=='\t'||LA21_55==' ') ) {s = 84;} - - input.seek(index21_88); - if ( s>=0 ) return s; - break; - case 87 : - int LA21_117 = input.LA(1); + else if ( ((LA21_55>='\u0000' && LA21_55<='\b')||(LA21_55>='\u000B' && LA21_55<='\f')||(LA21_55>='\u000E' && LA21_55<='\u001F')||LA21_55=='!'||(LA21_55>='$' && LA21_55<='\'')||LA21_55=='+'||(LA21_55>='-' && LA21_55<='9')||(LA21_55>=';' && LA21_55<='=')||(LA21_55>='?' && LA21_55<='Z')||(LA21_55>='^' && LA21_55<='z')||(LA21_55>='~' && LA21_55<='\uFFFF')) ) {s = 85;} - - int index21_117 = input.index(); - input.rewind(); - s = -1; - if ( ((LA21_117>='\u0000' && LA21_117<='/')||(LA21_117>=':' && LA21_117<='@')||(LA21_117>='G' && LA21_117<='`')||(LA21_117>='g' && LA21_117<='\uFFFF')) && (( isHead() ))) {s = 23;} + else if ( (LA21_55=='*'||LA21_55==':'||LA21_55=='>'||LA21_55=='['||LA21_55==']'||(LA21_55>='{' && LA21_55<='}')) ) {s = 86;} - else if ( ((LA21_117>='0' && LA21_117<='9')||(LA21_117>='A' && LA21_117<='F')||(LA21_117>='a' && LA21_117<='f')) ) {s = 119;} + else if ( ((LA21_55>='(' && LA21_55<=')')||LA21_55==',') ) {s = 87;} + + else s = 83; - input.seek(index21_117); + input.seek(index21_55); if ( s>=0 ) return s; break; - case 88 : - int LA21_89 = input.LA(1); + case 87 : + int LA21_33 = input.LA(1); - int index21_89 = input.index(); + int index21_33 = input.index(); input.rewind(); s = -1; - if ( (LA21_89=='\n'||LA21_89=='\r') && (( isHead() ))) {s = 23;} + if ( (( !isHead() )) ) {s = 71;} - else if ( (LA21_89=='\"') ) {s = 88;} - - else if ( ((LA21_89>='\u0000' && LA21_89<='\t')||(LA21_89>='\u000B' && LA21_89<='\f')||(LA21_89>='\u000E' && LA21_89<='!')||(LA21_89>='#' && LA21_89<='[')||(LA21_89>=']' && LA21_89<='\uFFFF')) ) {s = 89;} - - else if ( (LA21_89=='\\') ) {s = 90;} + else if ( (true) ) {s = 72;} - input.seek(index21_89); + input.seek(index21_33); if ( s>=0 ) return s; break; } diff --git a/src/main/java/org/xerial/silk/impl/SilkParser.java b/src/main/java/org/xerial/silk/impl/SilkParser.java index 7160db7..99c99bc 100644 --- a/src/main/java/org/xerial/silk/impl/SilkParser.java +++ b/src/main/java/org/xerial/silk/impl/SilkParser.java @@ -1,4 +1,4 @@ -// $ANTLR 3.1.1 F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g 2009-04-21 16:35:49 +// $ANTLR 3.1.1 c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g 2009-04-22 10:07:56 /*-------------------------------------------------------------------------- * Copyright 2009 Taro L. Saito @@ -35,11 +35,11 @@ import org.antlr.runtime.tree.*; public class SilkParser extends Parser { public static final String[] tokenNames = new String[] { - "", "", "", "", "Silk", "SilkNode", "SilkLine", "Name", "Value", "Occurrence", "DataType", "Function", "Argument", "KeyValuePair", "Key", "LineBreak", "LineComment", "Preamble", "LineBreakChar", "WhiteSpace", "MultiLineSeparator", "MultiLineEntrySeparator", "NodeIndent", "FunctionIndent", "BlankLine", "DataLineBody", "DataLine", "LParen", "RParen", "Comma", "Colon", "Seq", "TabSeq", "Star", "At", "Plus", "LBracket", "RBracket", "Question", "Digit", "Letter", "HexDigit", "UnicodeChar", "EscapeSequence", "StringChar", "NonSpaceChar", "StringChar_s", "String", "Indicator", "PlainFirst", "ScopeIndicator", "FlowIndicator", "PlainUnsafeChar", "PlainSafeKey", "PlainSafeIn", "PlainSafeOut", "PlainSafe", "PlainOneLine", "JSON", "Separation" + "", "", "", "", "Silk", "SilkNode", "SilkLine", "Name", "Value", "Occurrence", "DataType", "Function", "Argument", "KeyValuePair", "Key", "LineBreak", "LineComment", "Preamble", "LineBreakChar", "WhiteSpace", "MultiLineSeparator", "MultiLineEntrySeparator", "NodeIndent", "FunctionIndent", "BlankLine", "DataLineBody", "DataLine", "LParen", "RParen", "Comma", "Colon", "Seq", "TabSeq", "Star", "At", "Plus", "LBracket", "RBracket", "Question", "Digit", "Letter", "HexDigit", "UnicodeChar", "EscapeSequence", "StringChar", "NonSpaceChar", "StringChar_s", "String", "ScopeIndicator", "FlowIndicator", "Indicator", "PlainUnsafeChar", "PlainSafeKey", "PlainSafeIn", "PlainSafeOut", "PlainFirst", "PlainSafe", "PlainOneLine", "JSON", "Separation" }; public static final int Key=14; - public static final int PlainUnsafeChar=52; - public static final int PlainSafeKey=53; + public static final int PlainUnsafeChar=51; + public static final int PlainSafeKey=52; public static final int DataType=10; public static final int SilkNode=5; public static final int SilkLine=6; @@ -52,18 +52,18 @@ public class SilkParser extends Parser { public static final int Occurrence=9; public static final int Argument=12; public static final int Separation=59; - public static final int FlowIndicator=51; + public static final int FlowIndicator=49; public static final int Letter=40; - public static final int PlainSafeIn=54; + public static final int PlainSafeIn=53; public static final int Comma=29; public static final int TabSeq=32; public static final int NonSpaceChar=45; public static final int EscapeSequence=43; public static final int DataLine=26; - public static final int PlainFirst=49; + public static final int PlainFirst=55; public static final int WhiteSpace=19; public static final int MultiLineEntrySeparator=21; - public static final int PlainSafeOut=55; + public static final int PlainSafeOut=54; public static final int JSON=58; public static final int Question=38; public static final int LineComment=16; @@ -75,7 +75,7 @@ public class SilkParser extends Parser { public static final int Preamble=17; public static final int Seq=31; public static final int FunctionIndent=23; - public static final int Indicator=48; + public static final int Indicator=50; public static final int RParen=28; public static final int UnicodeChar=42; public static final int StringChar=44; @@ -88,7 +88,7 @@ public class SilkParser extends Parser { public static final int LParen=27; public static final int String=47; public static final int LineBreakChar=18; - public static final int ScopeIndicator=50; + public static final int ScopeIndicator=48; public static final int EOF=-1; public static final int StringChar_s=46; public static final int Value=8; @@ -117,7 +117,7 @@ public class SilkParser extends Parser { } public String[] getTokenNames() { return SilkParser.tokenNames; } - public String getGrammarFileName() { return "F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g"; } + public String getGrammarFileName() { return "c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g"; } public static class silkFile_return extends ParserRuleReturnScope { @@ -126,7 +126,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "silkFile" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:247:1: silkFile : ( silkLine )* -> ^( Silk ( silkLine )* ) ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:261:1: silkFile : ( silkLine )* -> ^( Silk ( silkLine )* ) ; public final SilkParser.silkFile_return silkFile() throws RecognitionException { SilkParser.silkFile_return retval = new SilkParser.silkFile_return(); retval.start = input.LT(1); @@ -138,19 +138,19 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_silkLine=new RewriteRuleSubtreeStream(adaptor,"rule silkLine"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:247:9: ( ( silkLine )* -> ^( Silk ( silkLine )* ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:247:11: ( silkLine )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:261:9: ( ( silkLine )* -> ^( Silk ( silkLine )* ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:261:11: ( silkLine )* { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:247:11: ( silkLine )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:261:11: ( silkLine )* loop1: do { int alt1=2; alt1 = dfa1.predict(input); switch (alt1) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:247:11: silkLine + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:261:11: silkLine { - pushFollow(FOLLOW_silkLine_in_silkFile992); + pushFollow(FOLLOW_silkLine_in_silkFile1007); silkLine1=silkLine(); state._fsp--; @@ -177,14 +177,14 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 247:21: -> ^( Silk ( silkLine )* ) + // 261:21: -> ^( Silk ( silkLine )* ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:247:24: ^( Silk ( silkLine )* ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:261:24: ^( Silk ( silkLine )* ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(Silk, "Silk"), root_1); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:247:31: ( silkLine )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:261:31: ( silkLine )* while ( stream_silkLine.hasNext() ) { adaptor.addChild(root_1, stream_silkLine.nextTree()); @@ -223,7 +223,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "silkLine" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:250:1: silkLine : ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | Preamble | DataLine | BlankLine | MultiLineSeparator | MultiLineEntrySeparator | WhiteSpace -> BlankLine ); + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:264:1: silkLine : ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | Preamble | DataLine | BlankLine | MultiLineSeparator | MultiLineEntrySeparator | WhiteSpace -> BlankLine ); public final SilkParser.silkLine_return silkLine() throws RecognitionException { SilkParser.silkLine_return retval = new SilkParser.silkLine_return(); retval.start = input.LT(1); @@ -255,17 +255,17 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_NodeIndent=new RewriteRuleTokenStream(adaptor,"token NodeIndent"); RewriteRuleSubtreeStream stream_nodeItem=new RewriteRuleSubtreeStream(adaptor,"rule nodeItem"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:251:2: ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | Preamble | DataLine | BlankLine | MultiLineSeparator | MultiLineEntrySeparator | WhiteSpace -> BlankLine ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:265:2: ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | Preamble | DataLine | BlankLine | MultiLineSeparator | MultiLineEntrySeparator | WhiteSpace -> BlankLine ) int alt2=9; alt2 = dfa2.predict(input); switch (alt2) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:251:4: NodeIndent nodeItem + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:265:4: NodeIndent nodeItem { - NodeIndent2=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_silkLine1013); + NodeIndent2=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_silkLine1028); stream_NodeIndent.add(NodeIndent2); - pushFollow(FOLLOW_nodeItem_in_silkLine1015); + pushFollow(FOLLOW_nodeItem_in_silkLine1030); nodeItem3=nodeItem(); state._fsp--; @@ -283,9 +283,9 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 251:24: -> ^( SilkNode NodeIndent nodeItem ) + // 265:24: -> ^( SilkNode NodeIndent nodeItem ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:251:27: ^( SilkNode NodeIndent nodeItem ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:265:27: ^( SilkNode NodeIndent nodeItem ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(SilkNode, "SilkNode"), root_1); @@ -302,11 +302,11 @@ public class SilkParser extends Parser { } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:252:4: noNameNode + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:4: noNameNode { root_0 = (Object)adaptor.nil(); - pushFollow(FOLLOW_noNameNode_in_silkLine1030); + pushFollow(FOLLOW_noNameNode_in_silkLine1045); noNameNode4=noNameNode(); state._fsp--; @@ -316,11 +316,11 @@ public class SilkParser extends Parser { } break; case 3 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:253:4: function + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:267:4: function { root_0 = (Object)adaptor.nil(); - pushFollow(FOLLOW_function_in_silkLine1036); + pushFollow(FOLLOW_function_in_silkLine1051); function5=function(); state._fsp--; @@ -330,11 +330,11 @@ public class SilkParser extends Parser { } break; case 4 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:254:4: Preamble + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:268:4: Preamble { root_0 = (Object)adaptor.nil(); - Preamble6=(Token)match(input,Preamble,FOLLOW_Preamble_in_silkLine1041); + Preamble6=(Token)match(input,Preamble,FOLLOW_Preamble_in_silkLine1056); Preamble6_tree = (Object)adaptor.create(Preamble6); adaptor.addChild(root_0, Preamble6_tree); @@ -342,11 +342,11 @@ public class SilkParser extends Parser { } break; case 5 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:255:4: DataLine + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:269:4: DataLine { root_0 = (Object)adaptor.nil(); - DataLine7=(Token)match(input,DataLine,FOLLOW_DataLine_in_silkLine1046); + DataLine7=(Token)match(input,DataLine,FOLLOW_DataLine_in_silkLine1061); DataLine7_tree = (Object)adaptor.create(DataLine7); adaptor.addChild(root_0, DataLine7_tree); @@ -354,11 +354,11 @@ public class SilkParser extends Parser { } break; case 6 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:256:4: BlankLine + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:270:4: BlankLine { root_0 = (Object)adaptor.nil(); - BlankLine8=(Token)match(input,BlankLine,FOLLOW_BlankLine_in_silkLine1051); + BlankLine8=(Token)match(input,BlankLine,FOLLOW_BlankLine_in_silkLine1066); BlankLine8_tree = (Object)adaptor.create(BlankLine8); adaptor.addChild(root_0, BlankLine8_tree); @@ -366,11 +366,11 @@ public class SilkParser extends Parser { } break; case 7 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:257:4: MultiLineSeparator + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:271:4: MultiLineSeparator { root_0 = (Object)adaptor.nil(); - MultiLineSeparator9=(Token)match(input,MultiLineSeparator,FOLLOW_MultiLineSeparator_in_silkLine1056); + MultiLineSeparator9=(Token)match(input,MultiLineSeparator,FOLLOW_MultiLineSeparator_in_silkLine1071); MultiLineSeparator9_tree = (Object)adaptor.create(MultiLineSeparator9); adaptor.addChild(root_0, MultiLineSeparator9_tree); @@ -378,11 +378,11 @@ public class SilkParser extends Parser { } break; case 8 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:258:4: MultiLineEntrySeparator + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:272:4: MultiLineEntrySeparator { root_0 = (Object)adaptor.nil(); - MultiLineEntrySeparator10=(Token)match(input,MultiLineEntrySeparator,FOLLOW_MultiLineEntrySeparator_in_silkLine1061); + MultiLineEntrySeparator10=(Token)match(input,MultiLineEntrySeparator,FOLLOW_MultiLineEntrySeparator_in_silkLine1076); MultiLineEntrySeparator10_tree = (Object)adaptor.create(MultiLineEntrySeparator10); adaptor.addChild(root_0, MultiLineEntrySeparator10_tree); @@ -390,9 +390,9 @@ public class SilkParser extends Parser { } break; case 9 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:4: WhiteSpace + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:273:4: WhiteSpace { - WhiteSpace11=(Token)match(input,WhiteSpace,FOLLOW_WhiteSpace_in_silkLine1066); + WhiteSpace11=(Token)match(input,WhiteSpace,FOLLOW_WhiteSpace_in_silkLine1081); stream_WhiteSpace.add(WhiteSpace11); @@ -407,7 +407,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 259:15: -> BlankLine + // 273:15: -> BlankLine { adaptor.addChild(root_0, (Object)adaptor.create(BlankLine, "BlankLine")); @@ -442,7 +442,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "nodeName" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:262:1: fragment nodeName : ( PlainOneLine | String ); + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:276:1: fragment nodeName : ( PlainOneLine | String ); public final SilkParser.nodeName_return nodeName() throws RecognitionException { SilkParser.nodeName_return retval = new SilkParser.nodeName_return(); retval.start = input.LT(1); @@ -454,8 +454,8 @@ public class SilkParser extends Parser { Object set12_tree=null; try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:263:9: ( PlainOneLine | String ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:277:9: ( PlainOneLine | String ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { root_0 = (Object)adaptor.nil(); @@ -497,7 +497,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "nodeValue" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:265:1: fragment nodeValue : ( function_i -> ^( Function function_i ) | ( PlainOneLine | String ) -> Value[$nodeValue.text] | JSON ); + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:1: fragment nodeValue : ( function_i -> ^( Function function_i ) | ( PlainOneLine | String ) -> Value[$nodeValue.text] | JSON ); public final SilkParser.nodeValue_return nodeValue() throws RecognitionException { SilkParser.nodeValue_return retval = new SilkParser.nodeValue_return(); retval.start = input.LT(1); @@ -517,7 +517,7 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_PlainOneLine=new RewriteRuleTokenStream(adaptor,"token PlainOneLine"); RewriteRuleSubtreeStream stream_function_i=new RewriteRuleSubtreeStream(adaptor,"rule function_i"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:267:2: ( function_i -> ^( Function function_i ) | ( PlainOneLine | String ) -> Value[$nodeValue.text] | JSON ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:281:2: ( function_i -> ^( Function function_i ) | ( PlainOneLine | String ) -> Value[$nodeValue.text] | JSON ) int alt4=3; switch ( input.LA(1) ) { case At: @@ -545,9 +545,9 @@ public class SilkParser extends Parser { switch (alt4) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:267:4: function_i + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:281:4: function_i { - pushFollow(FOLLOW_function_i_in_nodeValue1096); + pushFollow(FOLLOW_function_i_in_nodeValue1111); function_i13=function_i(); state._fsp--; @@ -565,9 +565,9 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 267:15: -> ^( Function function_i ) + // 281:15: -> ^( Function function_i ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:267:18: ^( Function function_i ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:281:18: ^( Function function_i ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(Function, "Function"), root_1); @@ -583,9 +583,9 @@ public class SilkParser extends Parser { } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:268:4: ( PlainOneLine | String ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:282:4: ( PlainOneLine | String ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:268:4: ( PlainOneLine | String ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:282:4: ( PlainOneLine | String ) int alt3=2; int LA3_0 = input.LA(1); @@ -603,18 +603,18 @@ public class SilkParser extends Parser { } switch (alt3) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:268:5: PlainOneLine + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:282:5: PlainOneLine { - PlainOneLine14=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_nodeValue1110); + PlainOneLine14=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_nodeValue1125); stream_PlainOneLine.add(PlainOneLine14); } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:268:20: String + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:282:20: String { - String15=(Token)match(input,String,FOLLOW_String_in_nodeValue1114); + String15=(Token)match(input,String,FOLLOW_String_in_nodeValue1129); stream_String.add(String15); @@ -635,7 +635,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 268:28: -> Value[$nodeValue.text] + // 282:28: -> Value[$nodeValue.text] { adaptor.addChild(root_0, (Object)adaptor.create(Value, input.toString(retval.start,input.LT(-1)))); @@ -645,11 +645,11 @@ public class SilkParser extends Parser { } break; case 3 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:269:4: JSON + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:283:4: JSON { root_0 = (Object)adaptor.nil(); - JSON16=(Token)match(input,JSON,FOLLOW_JSON_in_nodeValue1125); + JSON16=(Token)match(input,JSON,FOLLOW_JSON_in_nodeValue1140); JSON16_tree = (Object)adaptor.create(JSON16); adaptor.addChild(root_0, JSON16_tree); @@ -682,7 +682,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "noNameNode" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:273:1: fragment noNameNode : NodeIndent ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? -> ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:287:1: fragment noNameNode : NodeIndent ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? -> ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) ; public final SilkParser.noNameNode_return noNameNode() throws RecognitionException { SilkParser.noNameNode_return retval = new SilkParser.noNameNode_return(); retval.start = input.LT(1); @@ -712,29 +712,29 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_plural=new RewriteRuleSubtreeStream(adaptor,"rule plural"); RewriteRuleSubtreeStream stream_nodeValue=new RewriteRuleSubtreeStream(adaptor,"rule nodeValue"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:274:11: ( NodeIndent ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? -> ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:274:13: NodeIndent ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:11: ( NodeIndent ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? -> ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:13: NodeIndent ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? { - NodeIndent17=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_noNameNode1139); + NodeIndent17=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_noNameNode1154); stream_NodeIndent.add(NodeIndent17); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:274:24: ( LParen attributeList RParen )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:24: ( LParen attributeList RParen )? int alt5=2; alt5 = dfa5.predict(input); switch (alt5) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:274:25: LParen attributeList RParen + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:25: LParen attributeList RParen { - LParen18=(Token)match(input,LParen,FOLLOW_LParen_in_noNameNode1142); + LParen18=(Token)match(input,LParen,FOLLOW_LParen_in_noNameNode1157); stream_LParen.add(LParen18); - pushFollow(FOLLOW_attributeList_in_noNameNode1144); + pushFollow(FOLLOW_attributeList_in_noNameNode1159); attributeList19=attributeList(); state._fsp--; stream_attributeList.add(attributeList19.getTree()); - RParen20=(Token)match(input,RParen,FOLLOW_RParen_in_noNameNode1146); + RParen20=(Token)match(input,RParen,FOLLOW_RParen_in_noNameNode1161); stream_RParen.add(RParen20); @@ -743,14 +743,14 @@ public class SilkParser extends Parser { } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:274:55: ( plural )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:55: ( plural )? int alt6=2; alt6 = dfa6.predict(input); switch (alt6) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:274:55: plural + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:55: plural { - pushFollow(FOLLOW_plural_in_noNameNode1150); + pushFollow(FOLLOW_plural_in_noNameNode1165); plural21=plural(); state._fsp--; @@ -762,17 +762,17 @@ public class SilkParser extends Parser { } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:274:63: ( Colon nodeValue )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:63: ( Colon nodeValue )? int alt7=2; alt7 = dfa7.predict(input); switch (alt7) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:274:64: Colon nodeValue + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:64: Colon nodeValue { - Colon22=(Token)match(input,Colon,FOLLOW_Colon_in_noNameNode1154); + Colon22=(Token)match(input,Colon,FOLLOW_Colon_in_noNameNode1169); stream_Colon.add(Colon22); - pushFollow(FOLLOW_nodeValue_in_noNameNode1156); + pushFollow(FOLLOW_nodeValue_in_noNameNode1171); nodeValue23=nodeValue(); state._fsp--; @@ -787,7 +787,7 @@ public class SilkParser extends Parser { // AST REWRITE - // elements: NodeIndent, nodeValue, plural, attributeList + // elements: attributeList, nodeValue, NodeIndent, plural // token labels: // rule labels: retval // token list labels: @@ -796,27 +796,27 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 275:2: -> ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) + // 289:2: -> ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:275:5: ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:289:5: ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(SilkNode, "SilkNode"), root_1); adaptor.addChild(root_1, stream_NodeIndent.nextNode()); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:275:27: ( attributeList )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:289:27: ( attributeList )? if ( stream_attributeList.hasNext() ) { adaptor.addChild(root_1, stream_attributeList.nextTree()); } stream_attributeList.reset(); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:275:42: ( plural )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:289:42: ( plural )? if ( stream_plural.hasNext() ) { adaptor.addChild(root_1, stream_plural.nextTree()); } stream_plural.reset(); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:275:50: ( nodeValue )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:289:50: ( nodeValue )? if ( stream_nodeValue.hasNext() ) { adaptor.addChild(root_1, stream_nodeValue.nextTree()); @@ -855,7 +855,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "nodeItem" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:278:1: fragment nodeItem : nodeName ( dataType )? ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? -> Name[$nodeName.text.trim()] ( dataType )? ( attributeList )? ( plural )? ( nodeValue )? ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:292:1: fragment nodeItem : nodeName ( dataType )? ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? -> Name[$nodeName.text.trim()] ( dataType )? ( attributeList )? ( plural )? ( nodeValue )? ; public final SilkParser.nodeItem_return nodeItem() throws RecognitionException { SilkParser.nodeItem_return retval = new SilkParser.nodeItem_return(); retval.start = input.LT(1); @@ -888,23 +888,23 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_plural=new RewriteRuleSubtreeStream(adaptor,"rule plural"); RewriteRuleSubtreeStream stream_nodeValue=new RewriteRuleSubtreeStream(adaptor,"rule nodeValue"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:9: ( nodeName ( dataType )? ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? -> Name[$nodeName.text.trim()] ( dataType )? ( attributeList )? ( plural )? ( nodeValue )? ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:11: nodeName ( dataType )? ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:9: ( nodeName ( dataType )? ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? -> Name[$nodeName.text.trim()] ( dataType )? ( attributeList )? ( plural )? ( nodeValue )? ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:11: nodeName ( dataType )? ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? { - pushFollow(FOLLOW_nodeName_in_nodeItem1189); + pushFollow(FOLLOW_nodeName_in_nodeItem1204); nodeName24=nodeName(); state._fsp--; stream_nodeName.add(nodeName24.getTree()); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:20: ( dataType )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:20: ( dataType )? int alt8=2; alt8 = dfa8.predict(input); switch (alt8) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:20: dataType + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:20: dataType { - pushFollow(FOLLOW_dataType_in_nodeItem1191); + pushFollow(FOLLOW_dataType_in_nodeItem1206); dataType25=dataType(); state._fsp--; @@ -916,23 +916,23 @@ public class SilkParser extends Parser { } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:31: ( LParen attributeList RParen )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:31: ( LParen attributeList RParen )? int alt9=2; alt9 = dfa9.predict(input); switch (alt9) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:32: LParen attributeList RParen + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:32: LParen attributeList RParen { - LParen26=(Token)match(input,LParen,FOLLOW_LParen_in_nodeItem1196); + LParen26=(Token)match(input,LParen,FOLLOW_LParen_in_nodeItem1211); stream_LParen.add(LParen26); - pushFollow(FOLLOW_attributeList_in_nodeItem1198); + pushFollow(FOLLOW_attributeList_in_nodeItem1213); attributeList27=attributeList(); state._fsp--; stream_attributeList.add(attributeList27.getTree()); - RParen28=(Token)match(input,RParen,FOLLOW_RParen_in_nodeItem1200); + RParen28=(Token)match(input,RParen,FOLLOW_RParen_in_nodeItem1215); stream_RParen.add(RParen28); @@ -941,14 +941,14 @@ public class SilkParser extends Parser { } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:62: ( plural )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:62: ( plural )? int alt10=2; alt10 = dfa10.predict(input); switch (alt10) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:62: plural + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:62: plural { - pushFollow(FOLLOW_plural_in_nodeItem1204); + pushFollow(FOLLOW_plural_in_nodeItem1219); plural29=plural(); state._fsp--; @@ -960,17 +960,17 @@ public class SilkParser extends Parser { } - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:70: ( Colon nodeValue )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:70: ( Colon nodeValue )? int alt11=2; alt11 = dfa11.predict(input); switch (alt11) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:71: Colon nodeValue + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:71: Colon nodeValue { - Colon30=(Token)match(input,Colon,FOLLOW_Colon_in_nodeItem1208); + Colon30=(Token)match(input,Colon,FOLLOW_Colon_in_nodeItem1223); stream_Colon.add(Colon30); - pushFollow(FOLLOW_nodeValue_in_nodeItem1210); + pushFollow(FOLLOW_nodeValue_in_nodeItem1225); nodeValue31=nodeValue(); state._fsp--; @@ -985,7 +985,7 @@ public class SilkParser extends Parser { // AST REWRITE - // elements: attributeList, plural, nodeValue, dataType + // elements: plural, dataType, attributeList, nodeValue // token labels: // rule labels: retval // token list labels: @@ -994,28 +994,28 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 280:2: -> Name[$nodeName.text.trim()] ( dataType )? ( attributeList )? ( plural )? ( nodeValue )? + // 294:2: -> Name[$nodeName.text.trim()] ( dataType )? ( attributeList )? ( plural )? ( nodeValue )? { adaptor.addChild(root_0, (Object)adaptor.create(Name, (nodeName24!=null?input.toString(nodeName24.start,nodeName24.stop):null).trim())); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:280:33: ( dataType )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:33: ( dataType )? if ( stream_dataType.hasNext() ) { adaptor.addChild(root_0, stream_dataType.nextTree()); } stream_dataType.reset(); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:280:43: ( attributeList )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:43: ( attributeList )? if ( stream_attributeList.hasNext() ) { adaptor.addChild(root_0, stream_attributeList.nextTree()); } stream_attributeList.reset(); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:280:58: ( plural )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:58: ( plural )? if ( stream_plural.hasNext() ) { adaptor.addChild(root_0, stream_plural.nextTree()); } stream_plural.reset(); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:280:66: ( nodeValue )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:66: ( nodeValue )? if ( stream_nodeValue.hasNext() ) { adaptor.addChild(root_0, stream_nodeValue.nextTree()); @@ -1051,7 +1051,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "dataType" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:283:1: fragment dataType : LBracket dataTypeName RBracket ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:297:1: fragment dataType : LBracket dataTypeName RBracket ; public final SilkParser.dataType_return dataType() throws RecognitionException { SilkParser.dataType_return retval = new SilkParser.dataType_return(); retval.start = input.LT(1); @@ -1067,19 +1067,19 @@ public class SilkParser extends Parser { Object RBracket34_tree=null; try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:284:9: ( LBracket dataTypeName RBracket ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:284:11: LBracket dataTypeName RBracket + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:298:9: ( LBracket dataTypeName RBracket ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:298:11: LBracket dataTypeName RBracket { root_0 = (Object)adaptor.nil(); - LBracket32=(Token)match(input,LBracket,FOLLOW_LBracket_in_dataType1243); - pushFollow(FOLLOW_dataTypeName_in_dataType1246); + LBracket32=(Token)match(input,LBracket,FOLLOW_LBracket_in_dataType1258); + pushFollow(FOLLOW_dataTypeName_in_dataType1261); dataTypeName33=dataTypeName(); state._fsp--; adaptor.addChild(root_0, dataTypeName33.getTree()); - RBracket34=(Token)match(input,RBracket,FOLLOW_RBracket_in_dataType1248); + RBracket34=(Token)match(input,RBracket,FOLLOW_RBracket_in_dataType1263); } @@ -1107,7 +1107,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "dataTypeName" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:287:1: fragment dataTypeName : PlainOneLine -> DataType[$dataTypeName.text] ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:301:1: fragment dataTypeName : PlainOneLine -> DataType[$dataTypeName.text] ; public final SilkParser.dataTypeName_return dataTypeName() throws RecognitionException { SilkParser.dataTypeName_return retval = new SilkParser.dataTypeName_return(); retval.start = input.LT(1); @@ -1120,10 +1120,10 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_PlainOneLine=new RewriteRuleTokenStream(adaptor,"token PlainOneLine"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:13: ( PlainOneLine -> DataType[$dataTypeName.text] ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:15: PlainOneLine + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:302:13: ( PlainOneLine -> DataType[$dataTypeName.text] ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:302:15: PlainOneLine { - PlainOneLine35=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_dataTypeName1261); + PlainOneLine35=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_dataTypeName1276); stream_PlainOneLine.add(PlainOneLine35); @@ -1138,7 +1138,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 289:2: -> DataType[$dataTypeName.text] + // 303:2: -> DataType[$dataTypeName.text] { adaptor.addChild(root_0, (Object)adaptor.create(DataType, input.toString(retval.start,input.LT(-1)))); @@ -1171,7 +1171,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "attributeList" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:292:1: fragment attributeList : attributeItem ( Comma attributeItem )* ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:306:1: fragment attributeList : attributeItem ( Comma attributeItem )* ; public final SilkParser.attributeList_return attributeList() throws RecognitionException { SilkParser.attributeList_return retval = new SilkParser.attributeList_return(); retval.start = input.LT(1); @@ -1187,18 +1187,18 @@ public class SilkParser extends Parser { Object Comma37_tree=null; try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:14: ( attributeItem ( Comma attributeItem )* ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:16: attributeItem ( Comma attributeItem )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:307:14: ( attributeItem ( Comma attributeItem )* ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:307:16: attributeItem ( Comma attributeItem )* { root_0 = (Object)adaptor.nil(); - pushFollow(FOLLOW_attributeItem_in_attributeList1281); + pushFollow(FOLLOW_attributeItem_in_attributeList1296); attributeItem36=attributeItem(); state._fsp--; adaptor.addChild(root_0, attributeItem36.getTree()); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:30: ( Comma attributeItem )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:307:30: ( Comma attributeItem )* loop12: do { int alt12=2; @@ -1211,10 +1211,10 @@ public class SilkParser extends Parser { switch (alt12) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:31: Comma attributeItem + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:307:31: Comma attributeItem { - Comma37=(Token)match(input,Comma,FOLLOW_Comma_in_attributeList1284); - pushFollow(FOLLOW_attributeItem_in_attributeList1287); + Comma37=(Token)match(input,Comma,FOLLOW_Comma_in_attributeList1299); + pushFollow(FOLLOW_attributeItem_in_attributeList1302); attributeItem38=attributeItem(); state._fsp--; @@ -1256,7 +1256,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "attributeItem" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295:1: fragment attributeItem : nodeItem -> ^( SilkNode nodeItem ) ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:309:1: fragment attributeItem : nodeItem -> ^( SilkNode nodeItem ) ; public final SilkParser.attributeItem_return attributeItem() throws RecognitionException { SilkParser.attributeItem_return retval = new SilkParser.attributeItem_return(); retval.start = input.LT(1); @@ -1268,10 +1268,10 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_nodeItem=new RewriteRuleSubtreeStream(adaptor,"rule nodeItem"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:296:14: ( nodeItem -> ^( SilkNode nodeItem ) ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:296:16: nodeItem + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:310:14: ( nodeItem -> ^( SilkNode nodeItem ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:310:16: nodeItem { - pushFollow(FOLLOW_nodeItem_in_attributeItem1300); + pushFollow(FOLLOW_nodeItem_in_attributeItem1315); nodeItem39=nodeItem(); state._fsp--; @@ -1289,9 +1289,9 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 296:25: -> ^( SilkNode nodeItem ) + // 310:25: -> ^( SilkNode nodeItem ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:296:28: ^( SilkNode nodeItem ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:310:28: ^( SilkNode nodeItem ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(SilkNode, "SilkNode"), root_1); @@ -1330,7 +1330,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "seqseq" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:298:1: fragment seqseq : Seq Seq ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:312:1: fragment seqseq : Seq Seq ; public final SilkParser.seqseq_return seqseq() throws RecognitionException { SilkParser.seqseq_return retval = new SilkParser.seqseq_return(); retval.start = input.LT(1); @@ -1344,16 +1344,16 @@ public class SilkParser extends Parser { Object Seq41_tree=null; try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:7: ( Seq Seq ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:9: Seq Seq + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:7: ( Seq Seq ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:9: Seq Seq { root_0 = (Object)adaptor.nil(); - Seq40=(Token)match(input,Seq,FOLLOW_Seq_in_seqseq1317); + Seq40=(Token)match(input,Seq,FOLLOW_Seq_in_seqseq1332); Seq40_tree = (Object)adaptor.create(Seq40); adaptor.addChild(root_0, Seq40_tree); - Seq41=(Token)match(input,Seq,FOLLOW_Seq_in_seqseq1319); + Seq41=(Token)match(input,Seq,FOLLOW_Seq_in_seqseq1334); Seq41_tree = (Object)adaptor.create(Seq41); adaptor.addChild(root_0, Seq41_tree); @@ -1384,7 +1384,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "plural" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:301:1: fragment plural : ( Star -> Occurrence[\"ZERO_OR_MORE\"] | Plus -> Occurrence[\"ONE_OR_MORE\"] | Question -> Occurrence[\"ZERO_OR_ONE\"] | seqseq -> Occurrence[\"MULTILINE_SEQUENCE\"] | Seq -> Occurrence[\"SEQUENCE\"] | TabSeq -> Occurrence[\"TABBED_SEQUENCE\"] ); + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:315:1: fragment plural : ( Star -> Occurrence[\"ZERO_OR_MORE\"] | Plus -> Occurrence[\"ONE_OR_MORE\"] | Question -> Occurrence[\"ZERO_OR_ONE\"] | seqseq -> Occurrence[\"MULTILINE_SEQUENCE\"] | Seq -> Occurrence[\"SEQUENCE\"] | TabSeq -> Occurrence[\"TABBED_SEQUENCE\"] ); public final SilkParser.plural_return plural() throws RecognitionException { SilkParser.plural_return retval = new SilkParser.plural_return(); retval.start = input.LT(1); @@ -1411,14 +1411,14 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_Seq=new RewriteRuleTokenStream(adaptor,"token Seq"); RewriteRuleSubtreeStream stream_seqseq=new RewriteRuleSubtreeStream(adaptor,"rule seqseq"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:303:2: ( Star -> Occurrence[\"ZERO_OR_MORE\"] | Plus -> Occurrence[\"ONE_OR_MORE\"] | Question -> Occurrence[\"ZERO_OR_ONE\"] | seqseq -> Occurrence[\"MULTILINE_SEQUENCE\"] | Seq -> Occurrence[\"SEQUENCE\"] | TabSeq -> Occurrence[\"TABBED_SEQUENCE\"] ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:317:2: ( Star -> Occurrence[\"ZERO_OR_MORE\"] | Plus -> Occurrence[\"ONE_OR_MORE\"] | Question -> Occurrence[\"ZERO_OR_ONE\"] | seqseq -> Occurrence[\"MULTILINE_SEQUENCE\"] | Seq -> Occurrence[\"SEQUENCE\"] | TabSeq -> Occurrence[\"TABBED_SEQUENCE\"] ) int alt13=6; alt13 = dfa13.predict(input); switch (alt13) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:303:4: Star + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:317:4: Star { - Star42=(Token)match(input,Star,FOLLOW_Star_in_plural1330); + Star42=(Token)match(input,Star,FOLLOW_Star_in_plural1345); stream_Star.add(Star42); @@ -1433,7 +1433,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 303:9: -> Occurrence[\"ZERO_OR_MORE\"] + // 317:9: -> Occurrence[\"ZERO_OR_MORE\"] { adaptor.addChild(root_0, (Object)adaptor.create(Occurrence, "ZERO_OR_MORE")); @@ -1443,9 +1443,9 @@ public class SilkParser extends Parser { } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:304:4: Plus + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:318:4: Plus { - Plus43=(Token)match(input,Plus,FOLLOW_Plus_in_plural1340); + Plus43=(Token)match(input,Plus,FOLLOW_Plus_in_plural1355); stream_Plus.add(Plus43); @@ -1460,7 +1460,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 304:9: -> Occurrence[\"ONE_OR_MORE\"] + // 318:9: -> Occurrence[\"ONE_OR_MORE\"] { adaptor.addChild(root_0, (Object)adaptor.create(Occurrence, "ONE_OR_MORE")); @@ -1470,9 +1470,9 @@ public class SilkParser extends Parser { } break; case 3 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:305:4: Question + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:4: Question { - Question44=(Token)match(input,Question,FOLLOW_Question_in_plural1350); + Question44=(Token)match(input,Question,FOLLOW_Question_in_plural1365); stream_Question.add(Question44); @@ -1487,7 +1487,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 305:13: -> Occurrence[\"ZERO_OR_ONE\"] + // 319:13: -> Occurrence[\"ZERO_OR_ONE\"] { adaptor.addChild(root_0, (Object)adaptor.create(Occurrence, "ZERO_OR_ONE")); @@ -1497,9 +1497,9 @@ public class SilkParser extends Parser { } break; case 4 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:306:4: seqseq + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:320:4: seqseq { - pushFollow(FOLLOW_seqseq_in_plural1360); + pushFollow(FOLLOW_seqseq_in_plural1375); seqseq45=seqseq(); state._fsp--; @@ -1517,7 +1517,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 306:11: -> Occurrence[\"MULTILINE_SEQUENCE\"] + // 320:11: -> Occurrence[\"MULTILINE_SEQUENCE\"] { adaptor.addChild(root_0, (Object)adaptor.create(Occurrence, "MULTILINE_SEQUENCE")); @@ -1527,9 +1527,9 @@ public class SilkParser extends Parser { } break; case 5 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:307:4: Seq + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:321:4: Seq { - Seq46=(Token)match(input,Seq,FOLLOW_Seq_in_plural1370); + Seq46=(Token)match(input,Seq,FOLLOW_Seq_in_plural1385); stream_Seq.add(Seq46); @@ -1544,7 +1544,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 307:8: -> Occurrence[\"SEQUENCE\"] + // 321:8: -> Occurrence[\"SEQUENCE\"] { adaptor.addChild(root_0, (Object)adaptor.create(Occurrence, "SEQUENCE")); @@ -1554,9 +1554,9 @@ public class SilkParser extends Parser { } break; case 6 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:308:4: TabSeq + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:322:4: TabSeq { - TabSeq47=(Token)match(input,TabSeq,FOLLOW_TabSeq_in_plural1380); + TabSeq47=(Token)match(input,TabSeq,FOLLOW_TabSeq_in_plural1395); stream_TabSeq.add(TabSeq47); @@ -1571,7 +1571,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 308:11: -> Occurrence[\"TABBED_SEQUENCE\"] + // 322:11: -> Occurrence[\"TABBED_SEQUENCE\"] { adaptor.addChild(root_0, (Object)adaptor.create(Occurrence, "TABBED_SEQUENCE")); @@ -1606,7 +1606,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "function" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:311:1: function : ( NodeIndent function_i -> ^( Function NodeIndent function_i ) | FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> ^( Function NodeIndent[$FunctionIndent.text] Name[$PlainOneLine.text.trim()] ( functionArg )* ) ); + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:325:1: function : ( NodeIndent function_i -> ^( Function NodeIndent function_i ) | FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> ^( Function NodeIndent[$FunctionIndent.text] Name[$PlainOneLine.text.trim()] ( functionArg )* ) ); public final SilkParser.function_return function() throws RecognitionException { SilkParser.function_return retval = new SilkParser.function_return(); retval.start = input.LT(1); @@ -1641,7 +1641,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_function_i=new RewriteRuleSubtreeStream(adaptor,"rule function_i"); RewriteRuleSubtreeStream stream_functionArg=new RewriteRuleSubtreeStream(adaptor,"rule functionArg"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:312:2: ( NodeIndent function_i -> ^( Function NodeIndent function_i ) | FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> ^( Function NodeIndent[$FunctionIndent.text] Name[$PlainOneLine.text.trim()] ( functionArg )* ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:326:2: ( NodeIndent function_i -> ^( Function NodeIndent function_i ) | FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> ^( Function NodeIndent[$FunctionIndent.text] Name[$PlainOneLine.text.trim()] ( functionArg )* ) ) int alt16=2; int LA16_0 = input.LA(1); @@ -1659,12 +1659,12 @@ public class SilkParser extends Parser { } switch (alt16) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:312:4: NodeIndent function_i + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:326:4: NodeIndent function_i { - NodeIndent48=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_function1396); + NodeIndent48=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_function1411); stream_NodeIndent.add(NodeIndent48); - pushFollow(FOLLOW_function_i_in_function1398); + pushFollow(FOLLOW_function_i_in_function1413); function_i49=function_i(); state._fsp--; @@ -1673,7 +1673,7 @@ public class SilkParser extends Parser { // AST REWRITE - // elements: NodeIndent, function_i + // elements: function_i, NodeIndent // token labels: // rule labels: retval // token list labels: @@ -1682,9 +1682,9 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 313:2: -> ^( Function NodeIndent function_i ) + // 327:2: -> ^( Function NodeIndent function_i ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:5: ^( Function NodeIndent function_i ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:327:5: ^( Function NodeIndent function_i ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(Function, "Function"), root_1); @@ -1701,18 +1701,18 @@ public class SilkParser extends Parser { } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:314:4: FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:328:4: FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen { - FunctionIndent50=(Token)match(input,FunctionIndent,FOLLOW_FunctionIndent_in_function1414); + FunctionIndent50=(Token)match(input,FunctionIndent,FOLLOW_FunctionIndent_in_function1429); stream_FunctionIndent.add(FunctionIndent50); - PlainOneLine51=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_function1416); + PlainOneLine51=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_function1431); stream_PlainOneLine.add(PlainOneLine51); - LParen52=(Token)match(input,LParen,FOLLOW_LParen_in_function1418); + LParen52=(Token)match(input,LParen,FOLLOW_LParen_in_function1433); stream_LParen.add(LParen52); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:314:39: ( functionArg ( Comma functionArg )* )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:328:39: ( functionArg ( Comma functionArg )* )? int alt15=2; int LA15_0 = input.LA(1); @@ -1721,15 +1721,15 @@ public class SilkParser extends Parser { } switch (alt15) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:314:40: functionArg ( Comma functionArg )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:328:40: functionArg ( Comma functionArg )* { - pushFollow(FOLLOW_functionArg_in_function1421); + pushFollow(FOLLOW_functionArg_in_function1436); functionArg53=functionArg(); state._fsp--; stream_functionArg.add(functionArg53.getTree()); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:314:52: ( Comma functionArg )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:328:52: ( Comma functionArg )* loop14: do { int alt14=2; @@ -1742,12 +1742,12 @@ public class SilkParser extends Parser { switch (alt14) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:314:53: Comma functionArg + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:328:53: Comma functionArg { - Comma54=(Token)match(input,Comma,FOLLOW_Comma_in_function1424); + Comma54=(Token)match(input,Comma,FOLLOW_Comma_in_function1439); stream_Comma.add(Comma54); - pushFollow(FOLLOW_functionArg_in_function1426); + pushFollow(FOLLOW_functionArg_in_function1441); functionArg55=functionArg(); state._fsp--; @@ -1768,7 +1768,7 @@ public class SilkParser extends Parser { } - RParen56=(Token)match(input,RParen,FOLLOW_RParen_in_function1432); + RParen56=(Token)match(input,RParen,FOLLOW_RParen_in_function1447); stream_RParen.add(RParen56); @@ -1783,16 +1783,16 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 315:2: -> ^( Function NodeIndent[$FunctionIndent.text] Name[$PlainOneLine.text.trim()] ( functionArg )* ) + // 329:2: -> ^( Function NodeIndent[$FunctionIndent.text] Name[$PlainOneLine.text.trim()] ( functionArg )* ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:315:5: ^( Function NodeIndent[$FunctionIndent.text] Name[$PlainOneLine.text.trim()] ( functionArg )* ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:329:5: ^( Function NodeIndent[$FunctionIndent.text] Name[$PlainOneLine.text.trim()] ( functionArg )* ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(Function, "Function"), root_1); adaptor.addChild(root_1, (Object)adaptor.create(NodeIndent, (FunctionIndent50!=null?FunctionIndent50.getText():null))); adaptor.addChild(root_1, (Object)adaptor.create(Name, (PlainOneLine51!=null?PlainOneLine51.getText():null).trim())); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:315:81: ( functionArg )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:329:81: ( functionArg )* while ( stream_functionArg.hasNext() ) { adaptor.addChild(root_1, stream_functionArg.nextTree()); @@ -1833,7 +1833,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "function_i" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:318:1: fragment function_i : At PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> Name[$PlainOneLine.text.trim()] ( functionArg )* ; + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:332:1: fragment function_i : At PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> Name[$PlainOneLine.text.trim()] ( functionArg )* ; public final SilkParser.function_i_return function_i() throws RecognitionException { SilkParser.function_i_return retval = new SilkParser.function_i_return(); retval.start = input.LT(1); @@ -1862,19 +1862,19 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_LParen=new RewriteRuleTokenStream(adaptor,"token LParen"); RewriteRuleSubtreeStream stream_functionArg=new RewriteRuleSubtreeStream(adaptor,"rule functionArg"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:11: ( At PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> Name[$PlainOneLine.text.trim()] ( functionArg )* ) - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:13: At PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:333:11: ( At PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> Name[$PlainOneLine.text.trim()] ( functionArg )* ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:333:13: At PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen { - At57=(Token)match(input,At,FOLLOW_At_in_function_i1459); + At57=(Token)match(input,At,FOLLOW_At_in_function_i1474); stream_At.add(At57); - PlainOneLine58=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_function_i1461); + PlainOneLine58=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_function_i1476); stream_PlainOneLine.add(PlainOneLine58); - LParen59=(Token)match(input,LParen,FOLLOW_LParen_in_function_i1463); + LParen59=(Token)match(input,LParen,FOLLOW_LParen_in_function_i1478); stream_LParen.add(LParen59); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:36: ( functionArg ( Comma functionArg )* )? + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:333:36: ( functionArg ( Comma functionArg )* )? int alt18=2; int LA18_0 = input.LA(1); @@ -1883,15 +1883,15 @@ public class SilkParser extends Parser { } switch (alt18) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:37: functionArg ( Comma functionArg )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:333:37: functionArg ( Comma functionArg )* { - pushFollow(FOLLOW_functionArg_in_function_i1466); + pushFollow(FOLLOW_functionArg_in_function_i1481); functionArg60=functionArg(); state._fsp--; stream_functionArg.add(functionArg60.getTree()); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:49: ( Comma functionArg )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:333:49: ( Comma functionArg )* loop17: do { int alt17=2; @@ -1904,12 +1904,12 @@ public class SilkParser extends Parser { switch (alt17) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:50: Comma functionArg + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:333:50: Comma functionArg { - Comma61=(Token)match(input,Comma,FOLLOW_Comma_in_function_i1469); + Comma61=(Token)match(input,Comma,FOLLOW_Comma_in_function_i1484); stream_Comma.add(Comma61); - pushFollow(FOLLOW_functionArg_in_function_i1471); + pushFollow(FOLLOW_functionArg_in_function_i1486); functionArg62=functionArg(); state._fsp--; @@ -1930,7 +1930,7 @@ public class SilkParser extends Parser { } - RParen63=(Token)match(input,RParen,FOLLOW_RParen_in_function_i1477); + RParen63=(Token)match(input,RParen,FOLLOW_RParen_in_function_i1492); stream_RParen.add(RParen63); @@ -1945,10 +1945,10 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 320:2: -> Name[$PlainOneLine.text.trim()] ( functionArg )* + // 334:2: -> Name[$PlainOneLine.text.trim()] ( functionArg )* { adaptor.addChild(root_0, (Object)adaptor.create(Name, (PlainOneLine58!=null?PlainOneLine58.getText():null).trim())); - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:320:37: ( functionArg )* + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:37: ( functionArg )* while ( stream_functionArg.hasNext() ) { adaptor.addChild(root_0, stream_functionArg.nextTree()); @@ -1984,7 +1984,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "functionArg" - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:323:1: fragment functionArg : ( nodeValue -> Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) ); + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:337:1: fragment functionArg : ( nodeValue -> Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) ); public final SilkParser.functionArg_return functionArg() throws RecognitionException { SilkParser.functionArg_return retval = new SilkParser.functionArg_return(); retval.start = input.LT(1); @@ -2004,14 +2004,14 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_nodeName=new RewriteRuleSubtreeStream(adaptor,"rule nodeName"); RewriteRuleSubtreeStream stream_nodeValue=new RewriteRuleSubtreeStream(adaptor,"rule nodeValue"); try { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:325:2: ( nodeValue -> Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:2: ( nodeValue -> Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) ) int alt19=2; alt19 = dfa19.predict(input); switch (alt19) { case 1 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:325:4: nodeValue + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:4: nodeValue { - pushFollow(FOLLOW_nodeValue_in_functionArg1499); + pushFollow(FOLLOW_nodeValue_in_functionArg1514); nodeValue64=nodeValue(); state._fsp--; @@ -2029,7 +2029,7 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 325:14: -> Argument[$functionArg.text] + // 339:14: -> Argument[$functionArg.text] { adaptor.addChild(root_0, (Object)adaptor.create(Argument, input.toString(retval.start,input.LT(-1)))); @@ -2039,18 +2039,18 @@ public class SilkParser extends Parser { } break; case 2 : - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:326:4: nodeName Colon nodeValue + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:340:4: nodeName Colon nodeValue { - pushFollow(FOLLOW_nodeName_in_functionArg1509); + pushFollow(FOLLOW_nodeName_in_functionArg1524); nodeName65=nodeName(); state._fsp--; stream_nodeName.add(nodeName65.getTree()); - Colon66=(Token)match(input,Colon,FOLLOW_Colon_in_functionArg1511); + Colon66=(Token)match(input,Colon,FOLLOW_Colon_in_functionArg1526); stream_Colon.add(Colon66); - pushFollow(FOLLOW_nodeValue_in_functionArg1513); + pushFollow(FOLLOW_nodeValue_in_functionArg1528); nodeValue67=nodeValue(); state._fsp--; @@ -2068,9 +2068,9 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); - // 326:29: -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) + // 340:29: -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) { - // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:326:32: ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) + // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:340:32: ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(KeyValuePair, "KeyValuePair"), root_1); @@ -2175,7 +2175,7 @@ public class SilkParser extends Parser { this.transition = DFA1_transition; } public String getDescription() { - return "()* loopback of 247:11: ( silkLine )*"; + return "()* loopback of 261:11: ( silkLine )*"; } } static final String DFA2_eotS = @@ -2251,7 +2251,7 @@ public class SilkParser extends Parser { this.transition = DFA2_transition; } public String getDescription() { - return "250:1: silkLine : ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | Preamble | DataLine | BlankLine | MultiLineSeparator | MultiLineEntrySeparator | WhiteSpace -> BlankLine );"; + return "264:1: silkLine : ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | Preamble | DataLine | BlankLine | MultiLineSeparator | MultiLineEntrySeparator | WhiteSpace -> BlankLine );"; } } static final String DFA5_eotS = @@ -2317,7 +2317,7 @@ public class SilkParser extends Parser { this.transition = DFA5_transition; } public String getDescription() { - return "274:24: ( LParen attributeList RParen )?"; + return "288:24: ( LParen attributeList RParen )?"; } } static final String DFA6_eotS = @@ -2382,7 +2382,7 @@ public class SilkParser extends Parser { this.transition = DFA6_transition; } public String getDescription() { - return "274:55: ( plural )?"; + return "288:55: ( plural )?"; } } static final String DFA7_eotS = @@ -2441,7 +2441,7 @@ public class SilkParser extends Parser { this.transition = DFA7_transition; } public String getDescription() { - return "274:63: ( Colon nodeValue )?"; + return "288:63: ( Colon nodeValue )?"; } } static final String DFA8_eotS = @@ -2509,7 +2509,7 @@ public class SilkParser extends Parser { this.transition = DFA8_transition; } public String getDescription() { - return "279:20: ( dataType )?"; + return "293:20: ( dataType )?"; } } static final String DFA9_eotS = @@ -2577,7 +2577,7 @@ public class SilkParser extends Parser { this.transition = DFA9_transition; } public String getDescription() { - return "279:31: ( LParen attributeList RParen )?"; + return "293:31: ( LParen attributeList RParen )?"; } } static final String DFA10_eotS = @@ -2644,7 +2644,7 @@ public class SilkParser extends Parser { this.transition = DFA10_transition; } public String getDescription() { - return "279:62: ( plural )?"; + return "293:62: ( plural )?"; } } static final String DFA11_eotS = @@ -2705,7 +2705,7 @@ public class SilkParser extends Parser { this.transition = DFA11_transition; } public String getDescription() { - return "279:70: ( Colon nodeValue )?"; + return "293:70: ( Colon nodeValue )?"; } } static final String DFA13_eotS = @@ -2772,7 +2772,7 @@ public class SilkParser extends Parser { this.transition = DFA13_transition; } public String getDescription() { - return "301:1: fragment plural : ( Star -> Occurrence[\"ZERO_OR_MORE\"] | Plus -> Occurrence[\"ONE_OR_MORE\"] | Question -> Occurrence[\"ZERO_OR_ONE\"] | seqseq -> Occurrence[\"MULTILINE_SEQUENCE\"] | Seq -> Occurrence[\"SEQUENCE\"] | TabSeq -> Occurrence[\"TABBED_SEQUENCE\"] );"; + return "315:1: fragment plural : ( Star -> Occurrence[\"ZERO_OR_MORE\"] | Plus -> Occurrence[\"ONE_OR_MORE\"] | Question -> Occurrence[\"ZERO_OR_ONE\"] | seqseq -> Occurrence[\"MULTILINE_SEQUENCE\"] | Seq -> Occurrence[\"SEQUENCE\"] | TabSeq -> Occurrence[\"TABBED_SEQUENCE\"] );"; } } static final String DFA19_eotS = @@ -2831,77 +2831,77 @@ public class SilkParser extends Parser { this.transition = DFA19_transition; } public String getDescription() { - return "323:1: fragment functionArg : ( nodeValue -> Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) );"; + return "337:1: fragment functionArg : ( nodeValue -> Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) );"; } } - public static final BitSet FOLLOW_silkLine_in_silkFile992 = new BitSet(new long[]{0x0000000005FA0002L}); - public static final BitSet FOLLOW_NodeIndent_in_silkLine1013 = new BitSet(new long[]{0x0200800000000000L}); - public static final BitSet FOLLOW_nodeItem_in_silkLine1015 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_noNameNode_in_silkLine1030 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_function_in_silkLine1036 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Preamble_in_silkLine1041 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DataLine_in_silkLine1046 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BlankLine_in_silkLine1051 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_MultiLineSeparator_in_silkLine1056 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_MultiLineEntrySeparator_in_silkLine1061 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_WhiteSpace_in_silkLine1066 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_silkLine_in_silkFile1007 = new BitSet(new long[]{0x0000000005FA0002L}); + public static final BitSet FOLLOW_NodeIndent_in_silkLine1028 = new BitSet(new long[]{0x0200800000000000L}); + public static final BitSet FOLLOW_nodeItem_in_silkLine1030 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_noNameNode_in_silkLine1045 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_function_in_silkLine1051 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Preamble_in_silkLine1056 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DataLine_in_silkLine1061 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BlankLine_in_silkLine1066 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_MultiLineSeparator_in_silkLine1071 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_MultiLineEntrySeparator_in_silkLine1076 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_WhiteSpace_in_silkLine1081 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_set_in_nodeName0 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_function_i_in_nodeValue1096 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PlainOneLine_in_nodeValue1110 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_String_in_nodeValue1114 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_JSON_in_nodeValue1125 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_NodeIndent_in_noNameNode1139 = new BitSet(new long[]{0x0000004BC8000002L}); - public static final BitSet FOLLOW_LParen_in_noNameNode1142 = new BitSet(new long[]{0x0200800000000000L}); - public static final BitSet FOLLOW_attributeList_in_noNameNode1144 = new BitSet(new long[]{0x0000000010000000L}); - public static final BitSet FOLLOW_RParen_in_noNameNode1146 = new BitSet(new long[]{0x0000004BC0000002L}); - public static final BitSet FOLLOW_plural_in_noNameNode1150 = new BitSet(new long[]{0x0000000040000002L}); - public static final BitSet FOLLOW_Colon_in_noNameNode1154 = new BitSet(new long[]{0x0600800400000000L}); - public static final BitSet FOLLOW_nodeValue_in_noNameNode1156 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nodeName_in_nodeItem1189 = new BitSet(new long[]{0x0000005BC8000002L}); - public static final BitSet FOLLOW_dataType_in_nodeItem1191 = new BitSet(new long[]{0x0000004BC8000002L}); - public static final BitSet FOLLOW_LParen_in_nodeItem1196 = new BitSet(new long[]{0x0200800000000000L}); - public static final BitSet FOLLOW_attributeList_in_nodeItem1198 = new BitSet(new long[]{0x0000000010000000L}); - public static final BitSet FOLLOW_RParen_in_nodeItem1200 = new BitSet(new long[]{0x0000004BC0000002L}); - public static final BitSet FOLLOW_plural_in_nodeItem1204 = new BitSet(new long[]{0x0000000040000002L}); - public static final BitSet FOLLOW_Colon_in_nodeItem1208 = new BitSet(new long[]{0x0600800400000000L}); - public static final BitSet FOLLOW_nodeValue_in_nodeItem1210 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LBracket_in_dataType1243 = new BitSet(new long[]{0x0200000000000000L}); - public static final BitSet FOLLOW_dataTypeName_in_dataType1246 = new BitSet(new long[]{0x0000002000000000L}); - public static final BitSet FOLLOW_RBracket_in_dataType1248 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PlainOneLine_in_dataTypeName1261 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_attributeItem_in_attributeList1281 = new BitSet(new long[]{0x0000000020000002L}); - public static final BitSet FOLLOW_Comma_in_attributeList1284 = new BitSet(new long[]{0x0200800000000000L}); - public static final BitSet FOLLOW_attributeItem_in_attributeList1287 = new BitSet(new long[]{0x0000000020000002L}); - public static final BitSet FOLLOW_nodeItem_in_attributeItem1300 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Seq_in_seqseq1317 = new BitSet(new long[]{0x0000000080000000L}); - public static final BitSet FOLLOW_Seq_in_seqseq1319 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Star_in_plural1330 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Plus_in_plural1340 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Question_in_plural1350 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_seqseq_in_plural1360 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Seq_in_plural1370 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_TabSeq_in_plural1380 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_NodeIndent_in_function1396 = new BitSet(new long[]{0x0000000400000000L}); - public static final BitSet FOLLOW_function_i_in_function1398 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_FunctionIndent_in_function1414 = new BitSet(new long[]{0x0200000000000000L}); - public static final BitSet FOLLOW_PlainOneLine_in_function1416 = new BitSet(new long[]{0x0000000008000000L}); - public static final BitSet FOLLOW_LParen_in_function1418 = new BitSet(new long[]{0x0600800410000000L}); - public static final BitSet FOLLOW_functionArg_in_function1421 = new BitSet(new long[]{0x0000000030000000L}); - public static final BitSet FOLLOW_Comma_in_function1424 = new BitSet(new long[]{0x0600800400000000L}); - public static final BitSet FOLLOW_functionArg_in_function1426 = new BitSet(new long[]{0x0000000030000000L}); - public static final BitSet FOLLOW_RParen_in_function1432 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_At_in_function_i1459 = new BitSet(new long[]{0x0200000000000000L}); - public static final BitSet FOLLOW_PlainOneLine_in_function_i1461 = new BitSet(new long[]{0x0000000008000000L}); - public static final BitSet FOLLOW_LParen_in_function_i1463 = new BitSet(new long[]{0x0600800410000000L}); - public static final BitSet FOLLOW_functionArg_in_function_i1466 = new BitSet(new long[]{0x0000000030000000L}); - public static final BitSet FOLLOW_Comma_in_function_i1469 = new BitSet(new long[]{0x0600800400000000L}); - public static final BitSet FOLLOW_functionArg_in_function_i1471 = new BitSet(new long[]{0x0000000030000000L}); - public static final BitSet FOLLOW_RParen_in_function_i1477 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nodeValue_in_functionArg1499 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nodeName_in_functionArg1509 = new BitSet(new long[]{0x0000000040000000L}); - public static final BitSet FOLLOW_Colon_in_functionArg1511 = new BitSet(new long[]{0x0600800400000000L}); - public static final BitSet FOLLOW_nodeValue_in_functionArg1513 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_function_i_in_nodeValue1111 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PlainOneLine_in_nodeValue1125 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_String_in_nodeValue1129 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_JSON_in_nodeValue1140 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_NodeIndent_in_noNameNode1154 = new BitSet(new long[]{0x0000004BC8000002L}); + public static final BitSet FOLLOW_LParen_in_noNameNode1157 = new BitSet(new long[]{0x0200800000000000L}); + public static final BitSet FOLLOW_attributeList_in_noNameNode1159 = new BitSet(new long[]{0x0000000010000000L}); + public static final BitSet FOLLOW_RParen_in_noNameNode1161 = new BitSet(new long[]{0x0000004BC0000002L}); + public static final BitSet FOLLOW_plural_in_noNameNode1165 = new BitSet(new long[]{0x0000000040000002L}); + public static final BitSet FOLLOW_Colon_in_noNameNode1169 = new BitSet(new long[]{0x0600800400000000L}); + public static final BitSet FOLLOW_nodeValue_in_noNameNode1171 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_nodeName_in_nodeItem1204 = new BitSet(new long[]{0x0000005BC8000002L}); + public static final BitSet FOLLOW_dataType_in_nodeItem1206 = new BitSet(new long[]{0x0000004BC8000002L}); + public static final BitSet FOLLOW_LParen_in_nodeItem1211 = new BitSet(new long[]{0x0200800000000000L}); + public static final BitSet FOLLOW_attributeList_in_nodeItem1213 = new BitSet(new long[]{0x0000000010000000L}); + public static final BitSet FOLLOW_RParen_in_nodeItem1215 = new BitSet(new long[]{0x0000004BC0000002L}); + public static final BitSet FOLLOW_plural_in_nodeItem1219 = new BitSet(new long[]{0x0000000040000002L}); + public static final BitSet FOLLOW_Colon_in_nodeItem1223 = new BitSet(new long[]{0x0600800400000000L}); + public static final BitSet FOLLOW_nodeValue_in_nodeItem1225 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LBracket_in_dataType1258 = new BitSet(new long[]{0x0200000000000000L}); + public static final BitSet FOLLOW_dataTypeName_in_dataType1261 = new BitSet(new long[]{0x0000002000000000L}); + public static final BitSet FOLLOW_RBracket_in_dataType1263 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PlainOneLine_in_dataTypeName1276 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_attributeItem_in_attributeList1296 = new BitSet(new long[]{0x0000000020000002L}); + public static final BitSet FOLLOW_Comma_in_attributeList1299 = new BitSet(new long[]{0x0200800000000000L}); + public static final BitSet FOLLOW_attributeItem_in_attributeList1302 = new BitSet(new long[]{0x0000000020000002L}); + public static final BitSet FOLLOW_nodeItem_in_attributeItem1315 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Seq_in_seqseq1332 = new BitSet(new long[]{0x0000000080000000L}); + public static final BitSet FOLLOW_Seq_in_seqseq1334 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Star_in_plural1345 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Plus_in_plural1355 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Question_in_plural1365 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_seqseq_in_plural1375 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Seq_in_plural1385 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_TabSeq_in_plural1395 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_NodeIndent_in_function1411 = new BitSet(new long[]{0x0000000400000000L}); + public static final BitSet FOLLOW_function_i_in_function1413 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_FunctionIndent_in_function1429 = new BitSet(new long[]{0x0200000000000000L}); + public static final BitSet FOLLOW_PlainOneLine_in_function1431 = new BitSet(new long[]{0x0000000008000000L}); + public static final BitSet FOLLOW_LParen_in_function1433 = new BitSet(new long[]{0x0600800410000000L}); + public static final BitSet FOLLOW_functionArg_in_function1436 = new BitSet(new long[]{0x0000000030000000L}); + public static final BitSet FOLLOW_Comma_in_function1439 = new BitSet(new long[]{0x0600800400000000L}); + public static final BitSet FOLLOW_functionArg_in_function1441 = new BitSet(new long[]{0x0000000030000000L}); + public static final BitSet FOLLOW_RParen_in_function1447 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_At_in_function_i1474 = new BitSet(new long[]{0x0200000000000000L}); + public static final BitSet FOLLOW_PlainOneLine_in_function_i1476 = new BitSet(new long[]{0x0000000008000000L}); + public static final BitSet FOLLOW_LParen_in_function_i1478 = new BitSet(new long[]{0x0600800410000000L}); + public static final BitSet FOLLOW_functionArg_in_function_i1481 = new BitSet(new long[]{0x0000000030000000L}); + public static final BitSet FOLLOW_Comma_in_function_i1484 = new BitSet(new long[]{0x0600800400000000L}); + public static final BitSet FOLLOW_functionArg_in_function_i1486 = new BitSet(new long[]{0x0000000030000000L}); + public static final BitSet FOLLOW_RParen_in_function_i1492 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_nodeValue_in_functionArg1514 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_nodeName_in_functionArg1524 = new BitSet(new long[]{0x0000000040000000L}); + public static final BitSet FOLLOW_Colon_in_functionArg1526 = new BitSet(new long[]{0x0600800400000000L}); + public static final BitSet FOLLOW_nodeValue_in_functionArg1528 = new BitSet(new long[]{0x0000000000000002L}); } \ No newline at end of file -- 2.11.0