From: leo Date: Wed, 20 May 2009 07:42:08 +0000 (+0000) Subject: git-svn-id: http://www.xerial.org/svn/project/XerialJ/trunk/xerial-core@3317 ae02f08e... X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=08762c8bc152814b83e6c8ead48025a5d6d1ba6e;p=xerial%2Fxerial-core.git git-svn-id: xerial.org/svn/project/XerialJ/trunk/xerial-core@3317 ae02f08e-27ec-0310-ae8c-8ba02fe2eafd --- diff --git a/devel/silk-log.config b/devel/silk-log.config new file mode 100644 index 0000000..f85a9b4 --- /dev/null +++ b/devel/silk-log.config @@ -0,0 +1 @@ +org.xerial.silk.SilkPushParser=trace \ No newline at end of file diff --git a/src/main/java/org/xerial/silk/SilkPushParser.java b/src/main/java/org/xerial/silk/SilkPushParser.java index c689375..2e124d9 100644 --- a/src/main/java/org/xerial/silk/SilkPushParser.java +++ b/src/main/java/org/xerial/silk/SilkPushParser.java @@ -46,7 +46,10 @@ import org.xerial.silk.impl.SilkNode; import org.xerial.silk.impl.SilkParser; import org.xerial.silk.impl.SilkPreamble; import org.xerial.silk.impl.SilkParser.silkLine_return; +import org.xerial.util.StringUtil; +import org.xerial.util.antlr.ANTLRUtil; import org.xerial.util.bean.impl.BeanUtilImpl; +import org.xerial.util.log.Logger; /** * Push-style Silk Parser @@ -56,6 +59,8 @@ import org.xerial.util.bean.impl.BeanUtilImpl; */ public class SilkPushParser { + private static Logger _logger = Logger.getLogger(SilkPushParser.class); + private final SilkLexer lexer; private final SilkParser parser; private final BufferedReader buffer; @@ -189,6 +194,11 @@ public class SilkPushParser // 17500 lines/sec CommonTokenStream tokenStream = new CommonTokenStream(lexer); + + if (_logger.isTraceEnabled()) + _logger.trace(StringUtil.join(ANTLRUtil.prettyPrintTokenList(tokenStream.getTokens(), ANTLRUtil + .getTokenTable(SilkLexer.class, "Silk.tokens")), "\n")); + parser.setTokenStream(tokenStream); // 17000 lines/sec @@ -202,6 +212,7 @@ public class SilkPushParser { case SilkParser.Function: { + SilkFunction func = BeanUtilImpl.createBeanFromParseTree(SilkFunction.class, t, SilkParser.tokenNames); push(new SilkEvent(SilkEventType.FUNCTION, func)); diff --git a/src/main/java/org/xerial/silk/SilkStreamReader.java b/src/main/java/org/xerial/silk/SilkStreamReader.java index 1702759..c0f376b 100644 --- a/src/main/java/org/xerial/silk/SilkStreamReader.java +++ b/src/main/java/org/xerial/silk/SilkStreamReader.java @@ -740,7 +740,8 @@ public class SilkStreamReader implements TreeStreamReader if (columnIndex < columns.length) { String columnData = columns[columnIndex++]; - evalDatalineColumn(child, columnData); + if (columnData.length() > 0) + evalDatalineColumn(child, columnData); } } } diff --git a/src/main/java/org/xerial/silk/impl/Silk.g b/src/main/java/org/xerial/silk/impl/Silk.g index 8636624..4e4b3f4 100644 --- a/src/main/java/org/xerial/silk/impl/Silk.g +++ b/src/main/java/org/xerial/silk/impl/Silk.g @@ -28,7 +28,7 @@ options output=AST; // some lexer & parser options // number of look-ahead characters - k=3; + // k=3; //backtrack=true; } tokens { @@ -204,7 +204,7 @@ fragment EscapeSequence ; fragment StringChar : UnicodeChar | EscapeSequence; fragment StringChar_s: StringChar*; -String: '"' s=StringChar_s '"' { setText($s.text); }; +String: '"' s=StringChar_s '"' { setText($s.text); transit(Symbol.LeaveValue); }; fragment ScopeIndicator: '(' | ')'; diff --git a/src/main/java/org/xerial/silk/impl/SilkLexer.java b/src/main/java/org/xerial/silk/impl/SilkLexer.java index 162ccec..3a91974 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 c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g 2009-04-23 01:32:22 +// $ANTLR 3.1.1 F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g 2009-05-20 16:38:41 /*-------------------------------------------------------------------------- * Copyright 2009 Taro L. Saito @@ -132,13 +132,13 @@ public class SilkLexer extends Lexer { super(input,state); } - public String getGrammarFileName() { return "c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g"; } + public String getGrammarFileName() { return "F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g"; } // $ANTLR start "WhiteSpace" public final void mWhiteSpace() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:155:2: ( ( ' ' | '\\t' ) ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:155:4: ( ' ' | '\\t' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:155:2: ( ( ' ' | '\\t' ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:155:4: ( ' ' | '\\t' ) { if ( input.LA(1)=='\t'||input.LA(1)==' ' ) { input.consume(); @@ -163,11 +163,11 @@ public class SilkLexer extends Lexer { try { int _type = LineComment; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:12: ( '#' (~ ( LineBreakChar ) )* ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:14: '#' (~ ( LineBreakChar ) )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:12: ( '#' (~ ( LineBreakChar ) )* ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:14: '#' (~ ( LineBreakChar ) )* { match('#'); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:18: (~ ( LineBreakChar ) )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:18: (~ ( LineBreakChar ) )* loop1: do { int alt1=2; @@ -180,7 +180,7 @@ public class SilkLexer extends Lexer { switch (alt1) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:18: ~ ( LineBreakChar ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:159:18: ~ ( 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)<='\uFFFF') ) { input.consume(); @@ -214,8 +214,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "LineBreakChar" public final void mLineBreakChar() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:163:23: ( '\\n' | '\\r' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:163:23: ( '\\n' | '\\r' ) + // F:\\cygwin\\home\\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(); @@ -240,13 +240,13 @@ public class SilkLexer extends Lexer { try { int _type = NodeIndent; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:11: ({...}? => ( ' ' )* '-' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:13: {...}? => ( ' ' )* '-' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:11: ({...}? => ( ' ' )* '-' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:13: {...}? => ( ' ' )* '-' { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "NodeIndent", " isHead() "); } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:30: ( ' ' )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:30: ( ' ' )* loop2: do { int alt2=2; @@ -259,7 +259,7 @@ public class SilkLexer extends Lexer { switch (alt2) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:31: ' ' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:175:31: ' ' { match(' '); @@ -289,13 +289,13 @@ public class SilkLexer extends Lexer { try { int _type = FunctionIndent; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:15: ({...}? => ( ' ' )* '@' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:17: {...}? => ( ' ' )* '@' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:15: ({...}? => ( ' ' )* '@' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:17: {...}? => ( ' ' )* '@' { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "FunctionIndent", " isHead() "); } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:34: ( ' ' )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:34: ( ' ' )* loop3: do { int alt3=2; @@ -308,7 +308,7 @@ public class SilkLexer extends Lexer { switch (alt3) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:35: ' ' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:176:35: ' ' { match(' '); @@ -338,13 +338,13 @@ public class SilkLexer extends Lexer { try { int _type = BlankLine; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:10: ({...}? => ( WhiteSpace )* ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:12: {...}? => ( WhiteSpace )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:10: ({...}? => ( WhiteSpace )* ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:12: {...}? => ( WhiteSpace )* { if ( !(( isHead() )) ) { throw new FailedPredicateException(input, "BlankLine", " isHead() "); } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:29: ( WhiteSpace )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:29: ( WhiteSpace )* loop4: do { int alt4=2; @@ -357,7 +357,7 @@ public class SilkLexer extends Lexer { switch (alt4) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:29: WhiteSpace + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:177:29: WhiteSpace { mWhiteSpace(); @@ -385,8 +385,8 @@ public class SilkLexer extends Lexer { try { int _type = LParen; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:183:7: ( '(' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:183:9: '(' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:183:7: ( '(' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:183:9: '(' { match('('); transit(Symbol.EnterParen); @@ -406,8 +406,8 @@ public class SilkLexer extends Lexer { try { int _type = RParen; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:184:7: ( ')' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:184:9: ')' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:184:7: ( ')' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:184:9: ')' { match(')'); transit(Symbol.LeaveParen); @@ -427,8 +427,8 @@ public class SilkLexer extends Lexer { try { int _type = Comma; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:185:6: ( ',' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:185:9: ',' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:185:6: ( ',' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:185:9: ',' { match(','); @@ -447,8 +447,8 @@ public class SilkLexer extends Lexer { try { int _type = Colon; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:186:6: ( ':' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:186:8: ':' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:186:6: ( ':' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:186:8: ':' { match(':'); transit(Symbol.Colon); @@ -468,8 +468,8 @@ public class SilkLexer extends Lexer { try { int _type = Seq; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:189:4: ( '>' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:189:7: '>' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:189:4: ( '>' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:189:7: '>' { match('>'); @@ -488,8 +488,8 @@ public class SilkLexer extends Lexer { try { int _type = TabSeq; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:190:7: ( '|' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:190:9: '|' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:190:7: ( '|' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:190:9: '|' { match('|'); @@ -508,8 +508,8 @@ public class SilkLexer extends Lexer { try { int _type = Star; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:191:5: ( '*' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:191:8: '*' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:191:5: ( '*' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:191:8: '*' { match('*'); @@ -528,8 +528,8 @@ public class SilkLexer extends Lexer { try { int _type = At; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:192:3: ( '@' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:192:6: '@' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:192:3: ( '@' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:192:6: '@' { match('@'); transit(Symbol.At); @@ -549,8 +549,8 @@ public class SilkLexer extends Lexer { try { int _type = Plus; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:193:5: ( '+' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:193:7: '+' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:193:5: ( '+' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:193:7: '+' { match('+'); @@ -569,8 +569,8 @@ public class SilkLexer extends Lexer { try { int _type = LBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:194:9: ( '[' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:194:11: '[' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:194:9: ( '[' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:194:11: '[' { match('['); transit(Symbol.EnterParen); @@ -590,8 +590,8 @@ public class SilkLexer extends Lexer { try { int _type = RBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:195:9: ( ']' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:195:11: ']' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:195:9: ( ']' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:195:11: ']' { match(']'); @@ -610,8 +610,8 @@ public class SilkLexer extends Lexer { try { int _type = Question; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:196:9: ( '?' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:196:11: '?' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:196:9: ( '?' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:196:11: '?' { match('?'); @@ -628,8 +628,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "Digit" public final void mDigit() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:198:15: ( '0' .. '9' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:198:17: '0' .. '9' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:198:15: ( '0' .. '9' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:198:17: '0' .. '9' { matchRange('0','9'); @@ -644,8 +644,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "Letter" public final void mLetter() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:199:16: ( 'A' .. 'F' | 'a' .. 'f' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:199:16: ( 'A' .. 'F' | 'a' .. 'f' ) + // F:\\cygwin\\home\\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(); @@ -668,8 +668,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "HexDigit" public final void mHexDigit() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:200:18: ( Digit | Letter ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:200:18: ( Digit | Letter ) + // F:\\cygwin\\home\\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(); @@ -692,8 +692,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "UnicodeChar" public final void mUnicodeChar() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:201:21: (~ ( '\"' | '\\\\' ) ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:201:23: ~ ( '\"' | '\\\\' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:201:21: (~ ( '\"' | '\\\\' ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:201:23: ~ ( '\"' | '\\\\' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -716,11 +716,11 @@ public class SilkLexer extends Lexer { // $ANTLR start "EscapeSequence" public final void mEscapeSequence() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203: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:203:4: '\\\\' ( '\\\"' | '\\\\' | '/' | '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:203: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:203:4: '\\\\' ( '\\\"' | '\\\\' | '/' | 'b' | 'f' | 'n' | 'r' | 't' | 'u' HexDigit HexDigit HexDigit HexDigit ) { match('\\'); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:9: ( '\\\"' | '\\\\' | '/' | '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:203:9: ( '\\\"' | '\\\\' | '/' | 'b' | 'f' | 'n' | 'r' | 't' | 'u' HexDigit HexDigit HexDigit HexDigit ) int alt5=9; switch ( input.LA(1) ) { case '\"': @@ -777,63 +777,63 @@ public class SilkLexer extends Lexer { switch (alt5) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:10: '\\\"' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:10: '\\\"' { match('\"'); } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:17: '\\\\' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:17: '\\\\' { match('\\'); } break; case 3 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:24: '/' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:24: '/' { match('/'); } break; case 4 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:30: 'b' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:30: 'b' { match('b'); } break; case 5 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:36: 'f' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:36: 'f' { match('f'); } break; case 6 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:42: 'n' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:42: 'n' { match('n'); } break; case 7 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:48: 'r' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:48: 'r' { match('r'); } break; case 8 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:54: 't' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:54: 't' { match('t'); } break; case 9 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:60: 'u' HexDigit HexDigit HexDigit HexDigit + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:203:60: 'u' HexDigit HexDigit HexDigit HexDigit { match('u'); mHexDigit(); @@ -858,7 +858,7 @@ public class SilkLexer extends Lexer { // $ANTLR start "StringChar" public final void mStringChar() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:205:21: ( UnicodeChar | EscapeSequence ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:205:21: ( UnicodeChar | EscapeSequence ) int alt6=2; int LA6_0 = input.LA(1); @@ -876,14 +876,14 @@ public class SilkLexer extends Lexer { } switch (alt6) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:205:24: UnicodeChar + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:205:24: UnicodeChar { mUnicodeChar(); } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:205:38: EscapeSequence + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:205:38: EscapeSequence { mEscapeSequence(); @@ -900,10 +900,10 @@ public class SilkLexer extends Lexer { // $ANTLR start "StringChar_s" public final void mStringChar_s() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:22: ( ( StringChar )* ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:24: ( StringChar )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:22: ( ( StringChar )* ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:24: ( StringChar )* { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:24: ( StringChar )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:24: ( StringChar )* loop7: do { int alt7=2; @@ -916,7 +916,7 @@ public class SilkLexer extends Lexer { switch (alt7) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:24: StringChar + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:206:24: StringChar { mStringChar(); @@ -944,15 +944,15 @@ public class SilkLexer extends Lexer { int _channel = DEFAULT_TOKEN_CHANNEL; Token s=null; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:207:7: ( '\"' s= StringChar_s '\"' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:207:9: '\"' s= StringChar_s '\"' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:207:7: ( '\"' s= StringChar_s '\"' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:207:9: '\"' s= StringChar_s '\"' { match('\"'); int sStart407 = getCharIndex(); mStringChar_s(); s = new CommonToken(input, Token.INVALID_TOKEN_TYPE, Token.DEFAULT_CHANNEL, sStart407, getCharIndex()-1); match('\"'); - setText((s!=null?s.getText():null)); + setText((s!=null?s.getText():null)); transit(Symbol.LeaveValue); } @@ -967,8 +967,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "ScopeIndicator" public final void mScopeIndicator() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:210:24: ( '(' | ')' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:210:24: ( '(' | ')' ) + // F:\\cygwin\\home\\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(); @@ -991,8 +991,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "FlowIndicator" public final void mFlowIndicator() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:211:23: ( '[' | ']' | '{' | '}' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:211:23: ( '[' | ']' | '{' | '}' ) + // F:\\cygwin\\home\\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(); @@ -1015,8 +1015,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "Indicator" public final void mIndicator() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:212:19: ( FlowIndicator | ScopeIndicator | ',' | ':' | '#' | '>' | '|' | '*' | '\\'' | '\"' | '@' | '%' | '\\\\' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:212:19: ( FlowIndicator | ScopeIndicator | ',' | ':' | '#' | '>' | '|' | '*' | '\\'' | '\"' | '@' | '%' | '\\\\' ) + // F:\\cygwin\\home\\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(); @@ -1039,8 +1039,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "PlainUnsafeChar" public final void mPlainUnsafeChar() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:215:25: ( '\"' | '\\\\' | '#' ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:215:25: ( '\"' | '\\\\' | '#' ) + // F:\\cygwin\\home\\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.consume(); @@ -1063,8 +1063,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "PlainSafeKey" public final void mPlainSafeKey() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:217:22: (~ ( PlainUnsafeChar | ScopeIndicator | FlowIndicator | ',' | ':' | '>' | '*' | '|' ) ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:217:24: ~ ( PlainUnsafeChar | ScopeIndicator | FlowIndicator | ',' | ':' | '>' | '*' | '|' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:217:22: (~ ( PlainUnsafeChar | ScopeIndicator | FlowIndicator | ',' | ':' | '>' | '*' | '|' ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:217:24: ~ ( PlainUnsafeChar | ScopeIndicator | FlowIndicator | ',' | ':' | '>' | '*' | '|' ) { if ( (input.LA(1)>='\u0000' && 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(); @@ -1087,8 +1087,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "PlainSafeIn" public final void mPlainSafeIn() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:218:21: (~ ( PlainUnsafeChar | ScopeIndicator | ',' ) ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:218:23: ~ ( PlainUnsafeChar | ScopeIndicator | ',' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:218:21: (~ ( PlainUnsafeChar | ScopeIndicator | ',' ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:218:23: ~ ( PlainUnsafeChar | ScopeIndicator | ',' ) { if ( (input.LA(1)>='\u0000' && 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(); @@ -1111,8 +1111,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "PlainSafeOut" public final void mPlainSafeOut() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:219:22: (~ ( PlainUnsafeChar ) ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:219:24: ~ ( PlainUnsafeChar ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:219:22: (~ ( PlainUnsafeChar ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:219:24: ~ ( PlainUnsafeChar ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='$' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1135,8 +1135,8 @@ public class SilkLexer extends Lexer { // $ANTLR start "NonSpaceChar" public final void mNonSpaceChar() throws RecognitionException { try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:221:22: (~ ( '\"' | '\\\\' | WhiteSpace ) ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:221:24: ~ ( '\"' | '\\\\' | WhiteSpace ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:221:22: (~ ( '\"' | '\\\\' | WhiteSpace ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:221:24: ~ ( '\"' | '\\\\' | WhiteSpace ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\b')||(input.LA(1)>='\n' && input.LA(1)<='\u001F')||input.LA(1)=='!'||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1159,7 +1159,7 @@ public class SilkLexer extends Lexer { // $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:223:2: (~ ( '-' | '+' | '?' | PlainUnsafeChar | WhiteSpace | Indicator ) | {...}? => ( '-' | '+' | ( ':' | '?' ) NonSpaceChar ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:223:2: (~ ( '-' | '+' | '?' | PlainUnsafeChar | WhiteSpace | Indicator ) | {...}? => ( '-' | '+' | ( ':' | '?' ) NonSpaceChar ) ) int alt9=2; int LA9_0 = input.LA(1); @@ -1177,7 +1177,7 @@ public class SilkLexer extends Lexer { } switch (alt9) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:223:5: ~ ( '-' | '+' | '?' | PlainUnsafeChar | WhiteSpace | Indicator ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:223:5: ~ ( '-' | '+' | '?' | PlainUnsafeChar | WhiteSpace | Indicator ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\b')||(input.LA(1)>='\n' && input.LA(1)<='\u001F')||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)>='A' && input.LA(1)<='Z')||(input.LA(1)>='^' && input.LA(1)<='z')||(input.LA(1)>='~' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1192,12 +1192,12 @@ public class SilkLexer extends Lexer { } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:4: {...}? => ( '-' | '+' | ( ':' | '?' ) NonSpaceChar ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:4: {...}? => ( '-' | '+' | ( ':' | '?' ) NonSpaceChar ) { if ( !(( isValue() )) ) { throw new FailedPredicateException(input, "PlainFirst", " isValue() "); } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:22: ( '-' | '+' | ( ':' | '?' ) NonSpaceChar ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:22: ( '-' | '+' | ( ':' | '?' ) NonSpaceChar ) int alt8=3; switch ( input.LA(1) ) { case '-': @@ -1225,21 +1225,21 @@ public class SilkLexer extends Lexer { switch (alt8) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:23: '-' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:23: '-' { match('-'); } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:29: '+' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:29: '+' { match('+'); } break; case 3 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:35: ( ':' | '?' ) NonSpaceChar + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:224:35: ( ':' | '?' ) NonSpaceChar { if ( input.LA(1)==':'||input.LA(1)=='?' ) { input.consume(); @@ -1273,7 +1273,7 @@ public class SilkLexer extends Lexer { try { int _type = PlainOneLine; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:228:2: ({...}? => PlainFirst ( PlainSafeKey )* | {...}? => PlainFirst ( PlainSafeIn )* | {...}? => PlainFirst ( PlainSafeOut )* ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:228:2: ({...}? => PlainFirst ( PlainSafeKey )* | {...}? => PlainFirst ( PlainSafeIn )* | {...}? => PlainFirst ( PlainSafeOut )* ) int alt13=3; int LA13_0 = input.LA(1); @@ -1296,7 +1296,7 @@ public class SilkLexer extends Lexer { throw nvae; } } - else if ( (LA13_0=='-') && (((( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))))) { + else if ( (LA13_0=='-') && (((( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))))) { int LA13_2 = input.LA(2); if ( ((( isKey() )&&( isValue() ))) ) { @@ -1315,7 +1315,7 @@ public class SilkLexer extends Lexer { throw nvae; } } - else if ( (LA13_0=='+') && (((( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) { + else if ( (LA13_0=='+') && (((( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) { int LA13_3 = input.LA(2); if ( ((( isKey() )&&( isValue() ))) ) { @@ -1334,10 +1334,10 @@ public class SilkLexer extends Lexer { throw nvae; } } - else if ( (LA13_0==':'||LA13_0=='?') && (((( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) { + else if ( (LA13_0==':'||LA13_0=='?') && (((( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))))) { int LA13_4 = input.LA(2); - if ( ((LA13_4>='\u0000' && LA13_4<='\b')||(LA13_4>='\n' && LA13_4<='\u001F')||LA13_4=='!'||(LA13_4>='#' && LA13_4<='[')||(LA13_4>=']' && LA13_4<='\uFFFF')) && (((( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))))) { + if ( ((LA13_4>='\u0000' && LA13_4<='\b')||(LA13_4>='\n' && LA13_4<='\u001F')||LA13_4=='!'||(LA13_4>='#' && LA13_4<='[')||(LA13_4>=']' && LA13_4<='\uFFFF')) && (((( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))))) { int LA13_8 = input.LA(3); if ( ((( isKey() )&&( isValue() ))) ) { @@ -1371,13 +1371,13 @@ public class SilkLexer extends Lexer { } switch (alt13) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:228:4: {...}? => PlainFirst ( PlainSafeKey )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:228:4: {...}? => PlainFirst ( PlainSafeKey )* { if ( !(( isKey() )) ) { throw new FailedPredicateException(input, "PlainOneLine", " isKey() "); } mPlainFirst(); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:228:32: ( PlainSafeKey )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:228:32: ( PlainSafeKey )* loop10: do { int alt10=2; @@ -1390,7 +1390,7 @@ public class SilkLexer extends Lexer { switch (alt10) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:228:32: PlainSafeKey + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:228:32: PlainSafeKey { mPlainSafeKey(); @@ -1407,13 +1407,13 @@ public class SilkLexer extends Lexer { } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:229:5: {...}? => PlainFirst ( PlainSafeIn )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:229:5: {...}? => PlainFirst ( PlainSafeIn )* { if ( !(( isInValue() )) ) { throw new FailedPredicateException(input, "PlainOneLine", " isInValue() "); } mPlainFirst(); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:229:37: ( PlainSafeIn )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:229:37: ( PlainSafeIn )* loop11: do { int alt11=2; @@ -1426,7 +1426,7 @@ public class SilkLexer extends Lexer { switch (alt11) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:229:37: PlainSafeIn + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:229:37: PlainSafeIn { mPlainSafeIn(); @@ -1443,13 +1443,13 @@ public class SilkLexer extends Lexer { } break; case 3 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:230:5: {...}? => PlainFirst ( PlainSafeOut )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:230:5: {...}? => PlainFirst ( PlainSafeOut )* { if ( !(( isOutValue() )) ) { throw new FailedPredicateException(input, "PlainOneLine", " isOutValue() "); } mPlainFirst(); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:230:38: ( PlainSafeOut )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:230:38: ( PlainSafeOut )* loop12: do { int alt12=2; @@ -1462,7 +1462,7 @@ public class SilkLexer extends Lexer { switch (alt12) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:230:38: PlainSafeOut + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:230:38: PlainSafeOut { mPlainSafeOut(); @@ -1493,7 +1493,7 @@ public class SilkLexer extends Lexer { try { int _type = JSON; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:235:2: ({...}? => '{' | {...}? => '[' ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:235:2: ({...}? => '{' | {...}? => '[' ) int alt14=2; int LA14_0 = input.LA(1); @@ -1511,7 +1511,7 @@ public class SilkLexer extends Lexer { } switch (alt14) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:235:4: {...}? => '{' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:235:4: {...}? => '{' { if ( !(( isValue() )) ) { throw new FailedPredicateException(input, "JSON", " isValue() "); @@ -1531,7 +1531,7 @@ public class SilkLexer extends Lexer { } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:246:4: {...}? => '[' + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:246:4: {...}? => '[' { if ( !(( isValue() )) ) { throw new FailedPredicateException(input, "JSON", " isValue() "); @@ -1565,13 +1565,13 @@ public class SilkLexer extends Lexer { try { int _type = Separation; int _channel = DEFAULT_TOKEN_CHANNEL; - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:11: ({...}? => ( WhiteSpace )+ ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:13: {...}? => ( WhiteSpace )+ + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:11: ({...}? => ( WhiteSpace )+ ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:13: {...}? => ( WhiteSpace )+ { if ( !(( !isHead() )) ) { throw new FailedPredicateException(input, "Separation", " !isHead() "); } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:31: ( WhiteSpace )+ + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:31: ( WhiteSpace )+ int cnt15=0; loop15: do { @@ -1585,7 +1585,7 @@ public class SilkLexer extends Lexer { switch (alt15) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:31: WhiteSpace + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:259:31: WhiteSpace { mWhiteSpace(); @@ -1614,145 +1614,145 @@ public class SilkLexer extends Lexer { // $ANTLR end "Separation" public void mTokens() throws RecognitionException { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:8: ( LineComment | NodeIndent | FunctionIndent | BlankLine | LParen | RParen | Comma | Colon | Seq | TabSeq | Star | At | Plus | LBracket | RBracket | Question | String | PlainOneLine | JSON | Separation ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:8: ( LineComment | NodeIndent | FunctionIndent | BlankLine | LParen | RParen | Comma | Colon | Seq | TabSeq | Star | At | Plus | LBracket | RBracket | Question | String | PlainOneLine | JSON | Separation ) int alt16=20; alt16 = dfa16.predict(input); switch (alt16) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:10: LineComment + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:10: LineComment { mLineComment(); } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:22: NodeIndent + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:22: NodeIndent { mNodeIndent(); } break; case 3 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:33: FunctionIndent + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:33: FunctionIndent { mFunctionIndent(); } break; case 4 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:48: BlankLine + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:48: BlankLine { mBlankLine(); } break; case 5 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:58: LParen + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:58: LParen { mLParen(); } break; case 6 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:65: RParen + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:65: RParen { mRParen(); } break; case 7 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:72: Comma + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:72: Comma { mComma(); } break; case 8 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:78: Colon + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:78: Colon { mColon(); } break; case 9 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:84: Seq + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:84: Seq { mSeq(); } break; case 10 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:88: TabSeq + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:88: TabSeq { mTabSeq(); } break; case 11 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:95: Star + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:95: Star { mStar(); } break; case 12 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:100: At + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:100: At { mAt(); } break; case 13 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:103: Plus + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:103: Plus { mPlus(); } break; case 14 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:108: LBracket + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:108: LBracket { mLBracket(); } break; case 15 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:117: RBracket + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:117: RBracket { mRBracket(); } break; case 16 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:126: Question + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:126: Question { mQuestion(); } break; case 17 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:135: String + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:135: String { mString(); } break; case 18 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:142: PlainOneLine + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:142: PlainOneLine { mPlainOneLine(); } break; case 19 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:155: JSON + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:155: JSON { mJSON(); } break; case 20 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:160: Separation + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:1:160: Separation { mSeparation(); @@ -1874,11 +1874,11 @@ public class SilkLexer extends Lexer { int index16_3 = input.index(); input.rewind(); s = -1; - if ( ((LA16_3>='\u0000' && LA16_3<='!')||(LA16_3>='$' && LA16_3<='\'')||LA16_3=='+'||(LA16_3>='-' && LA16_3<='9')||(LA16_3>=';' && LA16_3<='=')||(LA16_3>='?' && LA16_3<='Z')||(LA16_3>='^' && LA16_3<='z')||(LA16_3>='~' && LA16_3<='\uFFFF')) && (((( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) {s = 25;} + if ( ((LA16_3>='\u0000' && LA16_3<='!')||(LA16_3>='$' && LA16_3<='\'')||LA16_3=='+'||(LA16_3>='-' && LA16_3<='9')||(LA16_3>=';' && LA16_3<='=')||(LA16_3>='?' && LA16_3<='Z')||(LA16_3>='^' && LA16_3<='z')||(LA16_3>='~' && LA16_3<='\uFFFF')) && (((( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))))) {s = 25;} else if ( ((LA16_3>='(' && LA16_3<=')')||LA16_3==',') && ((( isOutValue() )&&( isValue() )))) {s = 26;} - else if ( (LA16_3=='*'||LA16_3==':'||LA16_3=='>'||LA16_3=='['||LA16_3==']'||(LA16_3>='{' && LA16_3<='}')) && (((( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))))) {s = 27;} + else if ( (LA16_3=='*'||LA16_3==':'||LA16_3=='>'||LA16_3=='['||LA16_3==']'||(LA16_3>='{' && LA16_3<='}')) && (((( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))))) {s = 27;} else s = 24; @@ -1916,7 +1916,7 @@ public class SilkLexer extends Lexer { s = -1; if ( ((LA16_14>='\u0000' && LA16_14<='!')||(LA16_14>='$' && LA16_14<='\'')||LA16_14=='+'||(LA16_14>='-' && LA16_14<='9')||(LA16_14>=';' && LA16_14<='=')||(LA16_14>='?' && LA16_14<='Z')||(LA16_14>='^' && LA16_14<='z')||(LA16_14>='~' && LA16_14<='\uFFFF')) && (((( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) {s = 25;} - else if ( (LA16_14=='*'||LA16_14==':'||LA16_14=='>'||LA16_14=='['||LA16_14==']'||(LA16_14>='{' && LA16_14<='}')) && (((( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))))) {s = 27;} + else if ( (LA16_14=='*'||LA16_14==':'||LA16_14=='>'||LA16_14=='['||LA16_14==']'||(LA16_14>='{' && LA16_14<='}')) && (((( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))))) {s = 27;} else if ( ((LA16_14>='(' && LA16_14<=')')||LA16_14==',') && ((( isOutValue() )&&( isValue() )))) {s = 26;} @@ -1948,7 +1948,7 @@ public class SilkLexer extends Lexer { int index16_17 = input.index(); input.rewind(); s = -1; - if ( ((LA16_17>='\u0000' && LA16_17<='\b')||(LA16_17>='\n' && LA16_17<='\u001F')||LA16_17=='!'||(LA16_17>='#' && LA16_17<='[')||(LA16_17>=']' && LA16_17<='\uFFFF')) && (((( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))))) {s = 29;} + if ( ((LA16_17>='\u0000' && LA16_17<='\b')||(LA16_17>='\n' && LA16_17<='\u001F')||LA16_17=='!'||(LA16_17>='#' && LA16_17<='[')||(LA16_17>=']' && LA16_17<='\uFFFF')) && (((( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) {s = 29;} else s = 33; @@ -1965,7 +1965,7 @@ public class SilkLexer extends Lexer { s = -1; if ( (( isHead() )) ) {s = 22;} - else if ( (((( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() )))) ) {s = 29;} + else if ( (((( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() )))) ) {s = 29;} input.seek(index16_24); @@ -1993,9 +1993,9 @@ public class SilkLexer extends Lexer { int index16_31 = input.index(); input.rewind(); s = -1; - if ( (!((((( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() )))))) ) {s = 36;} + if ( (!((((( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() )))))) ) {s = 36;} - else if ( (((( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() )))) ) {s = 29;} + else if ( (((( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() )))) ) {s = 29;} input.seek(index16_31); @@ -2023,7 +2023,7 @@ public class SilkLexer extends Lexer { int index16_10 = input.index(); input.rewind(); s = -1; - if ( ((LA16_10>='\u0000' && LA16_10<='\b')||(LA16_10>='\n' && LA16_10<='\u001F')||LA16_10=='!'||(LA16_10>='#' && LA16_10<='[')||(LA16_10>=']' && LA16_10<='\uFFFF')) && (((( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) {s = 29;} + if ( ((LA16_10>='\u0000' && LA16_10<='\b')||(LA16_10>='\n' && LA16_10<='\u001F')||LA16_10=='!'||(LA16_10>='#' && LA16_10<='[')||(LA16_10>=']' && LA16_10<='\uFFFF')) && (((( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) {s = 29;} else s = 30; @@ -2042,7 +2042,7 @@ public class SilkLexer extends Lexer { else if ( (LA16_0==' ') && ((( !isHead() )||( isHead() )))) {s = 2;} - else if ( (LA16_0=='-') && (((( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||( isHead() )||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) {s = 3;} + else if ( (LA16_0=='-') && (((( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||( isHead() )||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isInValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))||(( isOutValue() )&&( isValue() ))||(( isKey() )&&( isValue() ))))) {s = 3;} else if ( (LA16_0=='@') ) {s = 4;} diff --git a/src/main/java/org/xerial/silk/impl/SilkParser.java b/src/main/java/org/xerial/silk/impl/SilkParser.java index 07a5c31..74c8e3b 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 c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g 2009-04-23 01:32:21 +// $ANTLR 3.1.1 F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g 2009-05-20 16:38:40 /*-------------------------------------------------------------------------- * Copyright 2009 Taro L. Saito @@ -110,7 +110,7 @@ public class SilkParser extends Parser { } public String[] getTokenNames() { return SilkParser.tokenNames; } - public String getGrammarFileName() { return "c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g"; } + public String getGrammarFileName() { return "F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g"; } public static class silkFile_return extends ParserRuleReturnScope { @@ -119,7 +119,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "silkFile" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:1: silkFile : ( silkLine )* -> ^( Silk ( silkLine )* ) ; + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266: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); @@ -131,10 +131,10 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_silkLine=new RewriteRuleSubtreeStream(adaptor,"rule silkLine"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:9: ( ( silkLine )* -> ^( Silk ( silkLine )* ) ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:11: ( silkLine )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:9: ( ( silkLine )* -> ^( Silk ( silkLine )* ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:11: ( silkLine )* { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:11: ( silkLine )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:11: ( silkLine )* loop1: do { int alt1=2; @@ -147,9 +147,9 @@ public class SilkParser extends Parser { switch (alt1) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:11: silkLine + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:11: silkLine { - pushFollow(FOLLOW_silkLine_in_silkFile861); + pushFollow(FOLLOW_silkLine_in_silkFile856); silkLine1=silkLine(); state._fsp--; @@ -178,12 +178,12 @@ public class SilkParser extends Parser { root_0 = (Object)adaptor.nil(); // 266:21: -> ^( Silk ( silkLine )* ) { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:24: ^( Silk ( silkLine )* ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:24: ^( Silk ( silkLine )* ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(Silk, "Silk"), root_1); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:31: ( silkLine )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:266:31: ( silkLine )* while ( stream_silkLine.hasNext() ) { adaptor.addChild(root_1, stream_silkLine.nextTree()); @@ -222,7 +222,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "silkLine" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:269:1: silkLine : ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | LineComment | WhiteSpace -> BlankLine ); + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:269:1: silkLine : ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | LineComment | WhiteSpace -> BlankLine ); public final SilkParser.silkLine_return silkLine() throws RecognitionException { SilkParser.silkLine_return retval = new SilkParser.silkLine_return(); retval.start = input.LT(1); @@ -246,17 +246,78 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_NodeIndent=new RewriteRuleTokenStream(adaptor,"token NodeIndent"); RewriteRuleSubtreeStream stream_nodeItem=new RewriteRuleSubtreeStream(adaptor,"rule nodeItem"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:270:2: ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | LineComment | WhiteSpace -> BlankLine ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:270:2: ( NodeIndent nodeItem -> ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | LineComment | WhiteSpace -> BlankLine ) int alt2=5; - alt2 = dfa2.predict(input); + switch ( input.LA(1) ) { + case NodeIndent: + { + switch ( input.LA(2) ) { + case EOF: + case WhiteSpace: + case LineComment: + case NodeIndent: + case FunctionIndent: + case LParen: + case Colon: + case Seq: + case TabSeq: + case Star: + case Plus: + case Question: + { + alt2=2; + } + break; + case At: + { + alt2=3; + } + break; + case String: + case PlainOneLine: + { + alt2=1; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 2, 1, input); + + throw nvae; + } + + } + break; + case FunctionIndent: + { + alt2=3; + } + break; + case LineComment: + { + alt2=4; + } + break; + case WhiteSpace: + { + alt2=5; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 2, 0, input); + + throw nvae; + } + switch (alt2) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:270:4: NodeIndent nodeItem + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:270:4: NodeIndent nodeItem { - NodeIndent2=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_silkLine882); + NodeIndent2=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_silkLine877); stream_NodeIndent.add(NodeIndent2); - pushFollow(FOLLOW_nodeItem_in_silkLine884); + pushFollow(FOLLOW_nodeItem_in_silkLine879); nodeItem3=nodeItem(); state._fsp--; @@ -265,7 +326,7 @@ public class SilkParser extends Parser { // AST REWRITE - // elements: nodeItem, NodeIndent + // elements: NodeIndent, nodeItem // token labels: // rule labels: retval // token list labels: @@ -276,7 +337,7 @@ public class SilkParser extends Parser { root_0 = (Object)adaptor.nil(); // 270:24: -> ^( SilkNode NodeIndent nodeItem ) { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:270:27: ^( SilkNode NodeIndent nodeItem ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:270:27: ^( SilkNode NodeIndent nodeItem ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(SilkNode, "SilkNode"), root_1); @@ -293,11 +354,11 @@ public class SilkParser extends Parser { } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:271:4: noNameNode + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:271:4: noNameNode { root_0 = (Object)adaptor.nil(); - pushFollow(FOLLOW_noNameNode_in_silkLine899); + pushFollow(FOLLOW_noNameNode_in_silkLine894); noNameNode4=noNameNode(); state._fsp--; @@ -307,11 +368,11 @@ public class SilkParser extends Parser { } break; case 3 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:272:4: function + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:272:4: function { root_0 = (Object)adaptor.nil(); - pushFollow(FOLLOW_function_in_silkLine905); + pushFollow(FOLLOW_function_in_silkLine900); function5=function(); state._fsp--; @@ -321,11 +382,11 @@ public class SilkParser extends Parser { } break; case 4 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:276:4: LineComment + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:276:4: LineComment { root_0 = (Object)adaptor.nil(); - LineComment6=(Token)match(input,LineComment,FOLLOW_LineComment_in_silkLine913); + LineComment6=(Token)match(input,LineComment,FOLLOW_LineComment_in_silkLine908); LineComment6_tree = (Object)adaptor.create(LineComment6); adaptor.addChild(root_0, LineComment6_tree); @@ -333,9 +394,9 @@ public class SilkParser extends Parser { } break; case 5 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:4: WhiteSpace + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:279:4: WhiteSpace { - WhiteSpace7=(Token)match(input,WhiteSpace,FOLLOW_WhiteSpace_in_silkLine920); + WhiteSpace7=(Token)match(input,WhiteSpace,FOLLOW_WhiteSpace_in_silkLine915); stream_WhiteSpace.add(WhiteSpace7); @@ -385,7 +446,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "nodeName" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:282:1: fragment nodeName : ( PlainOneLine | String ); + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:282: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); @@ -397,8 +458,8 @@ public class SilkParser extends Parser { Object set8_tree=null; try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:283:9: ( PlainOneLine | String ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:283:9: ( PlainOneLine | String ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g: { root_0 = (Object)adaptor.nil(); @@ -440,7 +501,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "nodeValue" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:285:1: fragment nodeValue : ( function_i -> ^( Function function_i ) | ( PlainOneLine | String ) -> Value[$nodeValue.text] | JSON ); + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:285: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); @@ -460,7 +521,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 { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:287:2: ( function_i -> ^( Function function_i ) | ( PlainOneLine | String ) -> Value[$nodeValue.text] | JSON ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:287:2: ( function_i -> ^( Function function_i ) | ( PlainOneLine | String ) -> Value[$nodeValue.text] | JSON ) int alt4=3; switch ( input.LA(1) ) { case At: @@ -488,9 +549,9 @@ public class SilkParser extends Parser { switch (alt4) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:287:4: function_i + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:287:4: function_i { - pushFollow(FOLLOW_function_i_in_nodeValue950); + pushFollow(FOLLOW_function_i_in_nodeValue945); function_i9=function_i(); state._fsp--; @@ -510,7 +571,7 @@ public class SilkParser extends Parser { root_0 = (Object)adaptor.nil(); // 287:15: -> ^( Function function_i ) { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:287:18: ^( Function function_i ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:287:18: ^( Function function_i ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(Function, "Function"), root_1); @@ -526,9 +587,9 @@ public class SilkParser extends Parser { } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:4: ( PlainOneLine | String ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:4: ( PlainOneLine | String ) { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:4: ( PlainOneLine | String ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:4: ( PlainOneLine | String ) int alt3=2; int LA3_0 = input.LA(1); @@ -546,18 +607,18 @@ public class SilkParser extends Parser { } switch (alt3) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:5: PlainOneLine + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:5: PlainOneLine { - PlainOneLine10=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_nodeValue964); + PlainOneLine10=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_nodeValue959); stream_PlainOneLine.add(PlainOneLine10); } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:20: String + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:288:20: String { - String11=(Token)match(input,String,FOLLOW_String_in_nodeValue968); + String11=(Token)match(input,String,FOLLOW_String_in_nodeValue963); stream_String.add(String11); @@ -588,11 +649,11 @@ public class SilkParser extends Parser { } break; case 3 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:289:4: JSON + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:289:4: JSON { root_0 = (Object)adaptor.nil(); - JSON12=(Token)match(input,JSON,FOLLOW_JSON_in_nodeValue979); + JSON12=(Token)match(input,JSON,FOLLOW_JSON_in_nodeValue974); JSON12_tree = (Object)adaptor.create(JSON12); adaptor.addChild(root_0, JSON12_tree); @@ -625,7 +686,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "noNameNode" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:293:1: fragment noNameNode : 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:293: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); @@ -655,29 +716,33 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_plural=new RewriteRuleSubtreeStream(adaptor,"rule plural"); RewriteRuleSubtreeStream stream_nodeValue=new RewriteRuleSubtreeStream(adaptor,"rule nodeValue"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294: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:294:13: NodeIndent ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294: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:294:13: NodeIndent ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? { - NodeIndent13=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_noNameNode993); + NodeIndent13=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_noNameNode988); stream_NodeIndent.add(NodeIndent13); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:24: ( LParen attributeList RParen )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:24: ( LParen attributeList RParen )? int alt5=2; - alt5 = dfa5.predict(input); + int LA5_0 = input.LA(1); + + if ( (LA5_0==LParen) ) { + alt5=1; + } switch (alt5) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:25: LParen attributeList RParen + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:25: LParen attributeList RParen { - LParen14=(Token)match(input,LParen,FOLLOW_LParen_in_noNameNode996); + LParen14=(Token)match(input,LParen,FOLLOW_LParen_in_noNameNode991); stream_LParen.add(LParen14); - pushFollow(FOLLOW_attributeList_in_noNameNode998); + pushFollow(FOLLOW_attributeList_in_noNameNode993); attributeList15=attributeList(); state._fsp--; stream_attributeList.add(attributeList15.getTree()); - RParen16=(Token)match(input,RParen,FOLLOW_RParen_in_noNameNode1000); + RParen16=(Token)match(input,RParen,FOLLOW_RParen_in_noNameNode995); stream_RParen.add(RParen16); @@ -686,14 +751,18 @@ public class SilkParser extends Parser { } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:55: ( plural )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:55: ( plural )? int alt6=2; - alt6 = dfa6.predict(input); + int LA6_0 = input.LA(1); + + if ( ((LA6_0>=Seq && LA6_0<=Star)||LA6_0==Plus||LA6_0==Question) ) { + alt6=1; + } switch (alt6) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:55: plural + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:55: plural { - pushFollow(FOLLOW_plural_in_noNameNode1004); + pushFollow(FOLLOW_plural_in_noNameNode999); plural17=plural(); state._fsp--; @@ -705,7 +774,7 @@ public class SilkParser extends Parser { } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:63: ( Colon nodeValue )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:63: ( Colon nodeValue )? int alt7=2; int LA7_0 = input.LA(1); @@ -714,12 +783,12 @@ public class SilkParser extends Parser { } switch (alt7) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:64: Colon nodeValue + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:294:64: Colon nodeValue { - Colon18=(Token)match(input,Colon,FOLLOW_Colon_in_noNameNode1008); + Colon18=(Token)match(input,Colon,FOLLOW_Colon_in_noNameNode1003); stream_Colon.add(Colon18); - pushFollow(FOLLOW_nodeValue_in_noNameNode1010); + pushFollow(FOLLOW_nodeValue_in_noNameNode1005); nodeValue19=nodeValue(); state._fsp--; @@ -734,7 +803,7 @@ public class SilkParser extends Parser { // AST REWRITE - // elements: attributeList, NodeIndent, nodeValue, plural + // elements: nodeValue, NodeIndent, attributeList, plural // token labels: // rule labels: retval // token list labels: @@ -745,25 +814,25 @@ public class SilkParser extends Parser { root_0 = (Object)adaptor.nil(); // 295:2: -> ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295:5: ^( SilkNode NodeIndent ( attributeList )? ( plural )? ( nodeValue )? ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295: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()); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295:27: ( attributeList )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295:27: ( attributeList )? if ( stream_attributeList.hasNext() ) { adaptor.addChild(root_1, stream_attributeList.nextTree()); } stream_attributeList.reset(); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295:42: ( plural )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295:42: ( plural )? if ( stream_plural.hasNext() ) { adaptor.addChild(root_1, stream_plural.nextTree()); } stream_plural.reset(); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295:50: ( nodeValue )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:295:50: ( nodeValue )? if ( stream_nodeValue.hasNext() ) { adaptor.addChild(root_1, stream_nodeValue.nextTree()); @@ -802,7 +871,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "nodeItem" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:298:1: fragment nodeItem : 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:298: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); @@ -835,23 +904,27 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_plural=new RewriteRuleSubtreeStream(adaptor,"rule plural"); RewriteRuleSubtreeStream stream_nodeValue=new RewriteRuleSubtreeStream(adaptor,"rule nodeValue"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299: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:299:11: nodeName ( dataType )? ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299: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:299:11: nodeName ( dataType )? ( LParen attributeList RParen )? ( plural )? ( Colon nodeValue )? { - pushFollow(FOLLOW_nodeName_in_nodeItem1043); + pushFollow(FOLLOW_nodeName_in_nodeItem1038); nodeName20=nodeName(); state._fsp--; stream_nodeName.add(nodeName20.getTree()); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:20: ( dataType )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:20: ( dataType )? int alt8=2; - alt8 = dfa8.predict(input); + int LA8_0 = input.LA(1); + + if ( (LA8_0==LBracket) ) { + alt8=1; + } switch (alt8) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:20: dataType + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:20: dataType { - pushFollow(FOLLOW_dataType_in_nodeItem1045); + pushFollow(FOLLOW_dataType_in_nodeItem1040); dataType21=dataType(); state._fsp--; @@ -863,23 +936,27 @@ public class SilkParser extends Parser { } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:31: ( LParen attributeList RParen )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:31: ( LParen attributeList RParen )? int alt9=2; - alt9 = dfa9.predict(input); + int LA9_0 = input.LA(1); + + if ( (LA9_0==LParen) ) { + alt9=1; + } switch (alt9) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:32: LParen attributeList RParen + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:32: LParen attributeList RParen { - LParen22=(Token)match(input,LParen,FOLLOW_LParen_in_nodeItem1050); + LParen22=(Token)match(input,LParen,FOLLOW_LParen_in_nodeItem1045); stream_LParen.add(LParen22); - pushFollow(FOLLOW_attributeList_in_nodeItem1052); + pushFollow(FOLLOW_attributeList_in_nodeItem1047); attributeList23=attributeList(); state._fsp--; stream_attributeList.add(attributeList23.getTree()); - RParen24=(Token)match(input,RParen,FOLLOW_RParen_in_nodeItem1054); + RParen24=(Token)match(input,RParen,FOLLOW_RParen_in_nodeItem1049); stream_RParen.add(RParen24); @@ -888,14 +965,18 @@ public class SilkParser extends Parser { } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:62: ( plural )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:62: ( plural )? int alt10=2; - alt10 = dfa10.predict(input); + int LA10_0 = input.LA(1); + + if ( ((LA10_0>=Seq && LA10_0<=Star)||LA10_0==Plus||LA10_0==Question) ) { + alt10=1; + } switch (alt10) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:62: plural + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:62: plural { - pushFollow(FOLLOW_plural_in_nodeItem1058); + pushFollow(FOLLOW_plural_in_nodeItem1053); plural25=plural(); state._fsp--; @@ -907,7 +988,7 @@ public class SilkParser extends Parser { } - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:70: ( Colon nodeValue )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:70: ( Colon nodeValue )? int alt11=2; int LA11_0 = input.LA(1); @@ -916,12 +997,12 @@ public class SilkParser extends Parser { } switch (alt11) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:71: Colon nodeValue + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:299:71: Colon nodeValue { - Colon26=(Token)match(input,Colon,FOLLOW_Colon_in_nodeItem1062); + Colon26=(Token)match(input,Colon,FOLLOW_Colon_in_nodeItem1057); stream_Colon.add(Colon26); - pushFollow(FOLLOW_nodeValue_in_nodeItem1064); + pushFollow(FOLLOW_nodeValue_in_nodeItem1059); nodeValue27=nodeValue(); state._fsp--; @@ -936,7 +1017,7 @@ public class SilkParser extends Parser { // AST REWRITE - // elements: plural, attributeList, dataType, nodeValue + // elements: plural, dataType, nodeValue, attributeList // token labels: // rule labels: retval // token list labels: @@ -948,25 +1029,25 @@ public class SilkParser extends Parser { // 300:2: -> Name[$nodeName.text.trim()] ( dataType )? ( attributeList )? ( plural )? ( nodeValue )? { adaptor.addChild(root_0, (Object)adaptor.create(Name, (nodeName20!=null?input.toString(nodeName20.start,nodeName20.stop):null).trim())); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:300:33: ( dataType )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:300:33: ( dataType )? if ( stream_dataType.hasNext() ) { adaptor.addChild(root_0, stream_dataType.nextTree()); } stream_dataType.reset(); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:300:43: ( attributeList )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:300:43: ( attributeList )? if ( stream_attributeList.hasNext() ) { adaptor.addChild(root_0, stream_attributeList.nextTree()); } stream_attributeList.reset(); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:300:58: ( plural )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:300:58: ( plural )? if ( stream_plural.hasNext() ) { adaptor.addChild(root_0, stream_plural.nextTree()); } stream_plural.reset(); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:300:66: ( nodeValue )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:300:66: ( nodeValue )? if ( stream_nodeValue.hasNext() ) { adaptor.addChild(root_0, stream_nodeValue.nextTree()); @@ -1002,7 +1083,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "dataType" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:303:1: fragment dataType : LBracket dataTypeName RBracket ; + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:303: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); @@ -1018,19 +1099,19 @@ public class SilkParser extends Parser { Object RBracket30_tree=null; try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:304:9: ( LBracket dataTypeName RBracket ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:304:11: LBracket dataTypeName RBracket + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:304:9: ( LBracket dataTypeName RBracket ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:304:11: LBracket dataTypeName RBracket { root_0 = (Object)adaptor.nil(); - LBracket28=(Token)match(input,LBracket,FOLLOW_LBracket_in_dataType1097); - pushFollow(FOLLOW_dataTypeName_in_dataType1100); + LBracket28=(Token)match(input,LBracket,FOLLOW_LBracket_in_dataType1092); + pushFollow(FOLLOW_dataTypeName_in_dataType1095); dataTypeName29=dataTypeName(); state._fsp--; adaptor.addChild(root_0, dataTypeName29.getTree()); - RBracket30=(Token)match(input,RBracket,FOLLOW_RBracket_in_dataType1102); + RBracket30=(Token)match(input,RBracket,FOLLOW_RBracket_in_dataType1097); } @@ -1058,7 +1139,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "dataTypeName" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:307:1: fragment dataTypeName : PlainOneLine -> DataType[$dataTypeName.text] ; + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:307: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); @@ -1071,10 +1152,10 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_PlainOneLine=new RewriteRuleTokenStream(adaptor,"token PlainOneLine"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:308:13: ( PlainOneLine -> DataType[$dataTypeName.text] ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:308:15: PlainOneLine + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:308:13: ( PlainOneLine -> DataType[$dataTypeName.text] ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:308:15: PlainOneLine { - PlainOneLine31=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_dataTypeName1115); + PlainOneLine31=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_dataTypeName1110); stream_PlainOneLine.add(PlainOneLine31); @@ -1122,7 +1203,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "attributeList" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:312:1: fragment attributeList : attributeItem ( Comma attributeItem )* ; + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:312: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); @@ -1138,18 +1219,18 @@ public class SilkParser extends Parser { Object Comma33_tree=null; try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:14: ( attributeItem ( Comma attributeItem )* ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:16: attributeItem ( Comma attributeItem )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:14: ( attributeItem ( Comma attributeItem )* ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:16: attributeItem ( Comma attributeItem )* { root_0 = (Object)adaptor.nil(); - pushFollow(FOLLOW_attributeItem_in_attributeList1135); + pushFollow(FOLLOW_attributeItem_in_attributeList1130); attributeItem32=attributeItem(); state._fsp--; adaptor.addChild(root_0, attributeItem32.getTree()); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:30: ( Comma attributeItem )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:30: ( Comma attributeItem )* loop12: do { int alt12=2; @@ -1162,10 +1243,10 @@ public class SilkParser extends Parser { switch (alt12) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:31: Comma attributeItem + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:313:31: Comma attributeItem { - Comma33=(Token)match(input,Comma,FOLLOW_Comma_in_attributeList1138); - pushFollow(FOLLOW_attributeItem_in_attributeList1141); + Comma33=(Token)match(input,Comma,FOLLOW_Comma_in_attributeList1133); + pushFollow(FOLLOW_attributeItem_in_attributeList1136); attributeItem34=attributeItem(); state._fsp--; @@ -1207,7 +1288,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "attributeItem" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:315:1: fragment attributeItem : nodeItem -> ^( SilkNode nodeItem ) ; + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:315: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); @@ -1219,10 +1300,10 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_nodeItem=new RewriteRuleSubtreeStream(adaptor,"rule nodeItem"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:316:14: ( nodeItem -> ^( SilkNode nodeItem ) ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:316:16: nodeItem + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:316:14: ( nodeItem -> ^( SilkNode nodeItem ) ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:316:16: nodeItem { - pushFollow(FOLLOW_nodeItem_in_attributeItem1154); + pushFollow(FOLLOW_nodeItem_in_attributeItem1149); nodeItem35=nodeItem(); state._fsp--; @@ -1242,7 +1323,7 @@ public class SilkParser extends Parser { root_0 = (Object)adaptor.nil(); // 316:25: -> ^( SilkNode nodeItem ) { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:316:28: ^( SilkNode nodeItem ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:316:28: ^( SilkNode nodeItem ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(SilkNode, "SilkNode"), root_1); @@ -1281,7 +1362,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "seqseq" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:318:1: fragment seqseq : Seq Seq ; + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:318: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); @@ -1295,16 +1376,16 @@ public class SilkParser extends Parser { Object Seq37_tree=null; try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:7: ( Seq Seq ) - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:9: Seq Seq + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:7: ( Seq Seq ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:319:9: Seq Seq { root_0 = (Object)adaptor.nil(); - Seq36=(Token)match(input,Seq,FOLLOW_Seq_in_seqseq1171); + Seq36=(Token)match(input,Seq,FOLLOW_Seq_in_seqseq1166); Seq36_tree = (Object)adaptor.create(Seq36); adaptor.addChild(root_0, Seq36_tree); - Seq37=(Token)match(input,Seq,FOLLOW_Seq_in_seqseq1173); + Seq37=(Token)match(input,Seq,FOLLOW_Seq_in_seqseq1168); Seq37_tree = (Object)adaptor.create(Seq37); adaptor.addChild(root_0, Seq37_tree); @@ -1335,7 +1416,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "plural" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:321: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\"] ); + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:321: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); @@ -1362,14 +1443,59 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_Seq=new RewriteRuleTokenStream(adaptor,"token Seq"); RewriteRuleSubtreeStream stream_seqseq=new RewriteRuleSubtreeStream(adaptor,"rule seqseq"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:323: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\"] ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:323: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 ( input.LA(1) ) { + case Star: + { + alt13=1; + } + break; + case Plus: + { + alt13=2; + } + break; + case Question: + { + alt13=3; + } + break; + case Seq: + { + int LA13_4 = input.LA(2); + + if ( (LA13_4==Seq) ) { + alt13=4; + } + else if ( (LA13_4==EOF||LA13_4==WhiteSpace||(LA13_4>=LineComment && LA13_4<=FunctionIndent)||(LA13_4>=RParen && LA13_4<=Colon)) ) { + alt13=5; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 13, 4, input); + + throw nvae; + } + } + break; + case TabSeq: + { + alt13=6; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 13, 0, input); + + throw nvae; + } + switch (alt13) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:323:4: Star + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:323:4: Star { - Star38=(Token)match(input,Star,FOLLOW_Star_in_plural1184); + Star38=(Token)match(input,Star,FOLLOW_Star_in_plural1179); stream_Star.add(Star38); @@ -1394,9 +1520,9 @@ public class SilkParser extends Parser { } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:324:4: Plus + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:324:4: Plus { - Plus39=(Token)match(input,Plus,FOLLOW_Plus_in_plural1194); + Plus39=(Token)match(input,Plus,FOLLOW_Plus_in_plural1189); stream_Plus.add(Plus39); @@ -1421,9 +1547,9 @@ public class SilkParser extends Parser { } break; case 3 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:325:4: Question + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:325:4: Question { - Question40=(Token)match(input,Question,FOLLOW_Question_in_plural1204); + Question40=(Token)match(input,Question,FOLLOW_Question_in_plural1199); stream_Question.add(Question40); @@ -1448,9 +1574,9 @@ public class SilkParser extends Parser { } break; case 4 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:326:4: seqseq + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:326:4: seqseq { - pushFollow(FOLLOW_seqseq_in_plural1214); + pushFollow(FOLLOW_seqseq_in_plural1209); seqseq41=seqseq(); state._fsp--; @@ -1478,9 +1604,9 @@ public class SilkParser extends Parser { } break; case 5 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:327:4: Seq + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:327:4: Seq { - Seq42=(Token)match(input,Seq,FOLLOW_Seq_in_plural1224); + Seq42=(Token)match(input,Seq,FOLLOW_Seq_in_plural1219); stream_Seq.add(Seq42); @@ -1505,9 +1631,9 @@ public class SilkParser extends Parser { } break; case 6 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:328:4: TabSeq + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:328:4: TabSeq { - TabSeq43=(Token)match(input,TabSeq,FOLLOW_TabSeq_in_plural1234); + TabSeq43=(Token)match(input,TabSeq,FOLLOW_TabSeq_in_plural1229); stream_TabSeq.add(TabSeq43); @@ -1557,7 +1683,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "function" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:331: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 )* ) ); + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:331: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); @@ -1592,7 +1718,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 { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:332:2: ( NodeIndent function_i -> ^( Function NodeIndent function_i ) | FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen -> ^( 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:332: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); @@ -1610,12 +1736,12 @@ public class SilkParser extends Parser { } switch (alt16) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:332:4: NodeIndent function_i + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:332:4: NodeIndent function_i { - NodeIndent44=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_function1250); + NodeIndent44=(Token)match(input,NodeIndent,FOLLOW_NodeIndent_in_function1245); stream_NodeIndent.add(NodeIndent44); - pushFollow(FOLLOW_function_i_in_function1252); + pushFollow(FOLLOW_function_i_in_function1247); function_i45=function_i(); state._fsp--; @@ -1635,7 +1761,7 @@ public class SilkParser extends Parser { root_0 = (Object)adaptor.nil(); // 333:2: -> ^( Function NodeIndent function_i ) { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:333:5: ^( Function NodeIndent function_i ) + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:333:5: ^( Function NodeIndent function_i ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(Function, "Function"), root_1); @@ -1652,18 +1778,18 @@ public class SilkParser extends Parser { } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:4: FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:4: FunctionIndent PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen { - FunctionIndent46=(Token)match(input,FunctionIndent,FOLLOW_FunctionIndent_in_function1268); + FunctionIndent46=(Token)match(input,FunctionIndent,FOLLOW_FunctionIndent_in_function1263); stream_FunctionIndent.add(FunctionIndent46); - PlainOneLine47=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_function1270); + PlainOneLine47=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_function1265); stream_PlainOneLine.add(PlainOneLine47); - LParen48=(Token)match(input,LParen,FOLLOW_LParen_in_function1272); + LParen48=(Token)match(input,LParen,FOLLOW_LParen_in_function1267); stream_LParen.add(LParen48); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:39: ( functionArg ( Comma functionArg )* )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:39: ( functionArg ( Comma functionArg )* )? int alt15=2; int LA15_0 = input.LA(1); @@ -1672,15 +1798,15 @@ public class SilkParser extends Parser { } switch (alt15) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:40: functionArg ( Comma functionArg )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:40: functionArg ( Comma functionArg )* { - pushFollow(FOLLOW_functionArg_in_function1275); + pushFollow(FOLLOW_functionArg_in_function1270); functionArg49=functionArg(); state._fsp--; stream_functionArg.add(functionArg49.getTree()); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:52: ( Comma functionArg )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:52: ( Comma functionArg )* loop14: do { int alt14=2; @@ -1693,12 +1819,12 @@ public class SilkParser extends Parser { switch (alt14) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:53: Comma functionArg + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:334:53: Comma functionArg { - Comma50=(Token)match(input,Comma,FOLLOW_Comma_in_function1278); + Comma50=(Token)match(input,Comma,FOLLOW_Comma_in_function1273); stream_Comma.add(Comma50); - pushFollow(FOLLOW_functionArg_in_function1280); + pushFollow(FOLLOW_functionArg_in_function1275); functionArg51=functionArg(); state._fsp--; @@ -1719,7 +1845,7 @@ public class SilkParser extends Parser { } - RParen52=(Token)match(input,RParen,FOLLOW_RParen_in_function1286); + RParen52=(Token)match(input,RParen,FOLLOW_RParen_in_function1281); stream_RParen.add(RParen52); @@ -1736,14 +1862,14 @@ public class SilkParser extends Parser { root_0 = (Object)adaptor.nil(); // 335:2: -> ^( 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:335:5: ^( 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:335: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, (FunctionIndent46!=null?FunctionIndent46.getText():null))); adaptor.addChild(root_1, (Object)adaptor.create(Name, (PlainOneLine47!=null?PlainOneLine47.getText():null).trim())); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:335:81: ( functionArg )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:335:81: ( functionArg )* while ( stream_functionArg.hasNext() ) { adaptor.addChild(root_1, stream_functionArg.nextTree()); @@ -1784,7 +1910,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "function_i" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:338:1: fragment function_i : 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:338: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); @@ -1813,19 +1939,19 @@ public class SilkParser extends Parser { RewriteRuleTokenStream stream_LParen=new RewriteRuleTokenStream(adaptor,"token LParen"); RewriteRuleSubtreeStream stream_functionArg=new RewriteRuleSubtreeStream(adaptor,"rule functionArg"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339: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:339:13: At PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339: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:339:13: At PlainOneLine LParen ( functionArg ( Comma functionArg )* )? RParen { - At53=(Token)match(input,At,FOLLOW_At_in_function_i1313); + At53=(Token)match(input,At,FOLLOW_At_in_function_i1308); stream_At.add(At53); - PlainOneLine54=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_function_i1315); + PlainOneLine54=(Token)match(input,PlainOneLine,FOLLOW_PlainOneLine_in_function_i1310); stream_PlainOneLine.add(PlainOneLine54); - LParen55=(Token)match(input,LParen,FOLLOW_LParen_in_function_i1317); + LParen55=(Token)match(input,LParen,FOLLOW_LParen_in_function_i1312); stream_LParen.add(LParen55); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:36: ( functionArg ( Comma functionArg )* )? + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:36: ( functionArg ( Comma functionArg )* )? int alt18=2; int LA18_0 = input.LA(1); @@ -1834,15 +1960,15 @@ public class SilkParser extends Parser { } switch (alt18) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:37: functionArg ( Comma functionArg )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:37: functionArg ( Comma functionArg )* { - pushFollow(FOLLOW_functionArg_in_function_i1320); + pushFollow(FOLLOW_functionArg_in_function_i1315); functionArg56=functionArg(); state._fsp--; stream_functionArg.add(functionArg56.getTree()); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:49: ( Comma functionArg )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:49: ( Comma functionArg )* loop17: do { int alt17=2; @@ -1855,12 +1981,12 @@ public class SilkParser extends Parser { switch (alt17) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:50: Comma functionArg + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:339:50: Comma functionArg { - Comma57=(Token)match(input,Comma,FOLLOW_Comma_in_function_i1323); + Comma57=(Token)match(input,Comma,FOLLOW_Comma_in_function_i1318); stream_Comma.add(Comma57); - pushFollow(FOLLOW_functionArg_in_function_i1325); + pushFollow(FOLLOW_functionArg_in_function_i1320); functionArg58=functionArg(); state._fsp--; @@ -1881,7 +2007,7 @@ public class SilkParser extends Parser { } - RParen59=(Token)match(input,RParen,FOLLOW_RParen_in_function_i1331); + RParen59=(Token)match(input,RParen,FOLLOW_RParen_in_function_i1326); stream_RParen.add(RParen59); @@ -1899,7 +2025,7 @@ public class SilkParser extends Parser { // 340:2: -> Name[$PlainOneLine.text.trim()] ( functionArg )* { adaptor.addChild(root_0, (Object)adaptor.create(Name, (PlainOneLine54!=null?PlainOneLine54.getText():null).trim())); - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:340:37: ( functionArg )* + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:340:37: ( functionArg )* while ( stream_functionArg.hasNext() ) { adaptor.addChild(root_0, stream_functionArg.nextTree()); @@ -1935,7 +2061,7 @@ public class SilkParser extends Parser { }; // $ANTLR start "functionArg" - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:343:1: fragment functionArg : ( nodeValue -> Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( 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:343: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); @@ -1955,14 +2081,63 @@ public class SilkParser extends Parser { RewriteRuleSubtreeStream stream_nodeName=new RewriteRuleSubtreeStream(adaptor,"rule nodeName"); RewriteRuleSubtreeStream stream_nodeValue=new RewriteRuleSubtreeStream(adaptor,"rule nodeValue"); try { - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:345:2: ( nodeValue -> Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( 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:345: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 ( input.LA(1) ) { + case At: + case JSON: + { + alt19=1; + } + break; + case PlainOneLine: + { + int LA19_2 = input.LA(2); + + if ( (LA19_2==Colon) ) { + alt19=2; + } + else if ( ((LA19_2>=RParen && LA19_2<=Comma)) ) { + alt19=1; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 19, 2, input); + + throw nvae; + } + } + break; + case String: + { + int LA19_3 = input.LA(2); + + if ( (LA19_3==Colon) ) { + alt19=2; + } + else if ( ((LA19_3>=RParen && LA19_3<=Comma)) ) { + alt19=1; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 19, 3, input); + + throw nvae; + } + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 19, 0, input); + + throw nvae; + } + switch (alt19) { case 1 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:345:4: nodeValue + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:345:4: nodeValue { - pushFollow(FOLLOW_nodeValue_in_functionArg1353); + pushFollow(FOLLOW_nodeValue_in_functionArg1348); nodeValue60=nodeValue(); state._fsp--; @@ -1990,18 +2165,18 @@ public class SilkParser extends Parser { } break; case 2 : - // c:\\Users\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:346:4: nodeName Colon nodeValue + // F:\\cygwin\\home\\leo\\work\\eclipse\\workspace\\xerial\\xerial-core\\src\\main\\java\\org\\xerial\\silk\\impl\\Silk.g:346:4: nodeName Colon nodeValue { - pushFollow(FOLLOW_nodeName_in_functionArg1363); + pushFollow(FOLLOW_nodeName_in_functionArg1358); nodeName61=nodeName(); state._fsp--; stream_nodeName.add(nodeName61.getTree()); - Colon62=(Token)match(input,Colon,FOLLOW_Colon_in_functionArg1365); + Colon62=(Token)match(input,Colon,FOLLOW_Colon_in_functionArg1360); stream_Colon.add(Colon62); - pushFollow(FOLLOW_nodeValue_in_functionArg1367); + pushFollow(FOLLOW_nodeValue_in_functionArg1362); nodeValue63=nodeValue(); state._fsp--; @@ -2021,7 +2196,7 @@ public class SilkParser extends Parser { root_0 = (Object)adaptor.nil(); // 346:29: -> ^( 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:346:32: ^( 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:346: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); @@ -2060,579 +2235,70 @@ public class SilkParser extends Parser { // Delegated rules - protected DFA2 dfa2 = new DFA2(this); - protected DFA5 dfa5 = new DFA5(this); - protected DFA6 dfa6 = new DFA6(this); - protected DFA8 dfa8 = new DFA8(this); - protected DFA9 dfa9 = new DFA9(this); - protected DFA10 dfa10 = new DFA10(this); - protected DFA13 dfa13 = new DFA13(this); - protected DFA19 dfa19 = new DFA19(this); - static final String DFA2_eotS = - "\23\uffff"; - static final String DFA2_eofS = - "\1\uffff\1\5\21\uffff"; - static final String DFA2_minS = - "\2\17\21\uffff"; - static final String DFA2_maxS = - "\1\23\1\62\21\uffff"; - static final String DFA2_acceptS = - "\2\uffff\1\3\1\4\1\5\1\2\14\uffff\1\1"; - static final String DFA2_specialS = - "\23\uffff}>"; - static final String[] DFA2_transitionS = { - "\1\4\1\uffff\1\3\1\1\1\2", - "\1\5\1\uffff\3\5\1\uffff\1\5\2\uffff\4\5\1\2\1\5\2\uffff\1"+ - "\5\7\uffff\1\22\11\uffff\1\22", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - }; - - static final short[] DFA2_eot = DFA.unpackEncodedString(DFA2_eotS); - static final short[] DFA2_eof = DFA.unpackEncodedString(DFA2_eofS); - static final char[] DFA2_min = DFA.unpackEncodedStringToUnsignedChars(DFA2_minS); - static final char[] DFA2_max = DFA.unpackEncodedStringToUnsignedChars(DFA2_maxS); - static final short[] DFA2_accept = DFA.unpackEncodedString(DFA2_acceptS); - static final short[] DFA2_special = DFA.unpackEncodedString(DFA2_specialS); - static final short[][] DFA2_transition; - - static { - int numStates = DFA2_transitionS.length; - DFA2_transition = new short[numStates][]; - for (int i=0; i ^( SilkNode NodeIndent nodeItem ) | noNameNode | function | LineComment | WhiteSpace -> BlankLine );"; - } - } - static final String DFA5_eotS = - "\15\uffff"; - static final String DFA5_eofS = - "\1\2\14\uffff"; - static final String DFA5_minS = - "\1\17\14\uffff"; - static final String DFA5_maxS = - "\1\40\14\uffff"; - static final String DFA5_acceptS = - "\1\uffff\1\1\1\2\12\uffff"; - static final String DFA5_specialS = - "\15\uffff}>"; - static final String[] DFA5_transitionS = { - "\1\2\1\uffff\3\2\1\uffff\1\1\2\uffff\4\2\1\uffff\1\2\2\uffff"+ - "\1\2", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - }; - - static final short[] DFA5_eot = DFA.unpackEncodedString(DFA5_eotS); - static final short[] DFA5_eof = DFA.unpackEncodedString(DFA5_eofS); - static final char[] DFA5_min = DFA.unpackEncodedStringToUnsignedChars(DFA5_minS); - static final char[] DFA5_max = DFA.unpackEncodedStringToUnsignedChars(DFA5_maxS); - static final short[] DFA5_accept = DFA.unpackEncodedString(DFA5_acceptS); - static final short[] DFA5_special = DFA.unpackEncodedString(DFA5_specialS); - static final short[][] DFA5_transition; - - static { - int numStates = DFA5_transitionS.length; - DFA5_transition = new short[numStates][]; - for (int i=0; i"; - static final String[] DFA6_transitionS = { - "\1\6\1\uffff\3\6\4\uffff\1\6\3\1\1\uffff\1\1\2\uffff\1\1", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - }; - - static final short[] DFA6_eot = DFA.unpackEncodedString(DFA6_eotS); - static final short[] DFA6_eof = DFA.unpackEncodedString(DFA6_eofS); - static final char[] DFA6_min = DFA.unpackEncodedStringToUnsignedChars(DFA6_minS); - static final char[] DFA6_max = DFA.unpackEncodedStringToUnsignedChars(DFA6_maxS); - static final short[] DFA6_accept = DFA.unpackEncodedString(DFA6_acceptS); - static final short[] DFA6_special = DFA.unpackEncodedString(DFA6_specialS); - static final short[][] DFA6_transition; - - static { - int numStates = DFA6_transitionS.length; - DFA6_transition = new short[numStates][]; - for (int i=0; i"; - static final String[] DFA8_transitionS = { - "\1\2\1\uffff\3\2\1\uffff\7\2\1\uffff\1\2\1\1\1\uffff\1\2", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - }; - - static final short[] DFA8_eot = DFA.unpackEncodedString(DFA8_eotS); - static final short[] DFA8_eof = DFA.unpackEncodedString(DFA8_eofS); - static final char[] DFA8_min = DFA.unpackEncodedStringToUnsignedChars(DFA8_minS); - static final char[] DFA8_max = DFA.unpackEncodedStringToUnsignedChars(DFA8_maxS); - static final short[] DFA8_accept = DFA.unpackEncodedString(DFA8_acceptS); - static final short[] DFA8_special = DFA.unpackEncodedString(DFA8_specialS); - static final short[][] DFA8_transition; - - static { - int numStates = DFA8_transitionS.length; - DFA8_transition = new short[numStates][]; - for (int i=0; i"; - static final String[] DFA9_transitionS = { - "\1\2\1\uffff\3\2\1\uffff\1\1\6\2\1\uffff\1\2\2\uffff\1\2", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - }; - - static final short[] DFA9_eot = DFA.unpackEncodedString(DFA9_eotS); - static final short[] DFA9_eof = DFA.unpackEncodedString(DFA9_eofS); - static final char[] DFA9_min = DFA.unpackEncodedStringToUnsignedChars(DFA9_minS); - static final char[] DFA9_max = DFA.unpackEncodedStringToUnsignedChars(DFA9_maxS); - static final short[] DFA9_accept = DFA.unpackEncodedString(DFA9_acceptS); - static final short[] DFA9_special = DFA.unpackEncodedString(DFA9_specialS); - static final short[][] DFA9_transition; - - static { - int numStates = DFA9_transitionS.length; - DFA9_transition = new short[numStates][]; - for (int i=0; i"; - static final String[] DFA10_transitionS = { - "\1\6\1\uffff\3\6\2\uffff\3\6\3\1\1\uffff\1\1\2\uffff\1\1", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - }; - - static final short[] DFA10_eot = DFA.unpackEncodedString(DFA10_eotS); - static final short[] DFA10_eof = DFA.unpackEncodedString(DFA10_eofS); - static final char[] DFA10_min = DFA.unpackEncodedStringToUnsignedChars(DFA10_minS); - static final char[] DFA10_max = DFA.unpackEncodedStringToUnsignedChars(DFA10_maxS); - static final short[] DFA10_accept = DFA.unpackEncodedString(DFA10_acceptS); - static final short[] DFA10_special = DFA.unpackEncodedString(DFA10_specialS); - static final short[][] DFA10_transition; - - static { - int numStates = DFA10_transitionS.length; - DFA10_transition = new short[numStates][]; - for (int i=0; i"; - static final String[] DFA13_transitionS = { - "\1\4\1\5\1\1\1\uffff\1\2\2\uffff\1\3", - "", - "", - "", - "\1\7\1\uffff\3\7\2\uffff\3\7\1\6", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - }; - - static final short[] DFA13_eot = DFA.unpackEncodedString(DFA13_eotS); - static final short[] DFA13_eof = DFA.unpackEncodedString(DFA13_eofS); - static final char[] DFA13_min = DFA.unpackEncodedStringToUnsignedChars(DFA13_minS); - static final char[] DFA13_max = DFA.unpackEncodedStringToUnsignedChars(DFA13_maxS); - static final short[] DFA13_accept = DFA.unpackEncodedString(DFA13_acceptS); - static final short[] DFA13_special = DFA.unpackEncodedString(DFA13_specialS); - static final short[][] DFA13_transition; - - static { - int numStates = DFA13_transitionS.length; - DFA13_transition = new short[numStates][]; - for (int i=0; i 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 = - "\13\uffff"; - static final String DFA19_eofS = - "\13\uffff"; - static final String DFA19_minS = - "\1\34\1\uffff\2\26\7\uffff"; - static final String DFA19_maxS = - "\1\63\1\uffff\2\30\7\uffff"; - static final String DFA19_acceptS = - "\1\uffff\1\1\3\uffff\1\2\5\uffff"; - static final String DFA19_specialS = - "\13\uffff}>"; - static final String[] DFA19_transitionS = { - "\1\1\13\uffff\1\3\11\uffff\1\2\1\1", - "", - "\2\1\1\5", - "\2\1\1\5", - "", - "", - "", - "", - "", - "", - "" - }; - - static final short[] DFA19_eot = DFA.unpackEncodedString(DFA19_eotS); - static final short[] DFA19_eof = DFA.unpackEncodedString(DFA19_eofS); - static final char[] DFA19_min = DFA.unpackEncodedStringToUnsignedChars(DFA19_minS); - static final char[] DFA19_max = DFA.unpackEncodedStringToUnsignedChars(DFA19_maxS); - static final short[] DFA19_accept = DFA.unpackEncodedString(DFA19_acceptS); - static final short[] DFA19_special = DFA.unpackEncodedString(DFA19_specialS); - static final short[][] DFA19_transition; - - static { - int numStates = DFA19_transitionS.length; - DFA19_transition = new short[numStates][]; - for (int i=0; i Argument[$functionArg.text] | nodeName Colon nodeValue -> ^( KeyValuePair Key[$nodeName.text.trim()] Value[$nodeValue.text.trim()] ) );"; - } - } - public static final BitSet FOLLOW_silkLine_in_silkFile861 = new BitSet(new long[]{0x00000000000E8002L}); - public static final BitSet FOLLOW_NodeIndent_in_silkLine882 = new BitSet(new long[]{0x0004010000000000L}); - public static final BitSet FOLLOW_nodeItem_in_silkLine884 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_noNameNode_in_silkLine899 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_function_in_silkLine905 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LineComment_in_silkLine913 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_WhiteSpace_in_silkLine920 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_silkLine_in_silkFile856 = new BitSet(new long[]{0x00000000000E8002L}); + public static final BitSet FOLLOW_NodeIndent_in_silkLine877 = new BitSet(new long[]{0x0004010000000000L}); + public static final BitSet FOLLOW_nodeItem_in_silkLine879 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_noNameNode_in_silkLine894 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_function_in_silkLine900 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LineComment_in_silkLine908 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_WhiteSpace_in_silkLine915 = 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_nodeValue950 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PlainOneLine_in_nodeValue964 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_String_in_nodeValue968 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_JSON_in_nodeValue979 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_NodeIndent_in_noNameNode993 = new BitSet(new long[]{0x000000012F200002L}); - public static final BitSet FOLLOW_LParen_in_noNameNode996 = new BitSet(new long[]{0x0004010000000000L}); - public static final BitSet FOLLOW_attributeList_in_noNameNode998 = new BitSet(new long[]{0x0000000000400000L}); - public static final BitSet FOLLOW_RParen_in_noNameNode1000 = new BitSet(new long[]{0x000000012F000002L}); - public static final BitSet FOLLOW_plural_in_noNameNode1004 = new BitSet(new long[]{0x0000000001000002L}); - public static final BitSet FOLLOW_Colon_in_noNameNode1008 = new BitSet(new long[]{0x000C010010000000L}); - public static final BitSet FOLLOW_nodeValue_in_noNameNode1010 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nodeName_in_nodeItem1043 = new BitSet(new long[]{0x000000016F200002L}); - public static final BitSet FOLLOW_dataType_in_nodeItem1045 = new BitSet(new long[]{0x000000012F200002L}); - public static final BitSet FOLLOW_LParen_in_nodeItem1050 = new BitSet(new long[]{0x0004010000000000L}); - public static final BitSet FOLLOW_attributeList_in_nodeItem1052 = new BitSet(new long[]{0x0000000000400000L}); - public static final BitSet FOLLOW_RParen_in_nodeItem1054 = new BitSet(new long[]{0x000000012F000002L}); - public static final BitSet FOLLOW_plural_in_nodeItem1058 = new BitSet(new long[]{0x0000000001000002L}); - public static final BitSet FOLLOW_Colon_in_nodeItem1062 = new BitSet(new long[]{0x000C010010000000L}); - public static final BitSet FOLLOW_nodeValue_in_nodeItem1064 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LBracket_in_dataType1097 = new BitSet(new long[]{0x0004000000000000L}); - public static final BitSet FOLLOW_dataTypeName_in_dataType1100 = new BitSet(new long[]{0x0000000080000000L}); - public static final BitSet FOLLOW_RBracket_in_dataType1102 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PlainOneLine_in_dataTypeName1115 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_attributeItem_in_attributeList1135 = new BitSet(new long[]{0x0000000000800002L}); - public static final BitSet FOLLOW_Comma_in_attributeList1138 = new BitSet(new long[]{0x0004010000000000L}); - public static final BitSet FOLLOW_attributeItem_in_attributeList1141 = new BitSet(new long[]{0x0000000000800002L}); - public static final BitSet FOLLOW_nodeItem_in_attributeItem1154 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Seq_in_seqseq1171 = new BitSet(new long[]{0x0000000002000000L}); - public static final BitSet FOLLOW_Seq_in_seqseq1173 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Star_in_plural1184 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Plus_in_plural1194 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Question_in_plural1204 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_seqseq_in_plural1214 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_Seq_in_plural1224 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_TabSeq_in_plural1234 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_NodeIndent_in_function1250 = new BitSet(new long[]{0x0000000010000000L}); - public static final BitSet FOLLOW_function_i_in_function1252 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_FunctionIndent_in_function1268 = new BitSet(new long[]{0x0004000000000000L}); - public static final BitSet FOLLOW_PlainOneLine_in_function1270 = new BitSet(new long[]{0x0000000000200000L}); - public static final BitSet FOLLOW_LParen_in_function1272 = new BitSet(new long[]{0x000C010010400000L}); + public static final BitSet FOLLOW_function_i_in_nodeValue945 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PlainOneLine_in_nodeValue959 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_String_in_nodeValue963 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_JSON_in_nodeValue974 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_NodeIndent_in_noNameNode988 = new BitSet(new long[]{0x000000012F200002L}); + public static final BitSet FOLLOW_LParen_in_noNameNode991 = new BitSet(new long[]{0x0004010000000000L}); + public static final BitSet FOLLOW_attributeList_in_noNameNode993 = new BitSet(new long[]{0x0000000000400000L}); + public static final BitSet FOLLOW_RParen_in_noNameNode995 = new BitSet(new long[]{0x000000012F000002L}); + public static final BitSet FOLLOW_plural_in_noNameNode999 = new BitSet(new long[]{0x0000000001000002L}); + public static final BitSet FOLLOW_Colon_in_noNameNode1003 = new BitSet(new long[]{0x000C010010000000L}); + public static final BitSet FOLLOW_nodeValue_in_noNameNode1005 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_nodeName_in_nodeItem1038 = new BitSet(new long[]{0x000000016F200002L}); + public static final BitSet FOLLOW_dataType_in_nodeItem1040 = new BitSet(new long[]{0x000000012F200002L}); + public static final BitSet FOLLOW_LParen_in_nodeItem1045 = new BitSet(new long[]{0x0004010000000000L}); + public static final BitSet FOLLOW_attributeList_in_nodeItem1047 = new BitSet(new long[]{0x0000000000400000L}); + public static final BitSet FOLLOW_RParen_in_nodeItem1049 = new BitSet(new long[]{0x000000012F000002L}); + public static final BitSet FOLLOW_plural_in_nodeItem1053 = new BitSet(new long[]{0x0000000001000002L}); + public static final BitSet FOLLOW_Colon_in_nodeItem1057 = new BitSet(new long[]{0x000C010010000000L}); + public static final BitSet FOLLOW_nodeValue_in_nodeItem1059 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LBracket_in_dataType1092 = new BitSet(new long[]{0x0004000000000000L}); + public static final BitSet FOLLOW_dataTypeName_in_dataType1095 = new BitSet(new long[]{0x0000000080000000L}); + public static final BitSet FOLLOW_RBracket_in_dataType1097 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PlainOneLine_in_dataTypeName1110 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_attributeItem_in_attributeList1130 = new BitSet(new long[]{0x0000000000800002L}); + public static final BitSet FOLLOW_Comma_in_attributeList1133 = new BitSet(new long[]{0x0004010000000000L}); + public static final BitSet FOLLOW_attributeItem_in_attributeList1136 = new BitSet(new long[]{0x0000000000800002L}); + public static final BitSet FOLLOW_nodeItem_in_attributeItem1149 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Seq_in_seqseq1166 = new BitSet(new long[]{0x0000000002000000L}); + public static final BitSet FOLLOW_Seq_in_seqseq1168 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Star_in_plural1179 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Plus_in_plural1189 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Question_in_plural1199 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_seqseq_in_plural1209 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_Seq_in_plural1219 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_TabSeq_in_plural1229 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_NodeIndent_in_function1245 = new BitSet(new long[]{0x0000000010000000L}); + public static final BitSet FOLLOW_function_i_in_function1247 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_FunctionIndent_in_function1263 = new BitSet(new long[]{0x0004000000000000L}); + public static final BitSet FOLLOW_PlainOneLine_in_function1265 = new BitSet(new long[]{0x0000000000200000L}); + public static final BitSet FOLLOW_LParen_in_function1267 = new BitSet(new long[]{0x000C010010400000L}); + public static final BitSet FOLLOW_functionArg_in_function1270 = new BitSet(new long[]{0x0000000000C00000L}); + public static final BitSet FOLLOW_Comma_in_function1273 = new BitSet(new long[]{0x000C010010000000L}); public static final BitSet FOLLOW_functionArg_in_function1275 = new BitSet(new long[]{0x0000000000C00000L}); - public static final BitSet FOLLOW_Comma_in_function1278 = new BitSet(new long[]{0x000C010010000000L}); - public static final BitSet FOLLOW_functionArg_in_function1280 = new BitSet(new long[]{0x0000000000C00000L}); - public static final BitSet FOLLOW_RParen_in_function1286 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_At_in_function_i1313 = new BitSet(new long[]{0x0004000000000000L}); - public static final BitSet FOLLOW_PlainOneLine_in_function_i1315 = new BitSet(new long[]{0x0000000000200000L}); - public static final BitSet FOLLOW_LParen_in_function_i1317 = new BitSet(new long[]{0x000C010010400000L}); + public static final BitSet FOLLOW_RParen_in_function1281 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_At_in_function_i1308 = new BitSet(new long[]{0x0004000000000000L}); + public static final BitSet FOLLOW_PlainOneLine_in_function_i1310 = new BitSet(new long[]{0x0000000000200000L}); + public static final BitSet FOLLOW_LParen_in_function_i1312 = new BitSet(new long[]{0x000C010010400000L}); + public static final BitSet FOLLOW_functionArg_in_function_i1315 = new BitSet(new long[]{0x0000000000C00000L}); + public static final BitSet FOLLOW_Comma_in_function_i1318 = new BitSet(new long[]{0x000C010010000000L}); public static final BitSet FOLLOW_functionArg_in_function_i1320 = new BitSet(new long[]{0x0000000000C00000L}); - public static final BitSet FOLLOW_Comma_in_function_i1323 = new BitSet(new long[]{0x000C010010000000L}); - public static final BitSet FOLLOW_functionArg_in_function_i1325 = new BitSet(new long[]{0x0000000000C00000L}); - public static final BitSet FOLLOW_RParen_in_function_i1331 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nodeValue_in_functionArg1353 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nodeName_in_functionArg1363 = new BitSet(new long[]{0x0000000001000000L}); - public static final BitSet FOLLOW_Colon_in_functionArg1365 = new BitSet(new long[]{0x000C010010000000L}); - public static final BitSet FOLLOW_nodeValue_in_functionArg1367 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_RParen_in_function_i1326 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_nodeValue_in_functionArg1348 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_nodeName_in_functionArg1358 = new BitSet(new long[]{0x0000000001000000L}); + public static final BitSet FOLLOW_Colon_in_functionArg1360 = new BitSet(new long[]{0x000C010010000000L}); + public static final BitSet FOLLOW_nodeValue_in_functionArg1362 = new BitSet(new long[]{0x0000000000000002L}); } \ No newline at end of file diff --git a/src/test/java/org/xerial/silk/SilkPullParserTest.java b/src/test/java/org/xerial/silk/SilkPullParserTest.java index 544f639..24abe3e 100644 --- a/src/test/java/org/xerial/silk/SilkPullParserTest.java +++ b/src/test/java/org/xerial/silk/SilkPullParserTest.java @@ -146,4 +146,10 @@ public class SilkPullParserTest pull("plugin/load-binary.silk"); } + @Test + public void testBED() throws Exception + { + pull("sample.bed.silk"); + } + } diff --git a/src/test/java/org/xerial/silk/SilkWalkerTest.java b/src/test/java/org/xerial/silk/SilkWalkerTest.java index 33840ce..fedbb07 100644 --- a/src/test/java/org/xerial/silk/SilkWalkerTest.java +++ b/src/test/java/org/xerial/silk/SilkWalkerTest.java @@ -188,6 +188,12 @@ public class SilkWalkerTest } @Test + public void testBED() throws Exception + { + TreeWalkLog l = walk("sample.bed.silk"); + } + + @Test public void testSkipDescendants() throws Exception { SilkWalker walker = new SilkWalker(FileResource.find(SilkWalkerTest.class, "small.silk")); diff --git a/src/test/java/org/xerial/silk/sample-track.bed.silk b/src/test/java/org/xerial/silk/sample-track.bed.silk new file mode 100644 index 0000000..0ba809a --- /dev/null +++ b/src/test/java/org/xerial/silk/sample-track.bed.silk @@ -0,0 +1 @@ +-track(name:"Item,RGB,Demo2", description:"Item RGBdemonstration2", visibility:2, itemRgb:"On", useScore:1, color:"0,128,0", url:"http://genome.ucsc.edu/goldenPath/help/clones.html#$$") diff --git a/src/test/java/org/xerial/silk/sample.bed.silk b/src/test/java/org/xerial/silk/sample.bed.silk new file mode 100644 index 0000000..949cfb9 --- /dev/null +++ b/src/test/java/org/xerial/silk/sample.bed.silk @@ -0,0 +1,27 @@ +%silk(version:1.0) + +-track(name:"Item,RGB,Demo2", description:"Item RGBdemonstration2", visibility:2, itemRgb:"On", useScore:1, color:"0,128,0", url:"http://genome.ucsc.edu/goldenPath/help/clones.html#$$") + -gene(coordinate, start, end, name, strand, cds(start, end), exon(start, end)*, color, _[json])| +chr7 127471197 127472364 Pos1 + [127471197, 127472364] #ff0000 {"score":300} +chr7 127472364 127473531 Pos2 + [127472364, 127473531] #ff0000 {"score":200} +chr7 127473531 127474698 Pos3 + [127473531, 127474698] #ff0000 {"score":900} +chr7 127474698 127475865 Pos4 + [127474698, 127475865] #ff0000 {"score":400} +chr7 127475865 127477032 Neg1 - [127475865, 127477032] #0000ff {"score":100} +chr7 127477032 127478199 Neg2 - [127477032, 127478199] #0000ff {"score":500} +chr7 127478199 127479366 Neg3 - [127478199, 127479366] #0000ff {"score":200} +chr7 127479366 127480533 Pos5 + [127479366, 127480533] #ff0000 {"score":200} +chr7 127480533 127481700 Neg4 - [127480533, 127481700] #0000ff {"score":600} +chr22 2001 7001 itemB - [2201, 6951] [[1, 433], [501, 600], [2001, 2550], [3501, 5000]] {"score":200} +chr22 2001 6001 cloneB - [2001, 6001] [[1, 433], [3602, 4000]] {"score":900} +chr22 1001 5001 itemA + [1101, 4701] [[1, 1567], [2513, 4000]] {"score":960} +chr22 1001 5001 itemA + [1101, 4701] [[1, 1567], [2513, 4000]] {"score":960} +chr22 2001 7001 itemB - [2201, 6951] [[1, 433], [501, 600], [2001, 2550], [3501, 5000]] {"score":200} +chr22 20100001 20100002 +chr22 20110001 20110002 +chr22 20100001 20100101 first +chr22 20100201 20100301 second +chr22 20100401 20100501 thirds +chr7 127472364 127473531 Pos2 {"score":200} +chr7 127472364 127473531 Pos2 + {"score":200} +chr7 127472364 127473531 Pos2 + [127472364, 127473531] {"score":200} +chr7 127472364 127473531 Pos2 + [127472364, 127473531] #ff0000 {"score":200} \ No newline at end of file