summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/jvm/Reader.g11
-rw-r--r--src/jvm/clojure/lang/ReaderLexer.java250
-rw-r--r--src/jvm/clojure/lang/ReaderParser.java1452
3 files changed, 1154 insertions, 559 deletions
diff --git a/src/jvm/Reader.g b/src/jvm/Reader.g
index 4ed11f79..e1fe0e42 100644
--- a/src/jvm/Reader.g
+++ b/src/jvm/Reader.g
@@ -119,6 +119,12 @@ throw exc;
}
expression returns[Object val]
+ :d = dotExpression {$val = $d.val;}
+ | e = otherThanDotExpression {$val = $e.val;}
+ ;
+
+fragment
+otherThanDotExpression returns[Object val]
: lt = literal {$val = $lt.val;}
|s = symbol {$val = $s.val;}
|k = keyword {$val = $k.val;}
@@ -126,7 +132,6 @@ expression returns[Object val]
|ve = vectorExpression {$val = $ve.val;}
|me = mapExpression {$val = $me.val;}
|mx = metaExpression {$val = $mx.val;}
- |g = dotExpression {$val = $g.val;}
|q = quotedExpression {$val = $q.val;}
|ct = caretExpression {$val = $ct.val;}
;
@@ -157,7 +162,7 @@ symbol returns[Symbol val]
;
keyword returns[Keyword val]
- :k = KeywordIdentifier {$val = new Keyword($k.text.substring(1));}
+ :k = KeywordIdentifier {$val = new Keyword(new Symbol($k.text.substring(1)));}
;
@@ -223,7 +228,7 @@ dotExpression returns [Object val]
@init{
List es = null;
}
- :s = symbol e = member+ {$val = RT.listStar(DOTDOT,s,RT.seq(es));}
+ :s = otherThanDotExpression e = member+ {$val = RT.listStar(DOTDOT,s,RT.seq(es));}
;
quotedExpression returns[Object val]
diff --git a/src/jvm/clojure/lang/ReaderLexer.java b/src/jvm/clojure/lang/ReaderLexer.java
index d50e9540..172b370d 100644
--- a/src/jvm/clojure/lang/ReaderLexer.java
+++ b/src/jvm/clojure/lang/ReaderLexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0 /Users/rich/dev/clojure/src/jvm/Reader.g 2007-07-16 11:13:35
+// $ANTLR 3.0 /Users/rich/dev/clojure/src/jvm/Reader.g 2007-07-20 09:22:37
/**
* Copyright (c) Rich Hickey. All rights reserved.
@@ -320,8 +320,8 @@ public final void mComma() throws RecognitionException{
try
{
int _type = Comma;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:237:10: ( ',' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:237:10: ','
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:242:10: ( ',' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:242:10: ','
{
match(',');
@@ -341,8 +341,8 @@ public final void mTrueToken() throws RecognitionException{
try
{
int _type = TrueToken;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:239:16: ( 'true' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:239:16: 'true'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:244:16: ( 'true' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:244:16: 'true'
{
match("true");
@@ -363,8 +363,8 @@ public final void mNullToken() throws RecognitionException{
try
{
int _type = NullToken;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:241:16: ( 'null' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:241:16: 'null'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:246:16: ( 'null' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:246:16: 'null'
{
match("null");
@@ -385,8 +385,8 @@ public final void mDotDot() throws RecognitionException{
try
{
int _type = DotDot;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:243:10: ( '..' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:243:10: '..'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:248:10: ( '..' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:248:10: '..'
{
match("..");
@@ -407,8 +407,8 @@ public final void mHexLiteral() throws RecognitionException{
try
{
int _type = HexLiteral;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:245:14: ( '0' ( 'x' | 'X' ) ( HexDigit )+ )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:245:14: '0' ( 'x' | 'X' ) ( HexDigit )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:250:14: ( '0' ( 'x' | 'X' ) ( HexDigit )+ )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:250:14: '0' ( 'x' | 'X' ) ( HexDigit )+
{
match('0');
if(input.LA(1) == 'X' || input.LA(1) == 'x')
@@ -424,7 +424,7 @@ public final void mHexLiteral() throws RecognitionException{
throw mse;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:245:28: ( HexDigit )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:250:28: ( HexDigit )+
int cnt1 = 0;
loop1:
do
@@ -441,7 +441,7 @@ public final void mHexLiteral() throws RecognitionException{
switch(alt1)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:245:28: HexDigit
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:250:28: HexDigit
{
mHexDigit();
@@ -474,10 +474,10 @@ public final void mDecimalLiteral() throws RecognitionException{
try
{
int _type = DecimalLiteral;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:247:18: ( ( '0' | '1' .. '9' ( '0' .. '9' )* ) )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:247:18: ( '0' | '1' .. '9' ( '0' .. '9' )* )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:252:18: ( ( '0' | '1' .. '9' ( '0' .. '9' )* ) )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:252:18: ( '0' | '1' .. '9' ( '0' .. '9' )* )
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:247:18: ( '0' | '1' .. '9' ( '0' .. '9' )* )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:252:18: ( '0' | '1' .. '9' ( '0' .. '9' )* )
int alt3 = 2;
int LA3_0 = input.LA(1);
@@ -492,24 +492,24 @@ public final void mDecimalLiteral() throws RecognitionException{
else
{
NoViableAltException nvae =
- new NoViableAltException("247:18: ( '0' | '1' .. '9' ( '0' .. '9' )* )", 3, 0, input);
+ new NoViableAltException("252:18: ( '0' | '1' .. '9' ( '0' .. '9' )* )", 3, 0, input);
throw nvae;
}
switch(alt3)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:247:19: '0'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:252:19: '0'
{
match('0');
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:247:25: '1' .. '9' ( '0' .. '9' )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:252:25: '1' .. '9' ( '0' .. '9' )*
{
matchRange('1', '9');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:247:34: ( '0' .. '9' )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:252:34: ( '0' .. '9' )*
loop2:
do
{
@@ -525,7 +525,7 @@ public final void mDecimalLiteral() throws RecognitionException{
switch(alt2)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:247:34: '0' .. '9'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:252:34: '0' .. '9'
{
matchRange('0', '9');
@@ -560,11 +560,11 @@ public final void mOctalLiteral() throws RecognitionException{
try
{
int _type = OctalLiteral;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:249:16: ( '0' ( '0' .. '7' )+ )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:249:16: '0' ( '0' .. '7' )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:254:16: ( '0' ( '0' .. '7' )+ )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:254:16: '0' ( '0' .. '7' )+
{
match('0');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:249:20: ( '0' .. '7' )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:254:20: ( '0' .. '7' )+
int cnt4 = 0;
loop4:
do
@@ -581,7 +581,7 @@ public final void mOctalLiteral() throws RecognitionException{
switch(alt4)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:249:21: '0' .. '7'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:254:21: '0' .. '7'
{
matchRange('0', '7');
@@ -613,8 +613,8 @@ public final void mOctalLiteral() throws RecognitionException{
public final void mHexDigit() throws RecognitionException{
try
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:252:12: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:252:12: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:257:12: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:257:12: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )
{
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'))
@@ -646,15 +646,15 @@ public final void mFloatingPointLiteral() throws RecognitionException{
try
{
int _type = FloatingPointLiteral;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:9: ( ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( Exponent )? ( FloatTypeSuffix )? | '.' ( '0' .. '9' )+ ( Exponent )? ( FloatTypeSuffix )? | ( '0' .. '9' )+ Exponent ( FloatTypeSuffix )? | ( '0' .. '9' )+ ( Exponent )? FloatTypeSuffix )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:9: ( ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( Exponent )? ( FloatTypeSuffix )? | '.' ( '0' .. '9' )+ ( Exponent )? ( FloatTypeSuffix )? | ( '0' .. '9' )+ Exponent ( FloatTypeSuffix )? | ( '0' .. '9' )+ ( Exponent )? FloatTypeSuffix )
int alt16 = 4;
alt16 = dfa16.predict(input);
switch(alt16)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:9: ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( Exponent )? ( FloatTypeSuffix )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:9: ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( Exponent )? ( FloatTypeSuffix )?
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:9: ( '0' .. '9' )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:9: ( '0' .. '9' )+
int cnt5 = 0;
loop5:
do
@@ -671,7 +671,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt5)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:10: '0' .. '9'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:10: '0' .. '9'
{
matchRange('0', '9');
@@ -688,7 +688,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
} while(true);
match('.');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:25: ( '0' .. '9' )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:25: ( '0' .. '9' )*
loop6:
do
{
@@ -704,7 +704,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt6)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:26: '0' .. '9'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:26: '0' .. '9'
{
matchRange('0', '9');
@@ -716,7 +716,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
}
} while(true);
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:37: ( Exponent )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:37: ( Exponent )?
int alt7 = 2;
int LA7_0 = input.LA(1);
@@ -727,7 +727,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt7)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:37: Exponent
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:37: Exponent
{
mExponent();
@@ -736,7 +736,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:47: ( FloatTypeSuffix )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:47: ( FloatTypeSuffix )?
int alt8 = 2;
int LA8_0 = input.LA(1);
@@ -747,7 +747,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt8)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:255:47: FloatTypeSuffix
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:260:47: FloatTypeSuffix
{
mFloatTypeSuffix();
@@ -760,10 +760,10 @@ public final void mFloatingPointLiteral() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:256:9: '.' ( '0' .. '9' )+ ( Exponent )? ( FloatTypeSuffix )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:261:9: '.' ( '0' .. '9' )+ ( Exponent )? ( FloatTypeSuffix )?
{
match('.');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:256:13: ( '0' .. '9' )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:261:13: ( '0' .. '9' )+
int cnt9 = 0;
loop9:
do
@@ -780,7 +780,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt9)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:256:14: '0' .. '9'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:261:14: '0' .. '9'
{
matchRange('0', '9');
@@ -796,7 +796,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
cnt9++;
} while(true);
- // /Users/rich/dev/clojure/src/jvm/Reader.g:256:25: ( Exponent )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:261:25: ( Exponent )?
int alt10 = 2;
int LA10_0 = input.LA(1);
@@ -807,7 +807,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt10)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:256:25: Exponent
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:261:25: Exponent
{
mExponent();
@@ -816,7 +816,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:256:35: ( FloatTypeSuffix )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:261:35: ( FloatTypeSuffix )?
int alt11 = 2;
int LA11_0 = input.LA(1);
@@ -827,7 +827,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt11)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:256:35: FloatTypeSuffix
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:261:35: FloatTypeSuffix
{
mFloatTypeSuffix();
@@ -840,9 +840,9 @@ public final void mFloatingPointLiteral() throws RecognitionException{
}
break;
case 3:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:257:9: ( '0' .. '9' )+ Exponent ( FloatTypeSuffix )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:262:9: ( '0' .. '9' )+ Exponent ( FloatTypeSuffix )?
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:257:9: ( '0' .. '9' )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:262:9: ( '0' .. '9' )+
int cnt12 = 0;
loop12:
do
@@ -859,7 +859,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt12)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:257:10: '0' .. '9'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:262:10: '0' .. '9'
{
matchRange('0', '9');
@@ -876,7 +876,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
} while(true);
mExponent();
- // /Users/rich/dev/clojure/src/jvm/Reader.g:257:30: ( FloatTypeSuffix )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:262:30: ( FloatTypeSuffix )?
int alt13 = 2;
int LA13_0 = input.LA(1);
@@ -887,7 +887,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt13)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:257:30: FloatTypeSuffix
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:262:30: FloatTypeSuffix
{
mFloatTypeSuffix();
@@ -900,9 +900,9 @@ public final void mFloatingPointLiteral() throws RecognitionException{
}
break;
case 4:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:258:9: ( '0' .. '9' )+ ( Exponent )? FloatTypeSuffix
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:263:9: ( '0' .. '9' )+ ( Exponent )? FloatTypeSuffix
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:258:9: ( '0' .. '9' )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:263:9: ( '0' .. '9' )+
int cnt14 = 0;
loop14:
do
@@ -919,7 +919,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt14)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:258:10: '0' .. '9'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:263:10: '0' .. '9'
{
matchRange('0', '9');
@@ -935,7 +935,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
cnt14++;
} while(true);
- // /Users/rich/dev/clojure/src/jvm/Reader.g:258:21: ( Exponent )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:263:21: ( Exponent )?
int alt15 = 2;
int LA15_0 = input.LA(1);
@@ -946,7 +946,7 @@ public final void mFloatingPointLiteral() throws RecognitionException{
switch(alt15)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:258:21: Exponent
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:263:21: Exponent
{
mExponent();
@@ -974,8 +974,8 @@ public final void mFloatingPointLiteral() throws RecognitionException{
public final void mExponent() throws RecognitionException{
try
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:262:12: ( ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+ )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:262:12: ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:267:12: ( ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+ )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:267:12: ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+
{
if(input.LA(1) == 'E' || input.LA(1) == 'e')
{
@@ -990,7 +990,7 @@ public final void mExponent() throws RecognitionException{
throw mse;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:262:22: ( '+' | '-' )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:267:22: ( '+' | '-' )?
int alt17 = 2;
int LA17_0 = input.LA(1);
@@ -1022,7 +1022,7 @@ public final void mExponent() throws RecognitionException{
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:262:33: ( '0' .. '9' )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:267:33: ( '0' .. '9' )+
int cnt18 = 0;
loop18:
do
@@ -1039,7 +1039,7 @@ public final void mExponent() throws RecognitionException{
switch(alt18)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:262:34: '0' .. '9'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:267:34: '0' .. '9'
{
matchRange('0', '9');
@@ -1070,8 +1070,8 @@ public final void mExponent() throws RecognitionException{
public final void mFloatTypeSuffix() throws RecognitionException{
try
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:265:19: ( ( 'f' | 'F' | 'd' | 'D' ) )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:265:19: ( 'f' | 'F' | 'd' | 'D' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:270:19: ( ( 'f' | 'F' | 'd' | 'D' ) )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:270:19: ( 'f' | 'F' | 'd' | 'D' )
{
if(input.LA(1) == 'D' || input.LA(1) == 'F' || input.LA(1) == 'd' || input.LA(1) == 'f')
{
@@ -1102,11 +1102,11 @@ public final void mCharacterLiteral() throws RecognitionException{
try
{
int _type = CharacterLiteral;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:268:9: ( '\\\\' ( EscapeSequence | ~ ( '\\\\' ) ) )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:268:9: '\\\\' ( EscapeSequence | ~ ( '\\\\' ) )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:273:9: ( '\\\\' ( EscapeSequence | ~ ( '\\\\' ) ) )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:273:9: '\\\\' ( EscapeSequence | ~ ( '\\\\' ) )
{
match('\\');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:268:14: ( EscapeSequence | ~ ( '\\\\' ) )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:273:14: ( EscapeSequence | ~ ( '\\\\' ) )
int alt19 = 2;
int LA19_0 = input.LA(1);
@@ -1121,21 +1121,21 @@ public final void mCharacterLiteral() throws RecognitionException{
else
{
NoViableAltException nvae =
- new NoViableAltException("268:14: ( EscapeSequence | ~ ( '\\\\' ) )", 19, 0, input);
+ new NoViableAltException("273:14: ( EscapeSequence | ~ ( '\\\\' ) )", 19, 0, input);
throw nvae;
}
switch(alt19)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:268:16: EscapeSequence
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:273:16: EscapeSequence
{
mEscapeSequence();
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:268:33: ~ ( '\\\\' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:273:33: ~ ( '\\\\' )
{
if((input.LA(1) >= '\u0000' && input.LA(1) <= '[') || (input.LA(1) >= ']' && input.LA(1) <= '\uFFFE'))
{
@@ -1173,11 +1173,11 @@ public final void mStringLiteral() throws RecognitionException{
try
{
int _type = StringLiteral;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:272:8: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:272:8: '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:277:8: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:277:8: '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"'
{
match('\"');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:272:12: ( EscapeSequence | ~ ( '\\\\' | '\"' ) )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:277:12: ( EscapeSequence | ~ ( '\\\\' | '\"' ) )*
loop20:
do
{
@@ -1198,14 +1198,14 @@ public final void mStringLiteral() throws RecognitionException{
switch(alt20)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:272:14: EscapeSequence
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:277:14: EscapeSequence
{
mEscapeSequence();
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:272:31: ~ ( '\\\\' | '\"' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:277:31: ~ ( '\\\\' | '\"' )
{
if((input.LA(1) >= '\u0000' && input.LA(1) <= '!') || (input.LA(1) >= '#' && input.LA(1) <= '[') ||
(input.LA(1) >= ']' && input.LA(1) <= '\uFFFE'))
@@ -1247,7 +1247,7 @@ public final void mStringLiteral() throws RecognitionException{
public final void mEscapeSequence() throws RecognitionException{
try
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:277:9: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:282:9: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape )
int alt21 = 3;
int LA21_0 = input.LA(1);
@@ -1287,7 +1287,7 @@ public final void mEscapeSequence() throws RecognitionException{
default:
NoViableAltException nvae =
new NoViableAltException(
- "275:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape );",
+ "280:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape );",
21, 1, input);
throw nvae;
@@ -1298,7 +1298,7 @@ public final void mEscapeSequence() throws RecognitionException{
{
NoViableAltException nvae =
new NoViableAltException(
- "275:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape );",
+ "280:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape );",
21, 0, input);
throw nvae;
@@ -1306,7 +1306,7 @@ public final void mEscapeSequence() throws RecognitionException{
switch(alt21)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:277:9: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:282:9: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' )
{
match('\\');
if(input.LA(1) == '\"' || input.LA(1) == '\'' || input.LA(1) == '\\' || input.LA(1) == 'b' ||
@@ -1327,14 +1327,14 @@ public final void mEscapeSequence() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:278:9: UnicodeEscape
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:283:9: UnicodeEscape
{
mUnicodeEscape();
}
break;
case 3:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:279:9: OctalEscape
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:284:9: OctalEscape
{
mOctalEscape();
@@ -1354,7 +1354,7 @@ public final void mEscapeSequence() throws RecognitionException{
public final void mOctalEscape() throws RecognitionException{
try
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:284:9: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:289:9: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
int alt22 = 3;
int LA22_0 = input.LA(1);
@@ -1401,7 +1401,7 @@ public final void mOctalEscape() throws RecognitionException{
{
NoViableAltException nvae =
new NoViableAltException(
- "282:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );",
+ "287:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );",
22, 1, input);
throw nvae;
@@ -1411,7 +1411,7 @@ public final void mOctalEscape() throws RecognitionException{
{
NoViableAltException nvae =
new NoViableAltException(
- "282:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );",
+ "287:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );",
22, 0, input);
throw nvae;
@@ -1419,25 +1419,25 @@ public final void mOctalEscape() throws RecognitionException{
switch(alt22)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:284:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:289:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
{
match('\\');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:284:14: ( '0' .. '3' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:284:15: '0' .. '3'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:289:14: ( '0' .. '3' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:289:15: '0' .. '3'
{
matchRange('0', '3');
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:284:25: ( '0' .. '7' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:284:26: '0' .. '7'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:289:25: ( '0' .. '7' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:289:26: '0' .. '7'
{
matchRange('0', '7');
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:284:36: ( '0' .. '7' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:284:37: '0' .. '7'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:289:36: ( '0' .. '7' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:289:37: '0' .. '7'
{
matchRange('0', '7');
@@ -1447,18 +1447,18 @@ public final void mOctalEscape() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:285:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:290:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
{
match('\\');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:285:14: ( '0' .. '7' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:285:15: '0' .. '7'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:290:14: ( '0' .. '7' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:290:15: '0' .. '7'
{
matchRange('0', '7');
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:285:25: ( '0' .. '7' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:285:26: '0' .. '7'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:290:25: ( '0' .. '7' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:290:26: '0' .. '7'
{
matchRange('0', '7');
@@ -1468,11 +1468,11 @@ public final void mOctalEscape() throws RecognitionException{
}
break;
case 3:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:286:9: '\\\\' ( '0' .. '7' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:291:9: '\\\\' ( '0' .. '7' )
{
match('\\');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:286:14: ( '0' .. '7' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:286:15: '0' .. '7'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:291:14: ( '0' .. '7' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:291:15: '0' .. '7'
{
matchRange('0', '7');
@@ -1495,8 +1495,8 @@ public final void mOctalEscape() throws RecognitionException{
public final void mUnicodeEscape() throws RecognitionException{
try
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:291:9: ( '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:291:9: '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:296:9: ( '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:296:9: '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit
{
match('\\');
match('u');
@@ -1520,11 +1520,11 @@ public final void mIdentifier() throws RecognitionException{
try
{
int _type = Identifier;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:301:6: ( Letter ( '-' | Letter | JavaIDDigit )* )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:301:6: Letter ( '-' | Letter | JavaIDDigit )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:306:6: ( Letter ( '-' | Letter | JavaIDDigit )* )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:306:6: Letter ( '-' | Letter | JavaIDDigit )*
{
mLetter();
- // /Users/rich/dev/clojure/src/jvm/Reader.g:301:13: ( '-' | Letter | JavaIDDigit )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:306:13: ( '-' | Letter | JavaIDDigit )*
loop23:
do
{
@@ -1595,8 +1595,8 @@ public final void mNSIdentifier() throws RecognitionException{
try
{
int _type = NSIdentifier;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:305:3: ( Identifier '/' Identifier )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:305:3: Identifier '/' Identifier
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:310:3: ( Identifier '/' Identifier )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:310:3: Identifier '/' Identifier
{
mIdentifier();
match('/');
@@ -1618,13 +1618,13 @@ public final void mKeywordIdentifier() throws RecognitionException{
try
{
int _type = KeywordIdentifier;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:309:3: ( ':' Identifier '/' Identifier | ':' Identifier )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:314:3: ( ':' Identifier '/' Identifier | ':' Identifier )
int alt24 = 2;
alt24 = dfa24.predict(input);
switch(alt24)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:309:3: ':' Identifier '/' Identifier
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:314:3: ':' Identifier '/' Identifier
{
match(':');
mIdentifier();
@@ -1634,7 +1634,7 @@ public final void mKeywordIdentifier() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:310:3: ':' Identifier
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:315:3: ':' Identifier
{
match(':');
mIdentifier();
@@ -1657,11 +1657,11 @@ public final void mMethodIdentifier() throws RecognitionException{
try
{
int _type = MethodIdentifier;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:314:9: ( Letter ( Letter | JavaIDDigit )* '(' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:314:9: Letter ( Letter | JavaIDDigit )* '('
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:319:9: ( Letter ( Letter | JavaIDDigit )* '(' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:319:9: Letter ( Letter | JavaIDDigit )* '('
{
mLetter();
- // /Users/rich/dev/clojure/src/jvm/Reader.g:314:16: ( Letter | JavaIDDigit )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:319:16: ( Letter | JavaIDDigit )*
loop25:
do
{
@@ -1732,7 +1732,7 @@ public final void mMethodIdentifier() throws RecognitionException{
public final void mLetter() throws RecognitionException{
try
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:321:8: ( '\\u0024' | '\\u0041' .. '\\u005a' | '\\u005f' | '\\u0061' .. '\\u007a' | '\\u00c0' .. '\\u00d6' | '\\u00d8' .. '\\u00f6' | '\\u00f8' .. '\\u00ff' | '\\u0100' .. '\\u1fff' | '\\u3040' .. '\\u318f' | '\\u3300' .. '\\u337f' | '\\u3400' .. '\\u3d2d' | '\\u4e00' .. '\\u9fff' | '\\uf900' .. '\\ufaff' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:326:8: ( '\\u0024' | '\\u0041' .. '\\u005a' | '\\u005f' | '\\u0061' .. '\\u007a' | '\\u00c0' .. '\\u00d6' | '\\u00d8' .. '\\u00f6' | '\\u00f8' .. '\\u00ff' | '\\u0100' .. '\\u1fff' | '\\u3040' .. '\\u318f' | '\\u3300' .. '\\u337f' | '\\u3400' .. '\\u3d2d' | '\\u4e00' .. '\\u9fff' | '\\uf900' .. '\\ufaff' )
// /Users/rich/dev/clojure/src/jvm/Reader.g:
{
if(input.LA(1) == '$' || (input.LA(1) >= 'A' && input.LA(1) <= 'Z') || input.LA(1) == '_' ||
@@ -1770,7 +1770,7 @@ public final void mLetter() throws RecognitionException{
public final void mJavaIDDigit() throws RecognitionException{
try
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:339:6: ( '\\u0030' .. '\\u0039' | '\\u0660' .. '\\u0669' | '\\u06f0' .. '\\u06f9' | '\\u0966' .. '\\u096f' | '\\u09e6' .. '\\u09ef' | '\\u0a66' .. '\\u0a6f' | '\\u0ae6' .. '\\u0aef' | '\\u0b66' .. '\\u0b6f' | '\\u0be7' .. '\\u0bef' | '\\u0c66' .. '\\u0c6f' | '\\u0ce6' .. '\\u0cef' | '\\u0d66' .. '\\u0d6f' | '\\u0e50' .. '\\u0e59' | '\\u0ed0' .. '\\u0ed9' | '\\u1040' .. '\\u1049' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:344:6: ( '\\u0030' .. '\\u0039' | '\\u0660' .. '\\u0669' | '\\u06f0' .. '\\u06f9' | '\\u0966' .. '\\u096f' | '\\u09e6' .. '\\u09ef' | '\\u0a66' .. '\\u0a6f' | '\\u0ae6' .. '\\u0aef' | '\\u0b66' .. '\\u0b6f' | '\\u0be7' .. '\\u0bef' | '\\u0c66' .. '\\u0c6f' | '\\u0ce6' .. '\\u0cef' | '\\u0d66' .. '\\u0d6f' | '\\u0e50' .. '\\u0e59' | '\\u0ed0' .. '\\u0ed9' | '\\u1040' .. '\\u1049' )
// /Users/rich/dev/clojure/src/jvm/Reader.g:
{
if((input.LA(1) >= '0' && input.LA(1) <= '9') || (input.LA(1) >= '\u0660' && input.LA(1) <= '\u0669') ||
@@ -1814,8 +1814,8 @@ public final void mWS() throws RecognitionException{
try
{
int _type = WS;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:356:8: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:356:8: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:361:8: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:361:8: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' )
{
if((input.LA(1) >= '\t' && input.LA(1) <= '\n') || (input.LA(1) >= '\f' && input.LA(1) <= '\r') ||
input.LA(1) == ' ')
@@ -1849,12 +1849,12 @@ public final void mCOMMENT() throws RecognitionException{
try
{
int _type = COMMENT;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:360:9: ( '#|' ( options {greedy=false; } : . )* '|#' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:360:9: '#|' ( options {greedy=false; } : . )* '|#'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:365:9: ( '#|' ( options {greedy=false; } : . )* '|#' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:365:9: '#|' ( options {greedy=false; } : . )* '|#'
{
match("#|");
- // /Users/rich/dev/clojure/src/jvm/Reader.g:360:14: ( options {greedy=false; } : . )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:365:14: ( options {greedy=false; } : . )*
loop26:
do
{
@@ -1885,7 +1885,7 @@ public final void mCOMMENT() throws RecognitionException{
switch(alt26)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:360:42: .
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:365:42: .
{
matchAny();
@@ -1917,11 +1917,11 @@ public final void mLINE_COMMENT() throws RecognitionException{
try
{
int _type = LINE_COMMENT;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:364:7: ( ';' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:364:7: ';' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:369:7: ( ';' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:369:7: ';' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n'
{
match(';');
- // /Users/rich/dev/clojure/src/jvm/Reader.g:364:11: (~ ( '\\n' | '\\r' ) )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:369:11: (~ ( '\\n' | '\\r' ) )*
loop27:
do
{
@@ -1938,7 +1938,7 @@ public final void mLINE_COMMENT() throws RecognitionException{
switch(alt27)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:364:11: ~ ( '\\n' | '\\r' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:369:11: ~ ( '\\n' | '\\r' )
{
if((input.LA(1) >= '\u0000' && input.LA(1) <= '\t') ||
(input.LA(1) >= '\u000B' && input.LA(1) <= '\f') ||
@@ -1964,7 +1964,7 @@ public final void mLINE_COMMENT() throws RecognitionException{
}
} while(true);
- // /Users/rich/dev/clojure/src/jvm/Reader.g:364:25: ( '\\r' )?
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:369:25: ( '\\r' )?
int alt28 = 2;
int LA28_0 = input.LA(1);
@@ -1975,7 +1975,7 @@ public final void mLINE_COMMENT() throws RecognitionException{
switch(alt28)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:364:25: '\\r'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:369:25: '\\r'
{
match('\r');
@@ -2266,7 +2266,7 @@ class DFA16 extends DFA{
}
public String getDescription(){
- return "254:1: FloatingPointLiteral : ( ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( Exponent )? ( FloatTypeSuffix )? | '.' ( '0' .. '9' )+ ( Exponent )? ( FloatTypeSuffix )? | ( '0' .. '9' )+ Exponent ( FloatTypeSuffix )? | ( '0' .. '9' )+ ( Exponent )? FloatTypeSuffix );";
+ return "259:1: FloatingPointLiteral : ( ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( Exponent )? ( FloatTypeSuffix )? | '.' ( '0' .. '9' )+ ( Exponent )? ( FloatTypeSuffix )? | ( '0' .. '9' )+ Exponent ( FloatTypeSuffix )? | ( '0' .. '9' )+ ( Exponent )? FloatTypeSuffix );";
}
}
@@ -2333,7 +2333,7 @@ class DFA24 extends DFA{
}
public String getDescription(){
- return "308:1: KeywordIdentifier : ( ':' Identifier '/' Identifier | ':' Identifier );";
+ return "313:1: KeywordIdentifier : ( ':' Identifier '/' Identifier | ':' Identifier );";
}
}
diff --git a/src/jvm/clojure/lang/ReaderParser.java b/src/jvm/clojure/lang/ReaderParser.java
index e4ab4e96..5cfbbbb0 100644
--- a/src/jvm/clojure/lang/ReaderParser.java
+++ b/src/jvm/clojure/lang/ReaderParser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0 /Users/rich/dev/clojure/src/jvm/Reader.g 2007-07-16 11:13:34
+// $ANTLR 3.0 /Users/rich/dev/clojure/src/jvm/Reader.g 2007-07-20 09:22:37
package clojure.lang;
@@ -61,7 +61,7 @@ public static final int FloatTypeSuffix = 20;
public ReaderParser(TokenStream input){
super(input);
- ruleMemo = new HashMap[48 + 1];
+ ruleMemo = new HashMap[49 + 1];
}
@@ -139,29 +139,13 @@ public void recoverFromMismatchedSet(IntStream input,
// $ANTLR start expression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:121:1: expression returns [Object val] : (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | g= dotExpression | q= quotedExpression | ct= caretExpression );
+// /Users/rich/dev/clojure/src/jvm/Reader.g:121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );
public final Object expression() throws RecognitionException{
Object val = null;
int expression_StartIndex = input.index();
- Object lt = null;
-
- Symbol s = null;
-
- Keyword k = null;
+ Object d = null;
- ISeq le = null;
-
- IPersistentArray ve = null;
-
- IPersistentMap me = null;
-
- Obj mx = null;
-
- Object g = null;
-
- Object q = null;
-
- Object ct = null;
+ Object e = null;
try
@@ -170,34 +154,245 @@ public final Object expression() throws RecognitionException{
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:122:4: (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | g= dotExpression | q= quotedExpression | ct= caretExpression )
- int alt1 = 10;
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:122:3: (d= dotExpression | e= otherThanDotExpression )
+ int alt1 = 2;
switch(input.LA(1))
{
+ case HexLiteral:
+ {
+ int LA1_1 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 1, input);
+
+ throw nvae;
+ }
+ }
+ break;
+ case OctalLiteral:
+ {
+ int LA1_2 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 2, input);
+
+ throw nvae;
+ }
+ }
+ break;
+ case DecimalLiteral:
+ {
+ int LA1_3 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 3, input);
+
+ throw nvae;
+ }
+ }
+ break;
case FloatingPointLiteral:
+ {
+ int LA1_4 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 4, input);
+
+ throw nvae;
+ }
+ }
+ break;
case CharacterLiteral:
+ {
+ int LA1_5 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 5, input);
+
+ throw nvae;
+ }
+ }
+ break;
case StringLiteral:
+ {
+ int LA1_6 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 6, input);
+
+ throw nvae;
+ }
+ }
+ break;
case TrueToken:
+ {
+ int LA1_7 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 7, input);
+
+ throw nvae;
+ }
+ }
+ break;
case NullToken:
- case DecimalLiteral:
- case HexLiteral:
- case OctalLiteral:
{
- alt1 = 1;
+ int LA1_8 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 8, input);
+
+ throw nvae;
+ }
}
break;
case Identifier:
{
- int LA1_2 = input.LA(2);
+ int LA1_9 = input.LA(2);
- if((LA1_2 == EOF || (LA1_2 >= Identifier && LA1_2 <= OctalLiteral) || LA1_2 == Comma ||
- (LA1_2 >= 29 && LA1_2 <= 34) || LA1_2 == 36 || (LA1_2 >= 38 && LA1_2 <= 39)))
+ if((synpred1()))
{
- alt1 = 2;
+ alt1 = 1;
}
- else if((LA1_2 == 37))
+ else if((true))
{
- alt1 = 8;
+ alt1 = 2;
}
else
{
@@ -208,8 +403,8 @@ public final Object expression() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "121:1: expression returns [Object val] : (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | g= dotExpression | q= quotedExpression | ct= caretExpression );",
- 1, 2, input);
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 9, input);
throw nvae;
}
@@ -217,16 +412,15 @@ public final Object expression() throws RecognitionException{
break;
case NSIdentifier:
{
- int LA1_3 = input.LA(2);
+ int LA1_10 = input.LA(2);
- if((LA1_3 == EOF || (LA1_3 >= Identifier && LA1_3 <= OctalLiteral) || LA1_3 == Comma ||
- (LA1_3 >= 29 && LA1_3 <= 34) || LA1_3 == 36 || (LA1_3 >= 38 && LA1_3 <= 39)))
+ if((synpred1()))
{
- alt1 = 2;
+ alt1 = 1;
}
- else if((LA1_3 == 37))
+ else if((true))
{
- alt1 = 8;
+ alt1 = 2;
}
else
{
@@ -237,8 +431,8 @@ public final Object expression() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "121:1: expression returns [Object val] : (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | g= dotExpression | q= quotedExpression | ct= caretExpression );",
- 1, 3, input);
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 10, input);
throw nvae;
}
@@ -246,16 +440,15 @@ public final Object expression() throws RecognitionException{
break;
case DotDot:
{
- int LA1_4 = input.LA(2);
+ int LA1_11 = input.LA(2);
- if((LA1_4 == EOF || (LA1_4 >= Identifier && LA1_4 <= OctalLiteral) || LA1_4 == Comma ||
- (LA1_4 >= 29 && LA1_4 <= 34) || LA1_4 == 36 || (LA1_4 >= 38 && LA1_4 <= 39)))
+ if((synpred1()))
{
- alt1 = 2;
+ alt1 = 1;
}
- else if((LA1_4 == 37))
+ else if((true))
{
- alt1 = 8;
+ alt1 = 2;
}
else
{
@@ -266,8 +459,8 @@ public final Object expression() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "121:1: expression returns [Object val] : (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | g= dotExpression | q= quotedExpression | ct= caretExpression );",
- 1, 4, input);
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 11, input);
throw nvae;
}
@@ -275,37 +468,198 @@ public final Object expression() throws RecognitionException{
break;
case KeywordIdentifier:
{
- alt1 = 3;
+ int LA1_12 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 12, input);
+
+ throw nvae;
+ }
}
break;
case 29:
{
- alt1 = 4;
+ int LA1_13 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 13, input);
+
+ throw nvae;
+ }
}
break;
case 31:
{
- alt1 = 5;
+ int LA1_14 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 14, input);
+
+ throw nvae;
+ }
}
break;
case 33:
{
- alt1 = 6;
+ int LA1_15 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 15, input);
+
+ throw nvae;
+ }
}
break;
case 36:
{
- alt1 = 7;
+ int LA1_16 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 16, input);
+
+ throw nvae;
+ }
}
break;
case 38:
{
- alt1 = 9;
+ int LA1_17 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 17, input);
+
+ throw nvae;
+ }
}
break;
case 39:
{
- alt1 = 10;
+ int LA1_18 = input.LA(2);
+
+ if((synpred1()))
+ {
+ alt1 = 1;
+ }
+ else if((true))
+ {
+ alt1 = 2;
+ }
+ else
+ {
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
+ 1, 18, input);
+
+ throw nvae;
+ }
}
break;
default:
@@ -316,7 +670,7 @@ public final Object expression() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "121:1: expression returns [Object val] : (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | g= dotExpression | q= quotedExpression | ct= caretExpression );",
+ "121:1: expression returns [Object val] : (d= dotExpression | e= otherThanDotExpression );",
1, 0, input);
throw nvae;
@@ -325,9 +679,161 @@ public final Object expression() throws RecognitionException{
switch(alt1)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:122:4: lt= literal
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:122:3: d= dotExpression
+ {
+ pushFollow(FOLLOW_dotExpression_in_expression72);
+ d = dotExpression();
+ _fsp--;
+ if(failed) return val;
+ if(backtracking == 0)
+ {
+ val = d;
+ }
+
+ }
+ break;
+ case 2:
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:123:4: e= otherThanDotExpression
+ {
+ pushFollow(FOLLOW_otherThanDotExpression_in_expression83);
+ e = otherThanDotExpression();
+ _fsp--;
+ if(failed) return val;
+ if(backtracking == 0)
+ {
+ val = e;
+ }
+
+ }
+ break;
+
+ }
+ }
+
+ catch(RecognitionException exc)
+ {
+ throw exc;
+ }
+ finally
+ {
+ if(backtracking > 0)
+ {
+ memoize(input, 1, expression_StartIndex);
+ }
+ }
+ return val;
+}
+// $ANTLR end expression
+
+// $ANTLR start otherThanDotExpression
+// /Users/rich/dev/clojure/src/jvm/Reader.g:126:1: fragment otherThanDotExpression returns [Object val] : (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | q= quotedExpression | ct= caretExpression );
+
+public final Object otherThanDotExpression() throws RecognitionException{
+ Object val = null;
+ int otherThanDotExpression_StartIndex = input.index();
+ Object lt = null;
+
+ Symbol s = null;
+
+ Keyword k = null;
+
+ ISeq le = null;
+
+ IPersistentArray ve = null;
+
+ IPersistentMap me = null;
+
+ Obj mx = null;
+
+ Object q = null;
+
+ Object ct = null;
+
+
+ try
+ {
+ if(backtracking > 0 && alreadyParsedRule(input, 2))
+ {
+ return val;
+ }
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:128:4: (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | q= quotedExpression | ct= caretExpression )
+ int alt2 = 9;
+ switch(input.LA(1))
+ {
+ case FloatingPointLiteral:
+ case CharacterLiteral:
+ case StringLiteral:
+ case TrueToken:
+ case NullToken:
+ case DecimalLiteral:
+ case HexLiteral:
+ case OctalLiteral:
+ {
+ alt2 = 1;
+ }
+ break;
+ case Identifier:
+ case NSIdentifier:
+ case DotDot:
+ {
+ alt2 = 2;
+ }
+ break;
+ case KeywordIdentifier:
+ {
+ alt2 = 3;
+ }
+ break;
+ case 29:
+ {
+ alt2 = 4;
+ }
+ break;
+ case 31:
+ {
+ alt2 = 5;
+ }
+ break;
+ case 33:
+ {
+ alt2 = 6;
+ }
+ break;
+ case 36:
+ {
+ alt2 = 7;
+ }
+ break;
+ case 38:
+ {
+ alt2 = 8;
+ }
+ break;
+ case 39:
+ {
+ alt2 = 9;
+ }
+ break;
+ default:
+ if(backtracking > 0)
+ {
+ failed = true;
+ return val;
+ }
+ NoViableAltException nvae =
+ new NoViableAltException(
+ "126:1: fragment otherThanDotExpression returns [Object val] : (lt= literal | s= symbol | k= keyword | le= listExpression | ve= vectorExpression | me= mapExpression | mx= metaExpression | q= quotedExpression | ct= caretExpression );",
+ 2, 0, input);
+
+ throw nvae;
+ }
+
+ switch(alt2)
+ {
+ case 1:
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:128:4: lt= literal
{
- pushFollow(FOLLOW_literal_in_expression73);
+ pushFollow(FOLLOW_literal_in_otherThanDotExpression106);
lt = literal();
_fsp--;
if(failed) return val;
@@ -339,9 +845,9 @@ public final Object expression() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:123:3: s= symbol
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:129:3: s= symbol
{
- pushFollow(FOLLOW_symbol_in_expression83);
+ pushFollow(FOLLOW_symbol_in_otherThanDotExpression116);
s = symbol();
_fsp--;
if(failed) return val;
@@ -353,9 +859,9 @@ public final Object expression() throws RecognitionException{
}
break;
case 3:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:124:3: k= keyword
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:130:3: k= keyword
{
- pushFollow(FOLLOW_keyword_in_expression93);
+ pushFollow(FOLLOW_keyword_in_otherThanDotExpression126);
k = keyword();
_fsp--;
if(failed) return val;
@@ -367,9 +873,9 @@ public final Object expression() throws RecognitionException{
}
break;
case 4:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:125:3: le= listExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:131:3: le= listExpression
{
- pushFollow(FOLLOW_listExpression_in_expression103);
+ pushFollow(FOLLOW_listExpression_in_otherThanDotExpression136);
le = listExpression();
_fsp--;
if(failed) return val;
@@ -381,9 +887,9 @@ public final Object expression() throws RecognitionException{
}
break;
case 5:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:126:3: ve= vectorExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:132:3: ve= vectorExpression
{
- pushFollow(FOLLOW_vectorExpression_in_expression113);
+ pushFollow(FOLLOW_vectorExpression_in_otherThanDotExpression146);
ve = vectorExpression();
_fsp--;
if(failed) return val;
@@ -395,9 +901,9 @@ public final Object expression() throws RecognitionException{
}
break;
case 6:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:127:3: me= mapExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:133:3: me= mapExpression
{
- pushFollow(FOLLOW_mapExpression_in_expression123);
+ pushFollow(FOLLOW_mapExpression_in_otherThanDotExpression156);
me = mapExpression();
_fsp--;
if(failed) return val;
@@ -409,9 +915,9 @@ public final Object expression() throws RecognitionException{
}
break;
case 7:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:128:3: mx= metaExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:134:3: mx= metaExpression
{
- pushFollow(FOLLOW_metaExpression_in_expression133);
+ pushFollow(FOLLOW_metaExpression_in_otherThanDotExpression166);
mx = metaExpression();
_fsp--;
if(failed) return val;
@@ -423,23 +929,9 @@ public final Object expression() throws RecognitionException{
}
break;
case 8:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:129:3: g= dotExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:135:3: q= quotedExpression
{
- pushFollow(FOLLOW_dotExpression_in_expression143);
- g = dotExpression();
- _fsp--;
- if(failed) return val;
- if(backtracking == 0)
- {
- val = g;
- }
-
- }
- break;
- case 9:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:130:3: q= quotedExpression
- {
- pushFollow(FOLLOW_quotedExpression_in_expression153);
+ pushFollow(FOLLOW_quotedExpression_in_otherThanDotExpression176);
q = quotedExpression();
_fsp--;
if(failed) return val;
@@ -450,10 +942,10 @@ public final Object expression() throws RecognitionException{
}
break;
- case 10:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:131:3: ct= caretExpression
+ case 9:
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:136:3: ct= caretExpression
{
- pushFollow(FOLLOW_caretExpression_in_expression163);
+ pushFollow(FOLLOW_caretExpression_in_otherThanDotExpression186);
ct = caretExpression();
_fsp--;
if(failed) return val;
@@ -476,15 +968,15 @@ public final Object expression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 1, expression_StartIndex);
+ memoize(input, 2, otherThanDotExpression_StartIndex);
}
}
return val;
}
-// $ANTLR end expression
+// $ANTLR end otherThanDotExpression
// $ANTLR start listExpression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:134:1: listExpression returns [ISeq val] : '(' es= expressions ')' ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:139:1: listExpression returns [ISeq val] : '(' es= expressions ')' ;
public final ISeq listExpression() throws RecognitionException{
ISeq val = null;
@@ -494,20 +986,20 @@ public final ISeq listExpression() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 2))
+ if(backtracking > 0 && alreadyParsedRule(input, 3))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:135:4: ( '(' es= expressions ')' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:135:4: '(' es= expressions ')'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:140:4: ( '(' es= expressions ')' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:140:4: '(' es= expressions ')'
{
- match(input, 29, FOLLOW_29_in_listExpression180);
+ match(input, 29, FOLLOW_29_in_listExpression203);
if(failed) return val;
- pushFollow(FOLLOW_expressions_in_listExpression187);
+ pushFollow(FOLLOW_expressions_in_listExpression210);
es = expressions();
_fsp--;
if(failed) return val;
- match(input, 30, FOLLOW_30_in_listExpression189);
+ match(input, 30, FOLLOW_30_in_listExpression212);
if(failed) return val;
if(backtracking == 0)
{
@@ -526,7 +1018,7 @@ public final ISeq listExpression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 2, listExpression_StartIndex);
+ memoize(input, 3, listExpression_StartIndex);
}
}
return val;
@@ -534,7 +1026,7 @@ public final ISeq listExpression() throws RecognitionException{
// $ANTLR end listExpression
// $ANTLR start expressions
-// /Users/rich/dev/clojure/src/jvm/Reader.g:138:10: fragment expressions returns [List es] : (e= expression )* ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:143:10: fragment expressions returns [List es] : (e= expression )* ;
public final List expressions() throws RecognitionException{
List es = null;
@@ -544,42 +1036,46 @@ public final List expressions() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 3))
+ if(backtracking > 0 && alreadyParsedRule(input, 4))
{
return es;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:139:4: ( (e= expression )* )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:139:4: (e= expression )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:144:4: ( (e= expression )* )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:144:4: (e= expression )*
{
- // /Users/rich/dev/clojure/src/jvm/Reader.g:139:6: (e= expression )*
- loop2:
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:144:6: (e= expression )*
+ loop3:
do
{
- int alt2 = 2;
- int LA2_0 = input.LA(1);
+ int alt3 = 2;
+ int LA3_0 = input.LA(1);
- if(((LA2_0 >= Identifier && LA2_0 <= OctalLiteral) || LA2_0 == 29 || LA2_0 == 31 || LA2_0 == 33 ||
- LA2_0 == 36 || (LA2_0 >= 38 && LA2_0 <= 39)))
+ if(((LA3_0 >= Identifier && LA3_0 <= OctalLiteral) || LA3_0 == 29 || LA3_0 == 31 || LA3_0 == 33 ||
+ LA3_0 == 36 || (LA3_0 >= 38 && LA3_0 <= 39)))
{
- alt2 = 1;
+ alt3 = 1;
}
- switch(alt2)
+ switch(alt3)
{
case 1:
// /Users/rich/dev/clojure/src/jvm/Reader.g:0:0: e= expression
{
- pushFollow(FOLLOW_expression_in_expressions211);
+ pushFollow(FOLLOW_expression_in_expressions234);
e = expression();
_fsp--;
if(failed) return es;
+ //WARNING- HAND MODIFIED!
+ if(es == null) es = new ArrayList();
+ es.add(e);
+ // END HAND MODIFIED
}
break;
default:
- break loop2;
+ break loop3;
}
} while(true);
@@ -596,7 +1092,7 @@ public final List expressions() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 3, expressions_StartIndex);
+ memoize(input, 4, expressions_StartIndex);
}
}
return es;
@@ -604,7 +1100,7 @@ public final List expressions() throws RecognitionException{
// $ANTLR end expressions
// $ANTLR start vectorExpression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:142:1: vectorExpression returns [IPersistentArray val] : '[' es= expressions ']' ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:147:1: vectorExpression returns [IPersistentArray val] : '[' es= expressions ']' ;
public final IPersistentArray vectorExpression() throws RecognitionException{
IPersistentArray val = null;
@@ -614,20 +1110,20 @@ public final IPersistentArray vectorExpression() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 4))
+ if(backtracking > 0 && alreadyParsedRule(input, 5))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:143:4: ( '[' es= expressions ']' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:143:4: '[' es= expressions ']'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:148:4: ( '[' es= expressions ']' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:148:4: '[' es= expressions ']'
{
- match(input, 31, FOLLOW_31_in_vectorExpression228);
+ match(input, 31, FOLLOW_31_in_vectorExpression251);
if(failed) return val;
- pushFollow(FOLLOW_expressions_in_vectorExpression234);
+ pushFollow(FOLLOW_expressions_in_vectorExpression257);
es = expressions();
_fsp--;
if(failed) return val;
- match(input, 32, FOLLOW_32_in_vectorExpression236);
+ match(input, 32, FOLLOW_32_in_vectorExpression259);
if(failed) return val;
if(backtracking == 0)
{
@@ -646,7 +1142,7 @@ public final IPersistentArray vectorExpression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 4, vectorExpression_StartIndex);
+ memoize(input, 5, vectorExpression_StartIndex);
}
}
return val;
@@ -654,7 +1150,7 @@ public final IPersistentArray vectorExpression() throws RecognitionException{
// $ANTLR end vectorExpression
// $ANTLR start mapExpression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:146:1: mapExpression returns [IPersistentMap val] : '{' (k= expression v= expression )* '}' ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:151:1: mapExpression returns [IPersistentMap val] : '{' (k= expression v= expression )* '}' ;
public final IPersistentMap mapExpression() throws RecognitionException{
IPersistentMap val = null;
@@ -668,52 +1164,55 @@ public final IPersistentMap mapExpression() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 5))
+ if(backtracking > 0 && alreadyParsedRule(input, 6))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:150:4: ( '{' (k= expression v= expression )* '}' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:150:4: '{' (k= expression v= expression )* '}'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:155:4: ( '{' (k= expression v= expression )* '}' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:155:4: '{' (k= expression v= expression )* '}'
{
- match(input, 33, FOLLOW_33_in_mapExpression256);
+ match(input, 33, FOLLOW_33_in_mapExpression279);
if(failed) return val;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:150:8: (k= expression v= expression )*
- loop3:
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:155:8: (k= expression v= expression )*
+ loop4:
do
{
- int alt3 = 2;
- int LA3_0 = input.LA(1);
+ int alt4 = 2;
+ int LA4_0 = input.LA(1);
- if(((LA3_0 >= Identifier && LA3_0 <= OctalLiteral) || LA3_0 == 29 || LA3_0 == 31 || LA3_0 == 33 ||
- LA3_0 == 36 || (LA3_0 >= 38 && LA3_0 <= 39)))
+ if(((LA4_0 >= Identifier && LA4_0 <= OctalLiteral) || LA4_0 == 29 || LA4_0 == 31 || LA4_0 == 33 ||
+ LA4_0 == 36 || (LA4_0 >= 38 && LA4_0 <= 39)))
{
- alt3 = 1;
+ alt4 = 1;
}
- switch(alt3)
+ switch(alt4)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:150:9: k= expression v= expression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:155:9: k= expression v= expression
{
- pushFollow(FOLLOW_expression_in_mapExpression261);
+ pushFollow(FOLLOW_expression_in_mapExpression284);
k = expression();
_fsp--;
if(failed) return val;
- pushFollow(FOLLOW_expression_in_mapExpression265);
+ pushFollow(FOLLOW_expression_in_mapExpression288);
v = expression();
_fsp--;
if(failed) return val;
+ //WARNING- HAND MODIFIED!
+ val = val.assoc(k, v);
+ // END HAND MODIFIED
}
break;
default:
- break loop3;
+ break loop4;
}
} while(true);
- match(input, 34, FOLLOW_34_in_mapExpression269);
+ match(input, 34, FOLLOW_34_in_mapExpression292);
if(failed) return val;
}
@@ -728,7 +1227,7 @@ public final IPersistentMap mapExpression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 5, mapExpression_StartIndex);
+ memoize(input, 6, mapExpression_StartIndex);
}
}
return val;
@@ -736,7 +1235,7 @@ public final IPersistentMap mapExpression() throws RecognitionException{
// $ANTLR end mapExpression
// $ANTLR start symbol
-// /Users/rich/dev/clojure/src/jvm/Reader.g:153:1: symbol returns [Symbol val] : (n= Identifier | n= NSIdentifier | dd= DotDot );
+// /Users/rich/dev/clojure/src/jvm/Reader.g:158:1: symbol returns [Symbol val] : (n= Identifier | n= NSIdentifier | dd= DotDot );
public final Symbol symbol() throws RecognitionException{
Symbol val = null;
@@ -746,27 +1245,27 @@ public final Symbol symbol() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 6))
+ if(backtracking > 0 && alreadyParsedRule(input, 7))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:154:3: (n= Identifier | n= NSIdentifier | dd= DotDot )
- int alt4 = 3;
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:159:3: (n= Identifier | n= NSIdentifier | dd= DotDot )
+ int alt5 = 3;
switch(input.LA(1))
{
case Identifier:
{
- alt4 = 1;
+ alt5 = 1;
}
break;
case NSIdentifier:
{
- alt4 = 2;
+ alt5 = 2;
}
break;
case DotDot:
{
- alt4 = 3;
+ alt5 = 3;
}
break;
default:
@@ -777,19 +1276,19 @@ public final Symbol symbol() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "153:1: symbol returns [Symbol val] : (n= Identifier | n= NSIdentifier | dd= DotDot );",
- 4, 0, input);
+ "158:1: symbol returns [Symbol val] : (n= Identifier | n= NSIdentifier | dd= DotDot );",
+ 5, 0, input);
throw nvae;
}
- switch(alt4)
+ switch(alt5)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:154:3: n= Identifier
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:159:3: n= Identifier
{
n = (Token) input.LT(1);
- match(input, Identifier, FOLLOW_Identifier_in_symbol286);
+ match(input, Identifier, FOLLOW_Identifier_in_symbol309);
if(failed) return val;
if(backtracking == 0)
{
@@ -799,10 +1298,10 @@ public final Symbol symbol() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:155:3: n= NSIdentifier
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:160:3: n= NSIdentifier
{
n = (Token) input.LT(1);
- match(input, NSIdentifier, FOLLOW_NSIdentifier_in_symbol296);
+ match(input, NSIdentifier, FOLLOW_NSIdentifier_in_symbol319);
if(failed) return val;
if(backtracking == 0)
{
@@ -812,10 +1311,10 @@ public final Symbol symbol() throws RecognitionException{
}
break;
case 3:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:156:3: dd= DotDot
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:161:3: dd= DotDot
{
dd = (Token) input.LT(1);
- match(input, DotDot, FOLLOW_DotDot_in_symbol306);
+ match(input, DotDot, FOLLOW_DotDot_in_symbol329);
if(failed) return val;
if(backtracking == 0)
{
@@ -836,7 +1335,7 @@ public final Symbol symbol() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 6, symbol_StartIndex);
+ memoize(input, 7, symbol_StartIndex);
}
}
return val;
@@ -844,7 +1343,7 @@ public final Symbol symbol() throws RecognitionException{
// $ANTLR end symbol
// $ANTLR start keyword
-// /Users/rich/dev/clojure/src/jvm/Reader.g:159:1: keyword returns [Keyword val] : k= KeywordIdentifier ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:164:1: keyword returns [Keyword val] : k= KeywordIdentifier ;
public final Keyword keyword() throws RecognitionException{
Keyword val = null;
@@ -853,19 +1352,19 @@ public final Keyword keyword() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 7))
+ if(backtracking > 0 && alreadyParsedRule(input, 8))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:160:3: (k= KeywordIdentifier )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:160:3: k= KeywordIdentifier
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:165:3: (k= KeywordIdentifier )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:165:3: k= KeywordIdentifier
{
k = (Token) input.LT(1);
- match(input, KeywordIdentifier, FOLLOW_KeywordIdentifier_in_keyword326);
+ match(input, KeywordIdentifier, FOLLOW_KeywordIdentifier_in_keyword349);
if(failed) return val;
if(backtracking == 0)
{
- val = new Keyword(k.getText().substring(1));
+ val = new Keyword(new Symbol(k.getText().substring(1)));
}
}
@@ -880,7 +1379,7 @@ public final Keyword keyword() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 7, keyword_StartIndex);
+ memoize(input, 8, keyword_StartIndex);
}
}
return val;
@@ -888,7 +1387,7 @@ public final Keyword keyword() throws RecognitionException{
// $ANTLR end keyword
// $ANTLR start literal
-// /Users/rich/dev/clojure/src/jvm/Reader.g:164:1: literal returns [Object val] : (i= integerLiteral | fp= FloatingPointLiteral | c= CharacterLiteral | s= StringLiteral | TrueToken | NullToken | r= ratioLiteral );
+// /Users/rich/dev/clojure/src/jvm/Reader.g:169:1: literal returns [Object val] : (i= integerLiteral | fp= FloatingPointLiteral | c= CharacterLiteral | s= StringLiteral | TrueToken | NullToken | r= ratioLiteral );
public final Object literal() throws RecognitionException{
Object val = null;
@@ -903,32 +1402,32 @@ public final Object literal() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 8))
+ if(backtracking > 0 && alreadyParsedRule(input, 9))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:165:6: (i= integerLiteral | fp= FloatingPointLiteral | c= CharacterLiteral | s= StringLiteral | TrueToken | NullToken | r= ratioLiteral )
- int alt5 = 7;
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:170:6: (i= integerLiteral | fp= FloatingPointLiteral | c= CharacterLiteral | s= StringLiteral | TrueToken | NullToken | r= ratioLiteral )
+ int alt6 = 7;
switch(input.LA(1))
{
case HexLiteral:
case OctalLiteral:
{
- alt5 = 1;
+ alt6 = 1;
}
break;
case DecimalLiteral:
{
- int LA5_2 = input.LA(2);
+ int LA6_2 = input.LA(2);
- if((LA5_2 == 35))
+ if((LA6_2 == 35))
{
- alt5 = 7;
+ alt6 = 7;
}
- else if((LA5_2 == EOF || (LA5_2 >= Identifier && LA5_2 <= OctalLiteral) || LA5_2 == Comma ||
- (LA5_2 >= 29 && LA5_2 <= 34) || LA5_2 == 36 || (LA5_2 >= 38 && LA5_2 <= 39)))
+ else if((LA6_2 == EOF || (LA6_2 >= Identifier && LA6_2 <= OctalLiteral) || LA6_2 == Comma ||
+ (LA6_2 >= 29 && LA6_2 <= 34) || (LA6_2 >= 36 && LA6_2 <= 39)))
{
- alt5 = 1;
+ alt6 = 1;
}
else
{
@@ -939,8 +1438,8 @@ public final Object literal() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "164:1: literal returns [Object val] : (i= integerLiteral | fp= FloatingPointLiteral | c= CharacterLiteral | s= StringLiteral | TrueToken | NullToken | r= ratioLiteral );",
- 5, 2, input);
+ "169:1: literal returns [Object val] : (i= integerLiteral | fp= FloatingPointLiteral | c= CharacterLiteral | s= StringLiteral | TrueToken | NullToken | r= ratioLiteral );",
+ 6, 2, input);
throw nvae;
}
@@ -948,27 +1447,27 @@ public final Object literal() throws RecognitionException{
break;
case FloatingPointLiteral:
{
- alt5 = 2;
+ alt6 = 2;
}
break;
case CharacterLiteral:
{
- alt5 = 3;
+ alt6 = 3;
}
break;
case StringLiteral:
{
- alt5 = 4;
+ alt6 = 4;
}
break;
case TrueToken:
{
- alt5 = 5;
+ alt6 = 5;
}
break;
case NullToken:
{
- alt5 = 6;
+ alt6 = 6;
}
break;
default:
@@ -979,18 +1478,18 @@ public final Object literal() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "164:1: literal returns [Object val] : (i= integerLiteral | fp= FloatingPointLiteral | c= CharacterLiteral | s= StringLiteral | TrueToken | NullToken | r= ratioLiteral );",
- 5, 0, input);
+ "169:1: literal returns [Object val] : (i= integerLiteral | fp= FloatingPointLiteral | c= CharacterLiteral | s= StringLiteral | TrueToken | NullToken | r= ratioLiteral );",
+ 6, 0, input);
throw nvae;
}
- switch(alt5)
+ switch(alt6)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:165:6: i= integerLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:170:6: i= integerLiteral
{
- pushFollow(FOLLOW_integerLiteral_in_literal353);
+ pushFollow(FOLLOW_integerLiteral_in_literal376);
i = integerLiteral();
_fsp--;
if(failed) return val;
@@ -1002,10 +1501,10 @@ public final Object literal() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:166:6: fp= FloatingPointLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:171:6: fp= FloatingPointLiteral
{
fp = (Token) input.LT(1);
- match(input, FloatingPointLiteral, FOLLOW_FloatingPointLiteral_in_literal366);
+ match(input, FloatingPointLiteral, FOLLOW_FloatingPointLiteral_in_literal389);
if(failed) return val;
if(backtracking == 0)
{
@@ -1015,10 +1514,10 @@ public final Object literal() throws RecognitionException{
}
break;
case 3:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:167:6: c= CharacterLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:172:6: c= CharacterLiteral
{
c = (Token) input.LT(1);
- match(input, CharacterLiteral, FOLLOW_CharacterLiteral_in_literal379);
+ match(input, CharacterLiteral, FOLLOW_CharacterLiteral_in_literal402);
if(failed) return val;
if(backtracking == 0)
{
@@ -1028,10 +1527,10 @@ public final Object literal() throws RecognitionException{
}
break;
case 4:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:168:6: s= StringLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:173:6: s= StringLiteral
{
s = (Token) input.LT(1);
- match(input, StringLiteral, FOLLOW_StringLiteral_in_literal392);
+ match(input, StringLiteral, FOLLOW_StringLiteral_in_literal415);
if(failed) return val;
if(backtracking == 0)
{
@@ -1041,9 +1540,9 @@ public final Object literal() throws RecognitionException{
}
break;
case 5:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:169:6: TrueToken
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:174:6: TrueToken
{
- match(input, TrueToken, FOLLOW_TrueToken_in_literal401);
+ match(input, TrueToken, FOLLOW_TrueToken_in_literal424);
if(failed) return val;
if(backtracking == 0)
{
@@ -1053,9 +1552,9 @@ public final Object literal() throws RecognitionException{
}
break;
case 6:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:170:6: NullToken
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:175:6: NullToken
{
- match(input, NullToken, FOLLOW_NullToken_in_literal410);
+ match(input, NullToken, FOLLOW_NullToken_in_literal433);
if(failed) return val;
if(backtracking == 0)
{
@@ -1065,9 +1564,9 @@ public final Object literal() throws RecognitionException{
}
break;
case 7:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:171:6: r= ratioLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:176:6: r= ratioLiteral
{
- pushFollow(FOLLOW_ratioLiteral_in_literal423);
+ pushFollow(FOLLOW_ratioLiteral_in_literal446);
r = ratioLiteral();
_fsp--;
if(failed) return val;
@@ -1090,7 +1589,7 @@ public final Object literal() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 8, literal_StartIndex);
+ memoize(input, 9, literal_StartIndex);
}
}
return val;
@@ -1098,7 +1597,7 @@ public final Object literal() throws RecognitionException{
// $ANTLR end literal
// $ANTLR start ratioLiteral
-// /Users/rich/dev/clojure/src/jvm/Reader.g:174:1: ratioLiteral returns [Num val] : n= DecimalLiteral '/' d= DecimalLiteral ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:179:1: ratioLiteral returns [Num val] : n= DecimalLiteral '/' d= DecimalLiteral ;
public final Num ratioLiteral() throws RecognitionException{
Num val = null;
@@ -1108,20 +1607,20 @@ public final Num ratioLiteral() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 9))
+ if(backtracking > 0 && alreadyParsedRule(input, 10))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:175:4: (n= DecimalLiteral '/' d= DecimalLiteral )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:175:4: n= DecimalLiteral '/' d= DecimalLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:180:4: (n= DecimalLiteral '/' d= DecimalLiteral )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:180:4: n= DecimalLiteral '/' d= DecimalLiteral
{
n = (Token) input.LT(1);
- match(input, DecimalLiteral, FOLLOW_DecimalLiteral_in_ratioLiteral446);
+ match(input, DecimalLiteral, FOLLOW_DecimalLiteral_in_ratioLiteral469);
if(failed) return val;
- match(input, 35, FOLLOW_35_in_ratioLiteral448);
+ match(input, 35, FOLLOW_35_in_ratioLiteral471);
if(failed) return val;
d = (Token) input.LT(1);
- match(input, DecimalLiteral, FOLLOW_DecimalLiteral_in_ratioLiteral454);
+ match(input, DecimalLiteral, FOLLOW_DecimalLiteral_in_ratioLiteral477);
if(failed) return val;
if(backtracking == 0)
{
@@ -1140,7 +1639,7 @@ public final Num ratioLiteral() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 9, ratioLiteral_StartIndex);
+ memoize(input, 10, ratioLiteral_StartIndex);
}
}
return val;
@@ -1148,7 +1647,7 @@ public final Num ratioLiteral() throws RecognitionException{
// $ANTLR end ratioLiteral
// $ANTLR start integerLiteral
-// /Users/rich/dev/clojure/src/jvm/Reader.g:178:1: integerLiteral returns [Num val] : (hn= HexLiteral | on= OctalLiteral | nn= DecimalLiteral );
+// /Users/rich/dev/clojure/src/jvm/Reader.g:183:1: integerLiteral returns [Num val] : (hn= HexLiteral | on= OctalLiteral | nn= DecimalLiteral );
public final Num integerLiteral() throws RecognitionException{
Num val = null;
@@ -1159,27 +1658,27 @@ public final Num integerLiteral() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 10))
+ if(backtracking > 0 && alreadyParsedRule(input, 11))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:179:9: (hn= HexLiteral | on= OctalLiteral | nn= DecimalLiteral )
- int alt6 = 3;
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:184:9: (hn= HexLiteral | on= OctalLiteral | nn= DecimalLiteral )
+ int alt7 = 3;
switch(input.LA(1))
{
case HexLiteral:
{
- alt6 = 1;
+ alt7 = 1;
}
break;
case OctalLiteral:
{
- alt6 = 2;
+ alt7 = 2;
}
break;
case DecimalLiteral:
{
- alt6 = 3;
+ alt7 = 3;
}
break;
default:
@@ -1190,19 +1689,19 @@ public final Num integerLiteral() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "178:1: integerLiteral returns [Num val] : (hn= HexLiteral | on= OctalLiteral | nn= DecimalLiteral );",
- 6, 0, input);
+ "183:1: integerLiteral returns [Num val] : (hn= HexLiteral | on= OctalLiteral | nn= DecimalLiteral );",
+ 7, 0, input);
throw nvae;
}
- switch(alt6)
+ switch(alt7)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:179:9: hn= HexLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:184:9: hn= HexLiteral
{
hn = (Token) input.LT(1);
- match(input, HexLiteral, FOLLOW_HexLiteral_in_integerLiteral480);
+ match(input, HexLiteral, FOLLOW_HexLiteral_in_integerLiteral503);
if(failed) return val;
if(backtracking == 0)
{
@@ -1212,10 +1711,10 @@ public final Num integerLiteral() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:180:9: on= OctalLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:185:9: on= OctalLiteral
{
on = (Token) input.LT(1);
- match(input, OctalLiteral, FOLLOW_OctalLiteral_in_integerLiteral499);
+ match(input, OctalLiteral, FOLLOW_OctalLiteral_in_integerLiteral522);
if(failed) return val;
if(backtracking == 0)
{
@@ -1225,10 +1724,10 @@ public final Num integerLiteral() throws RecognitionException{
}
break;
case 3:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:181:9: nn= DecimalLiteral
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:186:9: nn= DecimalLiteral
{
nn = (Token) input.LT(1);
- match(input, DecimalLiteral, FOLLOW_DecimalLiteral_in_integerLiteral517);
+ match(input, DecimalLiteral, FOLLOW_DecimalLiteral_in_integerLiteral540);
if(failed) return val;
if(backtracking == 0)
{
@@ -1249,7 +1748,7 @@ public final Num integerLiteral() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 10, integerLiteral_StartIndex);
+ memoize(input, 11, integerLiteral_StartIndex);
}
}
return val;
@@ -1257,7 +1756,7 @@ public final Num integerLiteral() throws RecognitionException{
// $ANTLR end integerLiteral
// $ANTLR start metaTag
-// /Users/rich/dev/clojure/src/jvm/Reader.g:186:1: fragment metaTag returns [IPersistentMap val] : ( '#^' s= symbol | '#^' m= mapExpression );
+// /Users/rich/dev/clojure/src/jvm/Reader.g:191:1: fragment metaTag returns [IPersistentMap val] : ( '#^' s= symbol | '#^' m= mapExpression );
public final IPersistentMap metaTag() throws RecognitionException{
IPersistentMap val = null;
@@ -1269,25 +1768,25 @@ public final IPersistentMap metaTag() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 11))
+ if(backtracking > 0 && alreadyParsedRule(input, 12))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:188:3: ( '#^' s= symbol | '#^' m= mapExpression )
- int alt7 = 2;
- int LA7_0 = input.LA(1);
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:193:3: ( '#^' s= symbol | '#^' m= mapExpression )
+ int alt8 = 2;
+ int LA8_0 = input.LA(1);
- if((LA7_0 == 36))
+ if((LA8_0 == 36))
{
- int LA7_1 = input.LA(2);
+ int LA8_1 = input.LA(2);
- if((LA7_1 == 33))
+ if(((LA8_1 >= Identifier && LA8_1 <= DotDot)))
{
- alt7 = 2;
+ alt8 = 1;
}
- else if(((LA7_1 >= Identifier && LA7_1 <= DotDot)))
+ else if((LA8_1 == 33))
{
- alt7 = 1;
+ alt8 = 2;
}
else
{
@@ -1298,8 +1797,8 @@ public final IPersistentMap metaTag() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "186:1: fragment metaTag returns [IPersistentMap val] : ( '#^' s= symbol | '#^' m= mapExpression );",
- 7, 1, input);
+ "191:1: fragment metaTag returns [IPersistentMap val] : ( '#^' s= symbol | '#^' m= mapExpression );",
+ 8, 1, input);
throw nvae;
}
@@ -1313,19 +1812,19 @@ public final IPersistentMap metaTag() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "186:1: fragment metaTag returns [IPersistentMap val] : ( '#^' s= symbol | '#^' m= mapExpression );",
- 7, 0, input);
+ "191:1: fragment metaTag returns [IPersistentMap val] : ( '#^' s= symbol | '#^' m= mapExpression );",
+ 8, 0, input);
throw nvae;
}
- switch(alt7)
+ switch(alt8)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:188:3: '#^' s= symbol
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:193:3: '#^' s= symbol
{
- match(input, 36, FOLLOW_36_in_metaTag540);
+ match(input, 36, FOLLOW_36_in_metaTag563);
if(failed) return val;
- pushFollow(FOLLOW_symbol_in_metaTag546);
+ pushFollow(FOLLOW_symbol_in_metaTag569);
s = symbol();
_fsp--;
if(failed) return val;
@@ -1337,11 +1836,11 @@ public final IPersistentMap metaTag() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:189:3: '#^' m= mapExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:194:3: '#^' m= mapExpression
{
- match(input, 36, FOLLOW_36_in_metaTag552);
+ match(input, 36, FOLLOW_36_in_metaTag575);
if(failed) return val;
- pushFollow(FOLLOW_mapExpression_in_metaTag558);
+ pushFollow(FOLLOW_mapExpression_in_metaTag581);
m = mapExpression();
_fsp--;
if(failed) return val;
@@ -1364,7 +1863,7 @@ public final IPersistentMap metaTag() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 11, metaTag_StartIndex);
+ memoize(input, 12, metaTag_StartIndex);
}
}
return val;
@@ -1372,7 +1871,7 @@ public final IPersistentMap metaTag() throws RecognitionException{
// $ANTLR end metaTag
// $ANTLR start objExpression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:192:1: fragment objExpression returns [Obj val] : (s= symbol | le= listExpression | me= mapExpression | ve= vectorExpression );
+// /Users/rich/dev/clojure/src/jvm/Reader.g:197:1: fragment objExpression returns [Obj val] : (s= symbol | le= listExpression | me= mapExpression | ve= vectorExpression );
public final Obj objExpression() throws RecognitionException{
Obj val = null;
@@ -1388,34 +1887,34 @@ public final Obj objExpression() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 12))
+ if(backtracking > 0 && alreadyParsedRule(input, 13))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:194:3: (s= symbol | le= listExpression | me= mapExpression | ve= vectorExpression )
- int alt8 = 4;
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:199:3: (s= symbol | le= listExpression | me= mapExpression | ve= vectorExpression )
+ int alt9 = 4;
switch(input.LA(1))
{
case Identifier:
case NSIdentifier:
case DotDot:
{
- alt8 = 1;
+ alt9 = 1;
}
break;
case 29:
{
- alt8 = 2;
+ alt9 = 2;
}
break;
case 33:
{
- alt8 = 3;
+ alt9 = 3;
}
break;
case 31:
{
- alt8 = 4;
+ alt9 = 4;
}
break;
default:
@@ -1426,18 +1925,18 @@ public final Obj objExpression() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "192:1: fragment objExpression returns [Obj val] : (s= symbol | le= listExpression | me= mapExpression | ve= vectorExpression );",
- 8, 0, input);
+ "197:1: fragment objExpression returns [Obj val] : (s= symbol | le= listExpression | me= mapExpression | ve= vectorExpression );",
+ 9, 0, input);
throw nvae;
}
- switch(alt8)
+ switch(alt9)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:194:3: s= symbol
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:199:3: s= symbol
{
- pushFollow(FOLLOW_symbol_in_objExpression581);
+ pushFollow(FOLLOW_symbol_in_objExpression604);
s = symbol();
_fsp--;
if(failed) return val;
@@ -1449,9 +1948,9 @@ public final Obj objExpression() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:195:3: le= listExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:200:3: le= listExpression
{
- pushFollow(FOLLOW_listExpression_in_objExpression591);
+ pushFollow(FOLLOW_listExpression_in_objExpression614);
le = listExpression();
_fsp--;
if(failed) return val;
@@ -1463,9 +1962,9 @@ public final Obj objExpression() throws RecognitionException{
}
break;
case 3:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:196:3: me= mapExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:201:3: me= mapExpression
{
- pushFollow(FOLLOW_mapExpression_in_objExpression601);
+ pushFollow(FOLLOW_mapExpression_in_objExpression624);
me = mapExpression();
_fsp--;
if(failed) return val;
@@ -1477,9 +1976,9 @@ public final Obj objExpression() throws RecognitionException{
}
break;
case 4:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:197:3: ve= vectorExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:202:3: ve= vectorExpression
{
- pushFollow(FOLLOW_vectorExpression_in_objExpression611);
+ pushFollow(FOLLOW_vectorExpression_in_objExpression634);
ve = vectorExpression();
_fsp--;
if(failed) return val;
@@ -1502,7 +2001,7 @@ public final Obj objExpression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 12, objExpression_StartIndex);
+ memoize(input, 13, objExpression_StartIndex);
}
}
return val;
@@ -1510,7 +2009,7 @@ public final Obj objExpression() throws RecognitionException{
// $ANTLR end objExpression
// $ANTLR start metaExpression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:200:1: metaExpression returns [Obj val] : m= metaTag e= objExpression ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:205:1: metaExpression returns [Obj val] : m= metaTag e= objExpression ;
public final Obj metaExpression() throws RecognitionException{
Obj val = null;
@@ -1522,18 +2021,18 @@ public final Obj metaExpression() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 13))
+ if(backtracking > 0 && alreadyParsedRule(input, 14))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:201:3: (m= metaTag e= objExpression )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:201:3: m= metaTag e= objExpression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:206:3: (m= metaTag e= objExpression )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:206:3: m= metaTag e= objExpression
{
- pushFollow(FOLLOW_metaTag_in_metaExpression633);
+ pushFollow(FOLLOW_metaTag_in_metaExpression656);
m = metaTag();
_fsp--;
if(failed) return val;
- pushFollow(FOLLOW_objExpression_in_metaExpression639);
+ pushFollow(FOLLOW_objExpression_in_metaExpression662);
e = objExpression();
_fsp--;
if(failed) return val;
@@ -1554,7 +2053,7 @@ public final Obj metaExpression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 13, metaExpression_StartIndex);
+ memoize(input, 14, metaExpression_StartIndex);
}
}
return val;
@@ -1562,7 +2061,7 @@ public final Obj metaExpression() throws RecognitionException{
// $ANTLR end metaExpression
// $ANTLR start member
-// /Users/rich/dev/clojure/src/jvm/Reader.g:204:1: fragment member returns [Object val] : ( '.' i= Identifier | '.' m= method );
+// /Users/rich/dev/clojure/src/jvm/Reader.g:209:1: fragment member returns [Object val] : ( '.' i= Identifier | '.' m= method );
public final Object member() throws RecognitionException{
Object val = null;
@@ -1573,25 +2072,25 @@ public final Object member() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 14))
+ if(backtracking > 0 && alreadyParsedRule(input, 15))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:206:4: ( '.' i= Identifier | '.' m= method )
- int alt9 = 2;
- int LA9_0 = input.LA(1);
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:211:4: ( '.' i= Identifier | '.' m= method )
+ int alt10 = 2;
+ int LA10_0 = input.LA(1);
- if((LA9_0 == 37))
+ if((LA10_0 == 37))
{
- int LA9_1 = input.LA(2);
+ int LA10_1 = input.LA(2);
- if((LA9_1 == Identifier))
+ if((LA10_1 == Identifier))
{
- alt9 = 1;
+ alt10 = 1;
}
- else if((LA9_1 == MethodIdentifier))
+ else if((LA10_1 == MethodIdentifier))
{
- alt9 = 2;
+ alt10 = 2;
}
else
{
@@ -1602,8 +2101,8 @@ public final Object member() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "204:1: fragment member returns [Object val] : ( '.' i= Identifier | '.' m= method );",
- 9, 1, input);
+ "209:1: fragment member returns [Object val] : ( '.' i= Identifier | '.' m= method );",
+ 10, 1, input);
throw nvae;
}
@@ -1617,20 +2116,20 @@ public final Object member() throws RecognitionException{
}
NoViableAltException nvae =
new NoViableAltException(
- "204:1: fragment member returns [Object val] : ( '.' i= Identifier | '.' m= method );", 9,
+ "209:1: fragment member returns [Object val] : ( '.' i= Identifier | '.' m= method );", 10,
0, input);
throw nvae;
}
- switch(alt9)
+ switch(alt10)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:206:4: '.' i= Identifier
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:211:4: '.' i= Identifier
{
- match(input, 37, FOLLOW_37_in_member659);
+ match(input, 37, FOLLOW_37_in_member682);
if(failed) return val;
i = (Token) input.LT(1);
- match(input, Identifier, FOLLOW_Identifier_in_member665);
+ match(input, Identifier, FOLLOW_Identifier_in_member688);
if(failed) return val;
if(backtracking == 0)
{
@@ -1640,11 +2139,11 @@ public final Object member() throws RecognitionException{
}
break;
case 2:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:207:4: '.' m= method
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:212:4: '.' m= method
{
- match(input, 37, FOLLOW_37_in_member672);
+ match(input, 37, FOLLOW_37_in_member695);
if(failed) return val;
- pushFollow(FOLLOW_method_in_member678);
+ pushFollow(FOLLOW_method_in_member701);
m = method();
_fsp--;
if(failed) return val;
@@ -1667,7 +2166,7 @@ public final Object member() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 14, member_StartIndex);
+ memoize(input, 15, member_StartIndex);
}
}
return val;
@@ -1675,7 +2174,7 @@ public final Object member() throws RecognitionException{
// $ANTLR end member
// $ANTLR start method
-// /Users/rich/dev/clojure/src/jvm/Reader.g:210:1: fragment method returns [Object val] : i= MethodIdentifier (es= args )? ')' ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:215:1: fragment method returns [Object val] : i= MethodIdentifier (es= args )? ')' ;
public final Object method() throws RecognitionException{
Object val = null;
@@ -1686,31 +2185,31 @@ public final Object method() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 15))
+ if(backtracking > 0 && alreadyParsedRule(input, 16))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:212:4: (i= MethodIdentifier (es= args )? ')' )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:212:4: i= MethodIdentifier (es= args )? ')'
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:217:4: (i= MethodIdentifier (es= args )? ')' )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:217:4: i= MethodIdentifier (es= args )? ')'
{
i = (Token) input.LT(1);
- match(input, MethodIdentifier, FOLLOW_MethodIdentifier_in_method703);
+ match(input, MethodIdentifier, FOLLOW_MethodIdentifier_in_method726);
if(failed) return val;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:212:28: (es= args )?
- int alt10 = 2;
- int LA10_0 = input.LA(1);
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:217:28: (es= args )?
+ int alt11 = 2;
+ int LA11_0 = input.LA(1);
- if(((LA10_0 >= Identifier && LA10_0 <= OctalLiteral) || LA10_0 == 29 || LA10_0 == 31 || LA10_0 == 33 ||
- LA10_0 == 36 || (LA10_0 >= 38 && LA10_0 <= 39)))
+ if(((LA11_0 >= Identifier && LA11_0 <= OctalLiteral) || LA11_0 == 29 || LA11_0 == 31 || LA11_0 == 33 ||
+ LA11_0 == 36 || (LA11_0 >= 38 && LA11_0 <= 39)))
{
- alt10 = 1;
+ alt11 = 1;
}
- switch(alt10)
+ switch(alt11)
{
case 1:
// /Users/rich/dev/clojure/src/jvm/Reader.g:0:0: es= args
{
- pushFollow(FOLLOW_args_in_method709);
+ pushFollow(FOLLOW_args_in_method732);
es = args();
_fsp--;
if(failed) return val;
@@ -1720,7 +2219,7 @@ public final Object method() throws RecognitionException{
}
- match(input, 30, FOLLOW_30_in_method712);
+ match(input, 30, FOLLOW_30_in_method735);
if(failed) return val;
if(backtracking == 0)
{
@@ -1739,7 +2238,7 @@ public final Object method() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 15, method_StartIndex);
+ memoize(input, 16, method_StartIndex);
}
}
return val;
@@ -1747,7 +2246,7 @@ public final Object method() throws RecognitionException{
// $ANTLR end method
// $ANTLR start args
-// /Users/rich/dev/clojure/src/jvm/Reader.g:215:10: fragment args returns [ISeq val] : e1= expression ( Comma e= expression )* ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:220:10: fragment args returns [ISeq val] : e1= expression ( Comma e= expression )* ;
public final ISeq args() throws RecognitionException{
ISeq val = null;
@@ -1761,47 +2260,51 @@ public final ISeq args() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 16))
+ if(backtracking > 0 && alreadyParsedRule(input, 17))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:219:4: (e1= expression ( Comma e= expression )* )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:219:4: e1= expression ( Comma e= expression )*
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:224:4: (e1= expression ( Comma e= expression )* )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:224:4: e1= expression ( Comma e= expression )*
{
- pushFollow(FOLLOW_expression_in_args738);
+ pushFollow(FOLLOW_expression_in_args761);
e1 = expression();
_fsp--;
if(failed) return val;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:219:21: ( Comma e= expression )*
- loop11:
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:224:21: ( Comma e= expression )*
+ loop12:
do
{
- int alt11 = 2;
- int LA11_0 = input.LA(1);
+ int alt12 = 2;
+ int LA12_0 = input.LA(1);
- if((LA11_0 == Comma))
+ if((LA12_0 == Comma))
{
- alt11 = 1;
+ alt12 = 1;
}
- switch(alt11)
+ switch(alt12)
{
case 1:
- // /Users/rich/dev/clojure/src/jvm/Reader.g:219:22: Comma e= expression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:224:22: Comma e= expression
{
- match(input, Comma, FOLLOW_Comma_in_args742);
+ match(input, Comma, FOLLOW_Comma_in_args765);
if(failed) return val;
- pushFollow(FOLLOW_expression_in_args748);
+ pushFollow(FOLLOW_expression_in_args771);
e = expression();
_fsp--;
if(failed) return val;
+ //WARNING- HAND MODIFIED!
+ if(es == null) es = new ArrayList();
+ es.add(e);
+ // END HAND MODIFIED
}
break;
default:
- break loop11;
+ break loop12;
}
} while(true);
@@ -1822,7 +2325,7 @@ public final ISeq args() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 16, args_StartIndex);
+ memoize(input, 17, args_StartIndex);
}
}
return val;
@@ -1830,12 +2333,12 @@ public final ISeq args() throws RecognitionException{
// $ANTLR end args
// $ANTLR start dotExpression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:222:1: dotExpression returns [Object val] : s= symbol (e= member )+ ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:227:1: dotExpression returns [Object val] : s= otherThanDotExpression (e= member )+ ;
public final Object dotExpression() throws RecognitionException{
Object val = null;
int dotExpression_StartIndex = input.index();
- Symbol s = null;
+ Object s = null;
Object e = null;
@@ -1844,56 +2347,67 @@ public final Object dotExpression() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 17))
+ if(backtracking > 0 && alreadyParsedRule(input, 18))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:226:3: (s= symbol (e= member )+ )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:226:3: s= symbol (e= member )+
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:231:3: (s= otherThanDotExpression (e= member )+ )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:231:3: s= otherThanDotExpression (e= member )+
{
- pushFollow(FOLLOW_symbol_in_dotExpression777);
- s = symbol();
+ pushFollow(FOLLOW_otherThanDotExpression_in_dotExpression800);
+ s = otherThanDotExpression();
_fsp--;
if(failed) return val;
- // /Users/rich/dev/clojure/src/jvm/Reader.g:226:16: (e= member )+
- int cnt12 = 0;
- loop12:
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:231:32: (e= member )+
+ int cnt13 = 0;
+ loop13:
do
{
- int alt12 = 2;
- int LA12_0 = input.LA(1);
+ int alt13 = 2;
+ int LA13_0 = input.LA(1);
- if((LA12_0 == 37))
+ if((LA13_0 == 37))
{
- alt12 = 1;
+ int LA13_2 = input.LA(2);
+
+ if((synpred29()))
+ {
+ alt13 = 1;
+ }
+
+
}
- switch(alt12)
+ switch(alt13)
{
case 1:
// /Users/rich/dev/clojure/src/jvm/Reader.g:0:0: e= member
{
- pushFollow(FOLLOW_member_in_dotExpression783);
+ pushFollow(FOLLOW_member_in_dotExpression806);
e = member();
_fsp--;
if(failed) return val;
+ //WARNING- HAND MODIFIED!
+ if(es == null) es = new ArrayList();
+ es.add(e);
+ // END HAND MODIFIED
}
break;
default:
- if(cnt12 >= 1) break loop12;
+ if(cnt13 >= 1) break loop13;
if(backtracking > 0)
{
failed = true;
return val;
}
EarlyExitException eee =
- new EarlyExitException(12, input);
+ new EarlyExitException(13, input);
throw eee;
}
- cnt12++;
+ cnt13++;
} while(true);
if(backtracking == 0)
@@ -1913,7 +2427,7 @@ public final Object dotExpression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 17, dotExpression_StartIndex);
+ memoize(input, 18, dotExpression_StartIndex);
}
}
return val;
@@ -1921,7 +2435,7 @@ public final Object dotExpression() throws RecognitionException{
// $ANTLR end dotExpression
// $ANTLR start quotedExpression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:229:1: quotedExpression returns [Object val] : '\\'' e= expression ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:234:1: quotedExpression returns [Object val] : '\\'' e= expression ;
public final Object quotedExpression() throws RecognitionException{
Object val = null;
@@ -1931,16 +2445,16 @@ public final Object quotedExpression() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 18))
+ if(backtracking > 0 && alreadyParsedRule(input, 19))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:230:3: ( '\\'' e= expression )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:230:3: '\\'' e= expression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:235:3: ( '\\'' e= expression )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:235:3: '\\'' e= expression
{
- match(input, 38, FOLLOW_38_in_quotedExpression801);
+ match(input, 38, FOLLOW_38_in_quotedExpression824);
if(failed) return val;
- pushFollow(FOLLOW_expression_in_quotedExpression807);
+ pushFollow(FOLLOW_expression_in_quotedExpression830);
e = expression();
_fsp--;
if(failed) return val;
@@ -1961,7 +2475,7 @@ public final Object quotedExpression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 18, quotedExpression_StartIndex);
+ memoize(input, 19, quotedExpression_StartIndex);
}
}
return val;
@@ -1969,7 +2483,7 @@ public final Object quotedExpression() throws RecognitionException{
// $ANTLR end quotedExpression
// $ANTLR start caretExpression
-// /Users/rich/dev/clojure/src/jvm/Reader.g:233:1: caretExpression returns [Object val] : '^' e= expression ;
+// /Users/rich/dev/clojure/src/jvm/Reader.g:238:1: caretExpression returns [Object val] : '^' e= expression ;
public final Object caretExpression() throws RecognitionException{
Object val = null;
@@ -1979,16 +2493,16 @@ public final Object caretExpression() throws RecognitionException{
try
{
- if(backtracking > 0 && alreadyParsedRule(input, 19))
+ if(backtracking > 0 && alreadyParsedRule(input, 20))
{
return val;
}
- // /Users/rich/dev/clojure/src/jvm/Reader.g:234:3: ( '^' e= expression )
- // /Users/rich/dev/clojure/src/jvm/Reader.g:234:3: '^' e= expression
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:239:3: ( '^' e= expression )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:239:3: '^' e= expression
{
- match(input, 39, FOLLOW_39_in_caretExpression825);
+ match(input, 39, FOLLOW_39_in_caretExpression848);
if(failed) return val;
- pushFollow(FOLLOW_expression_in_caretExpression831);
+ pushFollow(FOLLOW_expression_in_caretExpression854);
e = expression();
_fsp--;
if(failed) return val;
@@ -2009,77 +2523,153 @@ public final Object caretExpression() throws RecognitionException{
{
if(backtracking > 0)
{
- memoize(input, 19, caretExpression_StartIndex);
+ memoize(input, 20, caretExpression_StartIndex);
}
}
return val;
}
// $ANTLR end caretExpression
+// $ANTLR start synpred1
+
+public final void synpred1_fragment() throws RecognitionException{
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:122:3: ( dotExpression )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:122:3: dotExpression
+ {
+ pushFollow(FOLLOW_dotExpression_in_synpred172);
+ dotExpression();
+ _fsp--;
+ if(failed) return;
+
+ }
+}
+// $ANTLR end synpred1
+
+// $ANTLR start synpred29
+
+public final void synpred29_fragment() throws RecognitionException{
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:231:34: ( member )
+ // /Users/rich/dev/clojure/src/jvm/Reader.g:231:34: member
+ {
+ pushFollow(FOLLOW_member_in_synpred29806);
+ member();
+ _fsp--;
+ if(failed) return;
+
+ }
+}
+// $ANTLR end synpred29
+
+public final boolean synpred29(){
+ backtracking++;
+ int start = input.mark();
+ try
+ {
+ synpred29_fragment(); // can never throw exception
+ }
+ catch(RecognitionException re)
+ {
+ System.err.println("impossible: " + re);
+ }
+ boolean success = !failed;
+ input.rewind(start);
+ backtracking--;
+ failed = false;
+ return success;
+}
+
+public final boolean synpred1(){
+ backtracking++;
+ int start = input.mark();
+ try
+ {
+ synpred1_fragment(); // can never throw exception
+ }
+ catch(RecognitionException re)
+ {
+ System.err.println("impossible: " + re);
+ }
+ boolean success = !failed;
+ input.rewind(start);
+ backtracking--;
+ failed = false;
+ return success;
+}
+
-public static final BitSet FOLLOW_literal_in_expression73 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_symbol_in_expression83 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_keyword_in_expression93 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_listExpression_in_expression103 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_vectorExpression_in_expression113 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_mapExpression_in_expression123 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_metaExpression_in_expression133 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_dotExpression_in_expression143 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_quotedExpression_in_expression153 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_caretExpression_in_expression163 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_29_in_listExpression180 = new BitSet(new long[]{0x000000D2E000FFF0L});
-public static final BitSet FOLLOW_expressions_in_listExpression187 = new BitSet(new long[]{0x0000000040000000L});
-public static final BitSet FOLLOW_30_in_listExpression189 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_expression_in_expressions211 = new BitSet(new long[]{0x000000D2A000FFF2L});
-public static final BitSet FOLLOW_31_in_vectorExpression228 = new BitSet(new long[]{0x000000D3A000FFF0L});
-public static final BitSet FOLLOW_expressions_in_vectorExpression234 = new BitSet(new long[]{0x0000000100000000L});
-public static final BitSet FOLLOW_32_in_vectorExpression236 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_33_in_mapExpression256 = new BitSet(new long[]{0x000000D6A000FFF0L});
-public static final BitSet FOLLOW_expression_in_mapExpression261 = new BitSet(new long[]{0x000000D2A000FFF0L});
-public static final BitSet FOLLOW_expression_in_mapExpression265 = new BitSet(new long[]{0x000000D6A000FFF0L});
-public static final BitSet FOLLOW_34_in_mapExpression269 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_Identifier_in_symbol286 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_NSIdentifier_in_symbol296 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_DotDot_in_symbol306 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_KeywordIdentifier_in_keyword326 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_integerLiteral_in_literal353 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_FloatingPointLiteral_in_literal366 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_CharacterLiteral_in_literal379 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_StringLiteral_in_literal392 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_TrueToken_in_literal401 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_NullToken_in_literal410 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_ratioLiteral_in_literal423 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_DecimalLiteral_in_ratioLiteral446 = new BitSet(new long[]{0x0000000800000000L});
-public static final BitSet FOLLOW_35_in_ratioLiteral448 = new BitSet(new long[]{0x0000000000002000L});
-public static final BitSet FOLLOW_DecimalLiteral_in_ratioLiteral454 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_HexLiteral_in_integerLiteral480 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_OctalLiteral_in_integerLiteral499 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_DecimalLiteral_in_integerLiteral517 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_36_in_metaTag540 = new BitSet(new long[]{0x0000000000000070L});
-public static final BitSet FOLLOW_symbol_in_metaTag546 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_36_in_metaTag552 = new BitSet(new long[]{0x0000000200000000L});
-public static final BitSet FOLLOW_mapExpression_in_metaTag558 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_symbol_in_objExpression581 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_listExpression_in_objExpression591 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_mapExpression_in_objExpression601 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_vectorExpression_in_objExpression611 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_metaTag_in_metaExpression633 = new BitSet(new long[]{0x00000002A0000070L});
-public static final BitSet FOLLOW_objExpression_in_metaExpression639 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_37_in_member659 = new BitSet(new long[]{0x0000000000000010L});
-public static final BitSet FOLLOW_Identifier_in_member665 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_37_in_member672 = new BitSet(new long[]{0x0000000000010000L});
-public static final BitSet FOLLOW_method_in_member678 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_MethodIdentifier_in_method703 = new BitSet(new long[]{0x000000D2E000FFF0L});
-public static final BitSet FOLLOW_args_in_method709 = new BitSet(new long[]{0x0000000040000000L});
-public static final BitSet FOLLOW_30_in_method712 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_expression_in_args738 = new BitSet(new long[]{0x0000000000020002L});
-public static final BitSet FOLLOW_Comma_in_args742 = new BitSet(new long[]{0x000000D2A000FFF0L});
-public static final BitSet FOLLOW_expression_in_args748 = new BitSet(new long[]{0x0000000000020002L});
-public static final BitSet FOLLOW_symbol_in_dotExpression777 = new BitSet(new long[]{0x0000002000000000L});
-public static final BitSet FOLLOW_member_in_dotExpression783 = new BitSet(new long[]{0x0000002000000002L});
-public static final BitSet FOLLOW_38_in_quotedExpression801 = new BitSet(new long[]{0x000000D2A000FFF0L});
-public static final BitSet FOLLOW_expression_in_quotedExpression807 = new BitSet(new long[]{0x0000000000000002L});
-public static final BitSet FOLLOW_39_in_caretExpression825 = new BitSet(new long[]{0x000000D2A000FFF0L});
-public static final BitSet FOLLOW_expression_in_caretExpression831 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_dotExpression_in_expression72 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_otherThanDotExpression_in_expression83 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_literal_in_otherThanDotExpression106 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_symbol_in_otherThanDotExpression116 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_keyword_in_otherThanDotExpression126 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_listExpression_in_otherThanDotExpression136 =
+ new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_vectorExpression_in_otherThanDotExpression146 =
+ new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_mapExpression_in_otherThanDotExpression156 =
+ new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_metaExpression_in_otherThanDotExpression166 =
+ new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_quotedExpression_in_otherThanDotExpression176 =
+ new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_caretExpression_in_otherThanDotExpression186 =
+ new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_29_in_listExpression203 = new BitSet(new long[]{0x000000D2E000FFF0L});
+public static final BitSet FOLLOW_expressions_in_listExpression210 = new BitSet(new long[]{0x0000000040000000L});
+public static final BitSet FOLLOW_30_in_listExpression212 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_expression_in_expressions234 = new BitSet(new long[]{0x000000D2A000FFF2L});
+public static final BitSet FOLLOW_31_in_vectorExpression251 = new BitSet(new long[]{0x000000D3A000FFF0L});
+public static final BitSet FOLLOW_expressions_in_vectorExpression257 = new BitSet(new long[]{0x0000000100000000L});
+public static final BitSet FOLLOW_32_in_vectorExpression259 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_33_in_mapExpression279 = new BitSet(new long[]{0x000000D6A000FFF0L});
+public static final BitSet FOLLOW_expression_in_mapExpression284 = new BitSet(new long[]{0x000000D2A000FFF0L});
+public static final BitSet FOLLOW_expression_in_mapExpression288 = new BitSet(new long[]{0x000000D6A000FFF0L});
+public static final BitSet FOLLOW_34_in_mapExpression292 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_Identifier_in_symbol309 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_NSIdentifier_in_symbol319 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_DotDot_in_symbol329 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_KeywordIdentifier_in_keyword349 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_integerLiteral_in_literal376 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_FloatingPointLiteral_in_literal389 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_CharacterLiteral_in_literal402 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_StringLiteral_in_literal415 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_TrueToken_in_literal424 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_NullToken_in_literal433 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_ratioLiteral_in_literal446 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_DecimalLiteral_in_ratioLiteral469 = new BitSet(new long[]{0x0000000800000000L});
+public static final BitSet FOLLOW_35_in_ratioLiteral471 = new BitSet(new long[]{0x0000000000002000L});
+public static final BitSet FOLLOW_DecimalLiteral_in_ratioLiteral477 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_HexLiteral_in_integerLiteral503 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_OctalLiteral_in_integerLiteral522 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_DecimalLiteral_in_integerLiteral540 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_36_in_metaTag563 = new BitSet(new long[]{0x0000000000000070L});
+public static final BitSet FOLLOW_symbol_in_metaTag569 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_36_in_metaTag575 = new BitSet(new long[]{0x0000000200000000L});
+public static final BitSet FOLLOW_mapExpression_in_metaTag581 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_symbol_in_objExpression604 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_listExpression_in_objExpression614 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_mapExpression_in_objExpression624 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_vectorExpression_in_objExpression634 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_metaTag_in_metaExpression656 = new BitSet(new long[]{0x00000002A0000070L});
+public static final BitSet FOLLOW_objExpression_in_metaExpression662 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_37_in_member682 = new BitSet(new long[]{0x0000000000000010L});
+public static final BitSet FOLLOW_Identifier_in_member688 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_37_in_member695 = new BitSet(new long[]{0x0000000000010000L});
+public static final BitSet FOLLOW_method_in_member701 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_MethodIdentifier_in_method726 = new BitSet(new long[]{0x000000D2E000FFF0L});
+public static final BitSet FOLLOW_args_in_method732 = new BitSet(new long[]{0x0000000040000000L});
+public static final BitSet FOLLOW_30_in_method735 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_expression_in_args761 = new BitSet(new long[]{0x0000000000020002L});
+public static final BitSet FOLLOW_Comma_in_args765 = new BitSet(new long[]{0x000000D2A000FFF0L});
+public static final BitSet FOLLOW_expression_in_args771 = new BitSet(new long[]{0x0000000000020002L});
+public static final BitSet FOLLOW_otherThanDotExpression_in_dotExpression800 =
+ new BitSet(new long[]{0x0000002000000000L});
+public static final BitSet FOLLOW_member_in_dotExpression806 = new BitSet(new long[]{0x0000002000000002L});
+public static final BitSet FOLLOW_38_in_quotedExpression824 = new BitSet(new long[]{0x000000D2A000FFF0L});
+public static final BitSet FOLLOW_expression_in_quotedExpression830 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_39_in_caretExpression848 = new BitSet(new long[]{0x000000D2A000FFF0L});
+public static final BitSet FOLLOW_expression_in_caretExpression854 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_dotExpression_in_synpred172 = new BitSet(new long[]{0x0000000000000002L});
+public static final BitSet FOLLOW_member_in_synpred29806 = new BitSet(new long[]{0x0000000000000002L});
} \ No newline at end of file