// $ANTLR 3.1.3 Mar 17, 2009 19:23:44 G3D.g 2009-08-27 17:15:29
using System;
using Antlr.Runtime;
using IList = System.Collections.IList;
using ArrayList = System.Collections.ArrayList;
using Stack = Antlr.Runtime.Collections.StackList;
namespace
GeometryViz3D.Model
{
public class G3DLexer : Lexer {
public const int O = 14;
public const int OctalLiteral = 10;
public const int Digit = 47;
public const int HexDigit = 40;
public const int T__51 = 51;
public const int P = 13;
public const int V = 20;
public const int I = 15;
public const int F = 27;
public const int U = 35;
public const int VECTOR = 23;
public const int S = 34;
public const int D = 26;
public const int Letter = 46;
public const int R = 22;
public const int T__52 = 52;
public const int K = 31;
public const int EscapeSequence = 43;
public const int B = 25;
public const int Q = 33;
public const int M = 32;
public const int LINE = 6;
public const int T = 17;
public const int FloatingPointLiteral = 12;
public const int FloatTypeSuffix = 42;
public const int ID = 5;
public const int IntegerTypeSuffix = 41;
public const int W = 36;
public const int H = 29;
public const int POINT = 4;
public const int WS = 48;
public const int CharacterLiteral = 7;
public const int G = 28;
public const int COMMENT = 49;
public const int StringLiteral = 8;
public const int A = 24;
public const int LINE_COMMENT = 50;
public const int N = 16;
public const int X = 37;
public const int Z = 39;
public const int UnicodeEscape = 44;
public const int HexLiteral = 9;
public const int C = 21;
public const int EOF = -1;
public const int L = 18;
public const int T__53 = 53;
public const int DecimalLiteral = 11;
public const int OctalEscape = 45;
public const int Y = 38;
public const int J = 30;
public const int E = 19;
// delegates
// delegators
public G3DLexer()
{
InitializeCyclicDFAs();
}
public G3DLexer(ICharStream input)
: this(input, null) {
}
public G3DLexer(ICharStream input, RecognizerSharedState state)
: base(input, state) {
InitializeCyclicDFAs();
}
override public string GrammarFileName
{
get { return "G3D.g";}
}
// $ANTLR start "T__51"
public void mT__51() // throws RecognitionException [2]
{
try
{
int _type = T__51;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:11:7: ( '=' )
// G3D.g:11:9: '='
{
Match('=');
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "T__51"
// $ANTLR start "T__52"
public void mT__52() // throws RecognitionException [2]
{
try
{
int _type = T__52;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:12:7: ( '+' )
// G3D.g:12:9: '+'
{
Match('+');
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "T__52"
// $ANTLR start "T__53"
public void mT__53() // throws RecognitionException [2]
{
try
{
int _type = T__53;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:13:7: ( '-' )
// G3D.g:13:9: '-'
{
Match('-');
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "T__53"
// $ANTLR start "POINT"
public void mPOINT() // throws RecognitionException [2]
{
try
{
int _type = POINT;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:74:2: ( P O I N T )
// G3D.g:74:4: P O I N T
{
mP();
mO();
mI();
mN();
mT();
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "POINT"
// $ANTLR start "LINE"
public void mLINE() // throws RecognitionException [2]
{
try
{
int _type = LINE;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:78:2: ( L I N E )
// G3D.g:78:4: L I N E
{
mL();
mI();
mN();
mE();
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "LINE"
// $ANTLR start "VECTOR"
public void mVECTOR() // throws RecognitionException [2]
{
try
{
int _type = VECTOR;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:82:2: ( V E C T O R )
// G3D.g:82:4: V E C T O R
{
mV();
mE();
mC();
mT();
mO();
mR();
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "VECTOR"
// $ANTLR start "A"
public void mA() // throws RecognitionException [2]
{
try
{
// G3D.g:85:11: ( ( 'a' | 'A' ) )
// G3D.g:85:12: ( 'a' | 'A' )
{
if ( input.LA(1) == 'A' || input.LA(1) == 'a' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "A"
// $ANTLR start "B"
public void mB() // throws RecognitionException [2]
{
try
{
// G3D.g:86:11: ( ( 'b' | 'B' ) )
// G3D.g:86:12: ( 'b' | 'B' )
{
if ( input.LA(1) == 'B' || input.LA(1) == 'b' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "B"
// $ANTLR start "C"
public void mC() // throws RecognitionException [2]
{
try
{
// G3D.g:87:11: ( ( 'c' | 'C' ) )
// G3D.g:87:12: ( 'c' | 'C' )
{
if ( input.LA(1) == 'C' || input.LA(1) == 'c' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "C"
// $ANTLR start "D"
public void mD() // throws RecognitionException [2]
{
try
{
// G3D.g:88:11: ( ( 'd' | 'D' ) )
// G3D.g:88:12: ( 'd' | 'D' )
{
if ( input.LA(1) == 'D' || input.LA(1) == 'd' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "D"
// $ANTLR start "E"
public void mE() // throws RecognitionException [2]
{
try
{
// G3D.g:89:11: ( ( 'e' | 'E' ) )
// G3D.g:89:12: ( 'e' | 'E' )
{
if ( input.LA(1) == 'E' || input.LA(1) == 'e' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "E"
// $ANTLR start "F"
public void mF() // throws RecognitionException [2]
{
try
{
// G3D.g:90:11: ( ( 'f' | 'F' ) )
// G3D.g:90:12: ( 'f' | 'F' )
{
if ( input.LA(1) == 'F' || input.LA(1) == 'f' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "F"
// $ANTLR start "G"
public void mG() // throws RecognitionException [2]
{
try
{
// G3D.g:91:11: ( ( 'g' | 'G' ) )
// G3D.g:91:12: ( 'g' | 'G' )
{
if ( input.LA(1) == 'G' || input.LA(1) == 'g' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "G"
// $ANTLR start "H"
public void mH() // throws RecognitionException [2]
{
try
{
// G3D.g:92:11: ( ( 'h' | 'H' ) )
// G3D.g:92:12: ( 'h' | 'H' )
{
if ( input.LA(1) == 'H' || input.LA(1) == 'h' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "H"
// $ANTLR start "I"
public void mI() // throws RecognitionException [2]
{
try
{
// G3D.g:93:11: ( ( 'i' | 'I' ) )
// G3D.g:93:12: ( 'i' | 'I' )
{
if ( input.LA(1) == 'I' || input.LA(1) == 'i' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "I"
// $ANTLR start "J"
public void mJ() // throws RecognitionException [2]
{
try
{
// G3D.g:94:11: ( ( 'j' | 'J' ) )
// G3D.g:94:12: ( 'j' | 'J' )
{
if ( input.LA(1) == 'J' || input.LA(1) == 'j' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "J"
// $ANTLR start "K"
public void mK() // throws RecognitionException [2]
{
try
{
// G3D.g:95:11: ( ( 'k' | 'K' ) )
// G3D.g:95:12: ( 'k' | 'K' )
{
if ( input.LA(1) == 'K' || input.LA(1) == 'k' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "K"
// $ANTLR start "L"
public void mL() // throws RecognitionException [2]
{
try
{
// G3D.g:96:11: ( ( 'l' | 'L' ) )
// G3D.g:96:12: ( 'l' | 'L' )
{
if ( input.LA(1) == 'L' || input.LA(1) == 'l' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "L"
// $ANTLR start "M"
public void mM() // throws RecognitionException [2]
{
try
{
// G3D.g:97:11: ( ( 'm' | 'M' ) )
// G3D.g:97:12: ( 'm' | 'M' )
{
if ( input.LA(1) == 'M' || input.LA(1) == 'm' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "M"
// $ANTLR start "N"
public void mN() // throws RecognitionException [2]
{
try
{
// G3D.g:98:11: ( ( 'n' | 'N' ) )
// G3D.g:98:12: ( 'n' | 'N' )
{
if ( input.LA(1) == 'N' || input.LA(1) == 'n' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "N"
// $ANTLR start "O"
public void mO() // throws RecognitionException [2]
{
try
{
// G3D.g:99:11: ( ( 'o' | 'O' ) )
// G3D.g:99:12: ( 'o' | 'O' )
{
if ( input.LA(1) == 'O' || input.LA(1) == 'o' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "O"
// $ANTLR start "P"
public void mP() // throws RecognitionException [2]
{
try
{
// G3D.g:100:11: ( ( 'p' | 'P' ) )
// G3D.g:100:12: ( 'p' | 'P' )
{
if ( input.LA(1) == 'P' || input.LA(1) == 'p' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "P"
// $ANTLR start "Q"
public void mQ() // throws RecognitionException [2]
{
try
{
// G3D.g:101:11: ( ( 'q' | 'Q' ) )
// G3D.g:101:12: ( 'q' | 'Q' )
{
if ( input.LA(1) == 'Q' || input.LA(1) == 'q' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "Q"
// $ANTLR start "R"
public void mR() // throws RecognitionException [2]
{
try
{
// G3D.g:102:11: ( ( 'r' | 'R' ) )
// G3D.g:102:12: ( 'r' | 'R' )
{
if ( input.LA(1) == 'R' || input.LA(1) == 'r' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "R"
// $ANTLR start "S"
public void mS() // throws RecognitionException [2]
{
try
{
// G3D.g:103:11: ( ( 's' | 'S' ) )
// G3D.g:103:12: ( 's' | 'S' )
{
if ( input.LA(1) == 'S' || input.LA(1) == 's' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "S"
// $ANTLR start "T"
public void mT() // throws RecognitionException [2]
{
try
{
// G3D.g:104:11: ( ( 't' | 'T' ) )
// G3D.g:104:12: ( 't' | 'T' )
{
if ( input.LA(1) == 'T' || input.LA(1) == 't' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "T"
// $ANTLR start "U"
public void mU() // throws RecognitionException [2]
{
try
{
// G3D.g:105:11: ( ( 'u' | 'U' ) )
// G3D.g:105:12: ( 'u' | 'U' )
{
if ( input.LA(1) == 'U' || input.LA(1) == 'u' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "U"
// $ANTLR start "V"
public void mV() // throws RecognitionException [2]
{
try
{
// G3D.g:106:11: ( ( 'v' | 'V' ) )
// G3D.g:106:12: ( 'v' | 'V' )
{
if ( input.LA(1) == 'V' || input.LA(1) == 'v' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "V"
// $ANTLR start "W"
public void mW() // throws RecognitionException [2]
{
try
{
// G3D.g:107:11: ( ( 'w' | 'W' ) )
// G3D.g:107:12: ( 'w' | 'W' )
{
if ( input.LA(1) == 'W' || input.LA(1) == 'w' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "W"
// $ANTLR start "X"
public void mX() // throws RecognitionException [2]
{
try
{
// G3D.g:108:11: ( ( 'x' | 'X' ) )
// G3D.g:108:12: ( 'x' | 'X' )
{
if ( input.LA(1) == 'X' || input.LA(1) == 'x' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "X"
// $ANTLR start "Y"
public void mY() // throws RecognitionException [2]
{
try
{
// G3D.g:109:11: ( ( 'y' | 'Y' ) )
// G3D.g:109:12: ( 'y' | 'Y' )
{
if ( input.LA(1) == 'Y' || input.LA(1) == 'y' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "Y"
// $ANTLR start "Z"
public void mZ() // throws RecognitionException [2]
{
try
{
// G3D.g:110:11: ( ( 'z' | 'Z' ) )
// G3D.g:110:12: ( 'z' | 'Z' )
{
if ( input.LA(1) == 'Z' || input.LA(1) == 'z' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "Z"
// $ANTLR start "HexLiteral"
public void mHexLiteral() // throws RecognitionException [2]
{
try
{
int _type = HexLiteral;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:112:12: ( '0' ( 'x' | 'X' ) ( HexDigit )+ ( IntegerTypeSuffix )? )
// G3D.g:112:14: '0' ( 'x' | 'X' ) ( HexDigit )+ ( IntegerTypeSuffix )?
{
Match('0');
if ( input.LA(1) == 'X' || input.LA(1) == 'x' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
// G3D.g:112:28: ( HexDigit )+
int cnt1 = 0;
do
{
int alt1 = 2;
int LA1_0 = input.LA(1);
if ( ((LA1_0 >= '0' && LA1_0 <= '9') || (LA1_0 >= 'A' && LA1_0 <= 'F') || (LA1_0 >= 'a' && LA1_0 <= 'f')) )
{
alt1 = 1;
}
switch (alt1)
{
case 1 :
// G3D.g:112:28: HexDigit
{
mHexDigit();
}
break;
default:
if ( cnt1 >= 1 ) goto loop1;
EarlyExitException eee1 =
new EarlyExitException(1, input);
throw eee1;
}
cnt1++;
} while (true);
loop1:
; // Stops C# compiler whining that label 'loop1' has no statements
// G3D.g:112:38: ( IntegerTypeSuffix )?
int alt2 = 2;
int LA2_0 = input.LA(1);
if ( (LA2_0 == 'L' || LA2_0 == 'l') )
{
alt2 = 1;
}
switch (alt2)
{
case 1 :
// G3D.g:112:38: IntegerTypeSuffix
{
mIntegerTypeSuffix();
}
break;
}
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "HexLiteral"
// $ANTLR start "DecimalLiteral"
public void mDecimalLiteral() // throws RecognitionException [2]
{
try
{
int _type = DecimalLiteral;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:114:16: ( ( '0' | '1' .. '9' ( '0' .. '9' )* ) ( IntegerTypeSuffix )? )
// G3D.g:114:18: ( '0' | '1' .. '9' ( '0' .. '9' )* ) ( IntegerTypeSuffix )?
{
// G3D.g:114:18: ( '0' | '1' .. '9' ( '0' .. '9' )* )
int alt4 = 2;
int LA4_0 = input.LA(1);
if ( (LA4_0 == '0') )
{
alt4 = 1;
}
else if ( ((LA4_0 >= '1' && LA4_0 <= '9')) )
{
alt4 = 2;
}
else
{
NoViableAltException nvae_d4s0 =
new NoViableAltException("", 4, 0, input);
throw nvae_d4s0;
}
switch (alt4)
{
case 1 :
// G3D.g:114:19: '0'
{
Match('0');
}
break;
case 2 :
// G3D.g:114:25: '1' .. '9' ( '0' .. '9' )*
{
MatchRange('1','9');
// G3D.g:114:34: ( '0' .. '9' )*
do
{
int alt3 = 2;
int LA3_0 = input.LA(1);
if ( ((LA3_0 >= '0' && LA3_0 <= '9')) )
{
alt3 = 1;
}
switch (alt3)
{
case 1 :
// G3D.g:114:34: '0' .. '9'
{
MatchRange('0','9');
}
break;
default:
goto loop3;
}
} while (true);
loop3:
; // Stops C# compiler whining that label 'loop3' has no statements
}
break;
}
// G3D.g:114:45: ( IntegerTypeSuffix )?
int alt5 = 2;
int LA5_0 = input.LA(1);
if ( (LA5_0 == 'L' || LA5_0 == 'l') )
{
alt5 = 1;
}
switch (alt5)
{
case 1 :
// G3D.g:114:45: IntegerTypeSuffix
{
mIntegerTypeSuffix();
}
break;
}
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "DecimalLiteral"
// $ANTLR start "OctalLiteral"
public void mOctalLiteral() // throws RecognitionException [2]
{
try
{
int _type = OctalLiteral;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:116:14: ( '0' ( '0' .. '7' )+ ( IntegerTypeSuffix )? )
// G3D.g:116:16: '0' ( '0' .. '7' )+ ( IntegerTypeSuffix )?
{
Match('0');
// G3D.g:116:20: ( '0' .. '7' )+
int cnt6 = 0;
do
{
int alt6 = 2;
int LA6_0 = input.LA(1);
if ( ((LA6_0 >= '0' && LA6_0 <= '7')) )
{
alt6 = 1;
}
switch (alt6)
{
case 1 :
// G3D.g:116:21: '0' .. '7'
{
MatchRange('0','7');
}
break;
default:
if ( cnt6 >= 1 ) goto loop6;
EarlyExitException eee6 =
new EarlyExitException(6, input);
throw eee6;
}
cnt6++;
} while (true);
loop6:
; // Stops C# compiler whining that label 'loop6' has no statements
// G3D.g:116:32: ( IntegerTypeSuffix )?
int alt7 = 2;
int LA7_0 = input.LA(1);
if ( (LA7_0 == 'L' || LA7_0 == 'l') )
{
alt7 = 1;
}
switch (alt7)
{
case 1 :
// G3D.g:116:32: IntegerTypeSuffix
{
mIntegerTypeSuffix();
}
break;
}
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "OctalLiteral"
// $ANTLR start "HexDigit"
public void mHexDigit() // throws RecognitionException [2]
{
try
{
// G3D.g:119:10: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
// G3D.g:119: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') )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "HexDigit"
// $ANTLR start "IntegerTypeSuffix"
public void mIntegerTypeSuffix() // throws RecognitionException [2]
{
try
{
// G3D.g:122:19: ( ( 'l' | 'L' ) )
// G3D.g:122:21: ( 'l' | 'L' )
{
if ( input.LA(1) == 'L' || input.LA(1) == 'l' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "IntegerTypeSuffix"
// $ANTLR start "FloatingPointLiteral"
public void mFloatingPointLiteral() // throws RecognitionException [2]
{
try
{
int _type = FloatingPointLiteral;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:125:5: ( ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( FloatTypeSuffix )? | '.' ( '0' .. '9' )+ ( FloatTypeSuffix )? | ( '0' .. '9' )+ ( FloatTypeSuffix )? )
int alt15 = 3;
alt15 = dfa15.Predict(input);
switch (alt15)
{
case 1 :
// G3D.g:125:9: ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( FloatTypeSuffix )?
{
// G3D.g:125:9: ( '0' .. '9' )+
int cnt8 = 0;
do
{
int alt8 = 2;
int LA8_0 = input.LA(1);
if ( ((LA8_0 >= '0' && LA8_0 <= '9')) )
{
alt8 = 1;
}
switch (alt8)
{
case 1 :
// G3D.g:125:10: '0' .. '9'
{
MatchRange('0','9');
}
break;
default:
if ( cnt8 >= 1 ) goto loop8;
EarlyExitException eee8 =
new EarlyExitException(8, input);
throw eee8;
}
cnt8++;
} while (true);
loop8:
; // Stops C# compiler whining that label 'loop8' has no statements
Match('.');
// G3D.g:125:25: ( '0' .. '9' )*
do
{
int alt9 = 2;
int LA9_0 = input.LA(1);
if ( ((LA9_0 >= '0' && LA9_0 <= '9')) )
{
alt9 = 1;
}
switch (alt9)
{
case 1 :
// G3D.g:125:26: '0' .. '9'
{
MatchRange('0','9');
}
break;
default:
goto loop9;
}
} while (true);
loop9:
; // Stops C# compiler whining that label 'loop9' has no statements
// G3D.g:125:37: ( FloatTypeSuffix )?
int alt10 = 2;
int LA10_0 = input.LA(1);
if ( (LA10_0 == 'D' || LA10_0 == 'F' || LA10_0 == 'd' || LA10_0 == 'f') )
{
alt10 = 1;
}
switch (alt10)
{
case 1 :
// G3D.g:125:37: FloatTypeSuffix
{
mFloatTypeSuffix();
}
break;
}
}
break;
case 2 :
// G3D.g:126:9: '.' ( '0' .. '9' )+ ( FloatTypeSuffix )?
{
Match('.');
// G3D.g:126:13: ( '0' .. '9' )+
int cnt11 = 0;
do
{
int alt11 = 2;
int LA11_0 = input.LA(1);
if ( ((LA11_0 >= '0' && LA11_0 <= '9')) )
{
alt11 = 1;
}
switch (alt11)
{
case 1 :
// G3D.g:126:14: '0' .. '9'
{
MatchRange('0','9');
}
break;
default:
if ( cnt11 >= 1 ) goto loop11;
EarlyExitException eee11 =
new EarlyExitException(11, input);
throw eee11;
}
cnt11++;
} while (true);
loop11:
; // Stops C# compiler whining that label 'loop11' has no statements
// G3D.g:126:25: ( FloatTypeSuffix )?
int alt12 = 2;
int LA12_0 = input.LA(1);
if ( (LA12_0 == 'D' || LA12_0 == 'F' || LA12_0 == 'd' || LA12_0 == 'f') )
{
alt12 = 1;
}
switch (alt12)
{
case 1 :
// G3D.g:126:25: FloatTypeSuffix
{
mFloatTypeSuffix();
}
break;
}
}
break;
case 3 :
// G3D.g:127:9: ( '0' .. '9' )+ ( FloatTypeSuffix )?
{
// G3D.g:127:9: ( '0' .. '9' )+
int cnt13 = 0;
do
{
int alt13 = 2;
int LA13_0 = input.LA(1);
if ( ((LA13_0 >= '0' && LA13_0 <= '9')) )
{
alt13 = 1;
}
switch (alt13)
{
case 1 :
// G3D.g:127:10: '0' .. '9'
{
MatchRange('0','9');
}
break;
default:
if ( cnt13 >= 1 ) goto loop13;
EarlyExitException eee13 =
new EarlyExitException(13, input);
throw eee13;
}
cnt13++;
} while (true);
loop13:
; // Stops C# compiler whining that label 'loop13' has no statements
// G3D.g:127:21: ( FloatTypeSuffix )?
int alt14 = 2;
int LA14_0 = input.LA(1);
if ( (LA14_0 == 'D' || LA14_0 == 'F' || LA14_0 == 'd' || LA14_0 == 'f') )
{
alt14 = 1;
}
switch (alt14)
{
case 1 :
// G3D.g:127:21: FloatTypeSuffix
{
mFloatTypeSuffix();
}
break;
}
}
break;
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "FloatingPointLiteral"
// $ANTLR start "FloatTypeSuffix"
public void mFloatTypeSuffix() // throws RecognitionException [2]
{
try
{
// G3D.g:131:17: ( ( 'f' | 'F' | 'd' | 'D' ) )
// G3D.g:131:19: ( 'f' | 'F' | 'd' | 'D' )
{
if ( input.LA(1) == 'D' || input.LA(1) == 'F' || input.LA(1) == 'd' || input.LA(1) == 'f' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "FloatTypeSuffix"
// $ANTLR start "CharacterLiteral"
public void mCharacterLiteral() // throws RecognitionException [2]
{
try
{
int _type = CharacterLiteral;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:134:5: ( '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) ) '\\'' )
// G3D.g:134:9: '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) ) '\\''
{
Match('\'');
// G3D.g:134:14: ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )
int alt16 = 2;
int LA16_0 = input.LA(1);
if ( (LA16_0 == '\\') )
{
alt16 = 1;
}
else if ( ((LA16_0 >= '\u0000' && LA16_0 <= '&') || (LA16_0 >= '(' && LA16_0 <= '[') || (LA16_0 >= ']' && LA16_0 <= '\uFFFF')) )
{
alt16 = 2;
}
else
{
NoViableAltException nvae_d16s0 =
new NoViableAltException("", 16, 0, input);
throw nvae_d16s0;
}
switch (alt16)
{
case 1 :
// G3D.g:134:16: EscapeSequence
{
mEscapeSequence();
}
break;
case 2 :
// G3D.g:134:33: ~ ( '\\'' | '\\\\' )
{
if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '&') || (input.LA(1) >= '(' && input.LA(1) <= '[') || (input.LA(1) >= ']' && input.LA(1) <= '\uFFFF') )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
break;
}
Match('\'');
Text = Text.Substring(1, Text.Length - 2);
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "CharacterLiteral"
// $ANTLR start "StringLiteral"
public void mStringLiteral() // throws RecognitionException [2]
{
try
{
int _type = StringLiteral;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:139:5: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' )
// G3D.g:139:8: '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"'
{
Match('\"');
// G3D.g:139:12: ( EscapeSequence | ~ ( '\\\\' | '\"' ) )*
do
{
int alt17 = 3;
int LA17_0 = input.LA(1);
if ( (LA17_0 == '\\') )
{
alt17 = 1;
}
else if ( ((LA17_0 >= '\u0000' && LA17_0 <= '!') || (LA17_0 >= '#' && LA17_0 <= '[') || (LA17_0 >= ']' && LA17_0 <= '\uFFFF')) )
{
alt17 = 2;
}
switch (alt17)
{
case 1 :
// G3D.g:139:14: EscapeSequence
{
mEscapeSequence();
}
break;
case 2 :
// G3D.g:139:31: ~ ( '\\\\' | '\"' )
{
if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '!') || (input.LA(1) >= '#' && input.LA(1) <= '[') || (input.LA(1) >= ']' && input.LA(1) <= '\uFFFF') )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
break;
default:
goto loop17;
}
} while (true);
loop17:
; // Stops C# compiler whining that label 'loop17' has no statements
Match('\"');
Text = Text.Substring(1, Text.Length - 2);
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "StringLiteral"
// $ANTLR start "EscapeSequence"
public void mEscapeSequence() // throws RecognitionException [2]
{
try
{
// G3D.g:145:5: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape )
int alt18 = 3;
int LA18_0 = input.LA(1);
if ( (LA18_0 == '\\') )
{
switch ( input.LA(2) )
{
case '\"':
case '\'':
case '\\':
case 'b':
case 'f':
case 'n':
case 'r':
case 't':
{
alt18 = 1;
}
break;
case 'u':
{
alt18 = 2;
}
break;
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
{
alt18 = 3;
}
break;
default:
NoViableAltException nvae_d18s1 =
new NoViableAltException("", 18, 1, input);
throw nvae_d18s1;
}
}
else
{
NoViableAltException nvae_d18s0 =
new NoViableAltException("", 18, 0, input);
throw nvae_d18s0;
}
switch (alt18)
{
case 1 :
// G3D.g:145:9: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' )
{
Match('\\');
if ( input.LA(1) == '\"' || input.LA(1) == '\'' || input.LA(1) == '\\' || input.LA(1) == 'b' || input.LA(1) == 'f' || input.LA(1) == 'n' || input.LA(1) == 'r' || input.LA(1) == 't' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
break;
case 2 :
// G3D.g:146:9: UnicodeEscape
{
mUnicodeEscape();
}
break;
case 3 :
// G3D.g:147:9: OctalEscape
{
mOctalEscape();
}
break;
}
}
finally
{
}
}
// $ANTLR end "EscapeSequence"
// $ANTLR start "OctalEscape"
public void mOctalEscape() // throws RecognitionException [2]
{
try
{
// G3D.g:152:5: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
int alt19 = 3;
int LA19_0 = input.LA(1);
if ( (LA19_0 == '\\') )
{
int LA19_1 = input.LA(2);
if ( ((LA19_1 >= '0' && LA19_1 <= '3')) )
{
int LA19_2 = input.LA(3);
if ( ((LA19_2 >= '0' && LA19_2 <= '7')) )
{
int LA19_4 = input.LA(4);
if ( ((LA19_4 >= '0' && LA19_4 <= '7')) )
{
alt19 = 1;
}
else
{
alt19 = 2;}
}
else
{
alt19 = 3;}
}
else if ( ((LA19_1 >= '4' && LA19_1 <= '7')) )
{
int LA19_3 = input.LA(3);
if ( ((LA19_3 >= '0' && LA19_3 <= '7')) )
{
alt19 = 2;
}
else
{
alt19 = 3;}
}
else
{
NoViableAltException nvae_d19s1 =
new NoViableAltException("", 19, 1, input);
throw nvae_d19s1;
}
}
else
{
NoViableAltException nvae_d19s0 =
new NoViableAltException("", 19, 0, input);
throw nvae_d19s0;
}
switch (alt19)
{
case 1 :
// G3D.g:152:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
{
Match('\\');
// G3D.g:152:14: ( '0' .. '3' )
// G3D.g:152:15: '0' .. '3'
{
MatchRange('0','3');
}
// G3D.g:152:25: ( '0' .. '7' )
// G3D.g:152:26: '0' .. '7'
{
MatchRange('0','7');
}
// G3D.g:152:36: ( '0' .. '7' )
// G3D.g:152:37: '0' .. '7'
{
MatchRange('0','7');
}
}
break;
case 2 :
// G3D.g:153:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
{
Match('\\');
// G3D.g:153:14: ( '0' .. '7' )
// G3D.g:153:15: '0' .. '7'
{
MatchRange('0','7');
}
// G3D.g:153:25: ( '0' .. '7' )
// G3D.g:153:26: '0' .. '7'
{
MatchRange('0','7');
}
}
break;
case 3 :
// G3D.g:154:9: '\\\\' ( '0' .. '7' )
{
Match('\\');
// G3D.g:154:14: ( '0' .. '7' )
// G3D.g:154:15: '0' .. '7'
{
MatchRange('0','7');
}
}
break;
}
}
finally
{
}
}
// $ANTLR end "OctalEscape"
// $ANTLR start "UnicodeEscape"
public void mUnicodeEscape() // throws RecognitionException [2]
{
try
{
// G3D.g:159:5: ( '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit )
// G3D.g:159:9: '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit
{
Match('\\');
Match('u');
mHexDigit();
mHexDigit();
mHexDigit();
mHexDigit();
}
}
finally
{
}
}
// $ANTLR end "UnicodeEscape"
// $ANTLR start "ID"
public void mID() // throws RecognitionException [2]
{
try
{
int _type = ID;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:163:5: ( Letter ( Letter | Digit )* )
// G3D.g:163:9: Letter ( Letter | Digit )*
{
mLetter();
// G3D.g:163:16: ( Letter | Digit )*
do
{
int alt20 = 2;
int LA20_0 = input.LA(1);
if ( (LA20_0 == '$' || (LA20_0 >= '0' && LA20_0 <= '9') || (LA20_0 >= 'A' && LA20_0 <= 'Z') || LA20_0 == '_' || (LA20_0 >= 'a' && LA20_0 <= 'z') || (LA20_0 >= '\u00C0' && LA20_0 <= '\u00D6') || (LA20_0 >= '\u00D8' && LA20_0 <= '\u00F6') || (LA20_0 >= '\u00F8' && LA20_0 <= '\u1FFF') || (LA20_0 >= '\u3040' && LA20_0 <= '\u318F') || (LA20_0 >= '\u3300' && LA20_0 <= '\u337F') || (LA20_0 >= '\u3400' && LA20_0 <= '\u3D2D') || (LA20_0 >= '\u4E00' && LA20_0 <= '\u9FFF') || (LA20_0 >= '\uF900' && LA20_0 <= '\uFAFF')) )
{
alt20 = 1;
}
switch (alt20)
{
case 1 :
// G3D.g:
{
if ( input.LA(1) == '$' || (input.LA(1) >= '0' && input.LA(1) <= '9') || (input.LA(1) >= 'A' && input.LA(1) <= 'Z') || input.LA(1) == '_' || (input.LA(1) >= 'a' && input.LA(1) <= 'z') || (input.LA(1) >= '\u00C0' && input.LA(1) <= '\u00D6') || (input.LA(1) >= '\u00D8' && input.LA(1) <= '\u00F6') || (input.LA(1) >= '\u00F8' && input.LA(1) <= '\u1FFF') || (input.LA(1) >= '\u3040' && input.LA(1) <= '\u318F') || (input.LA(1) >= '\u3300' && input.LA(1) <= '\u337F') || (input.LA(1) >= '\u3400' && input.LA(1) <= '\u3D2D') || (input.LA(1) >= '\u4E00' && input.LA(1) <= '\u9FFF') || (input.LA(1) >= '\uF900' && input.LA(1) <= '\uFAFF') )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
break;
default:
goto loop20;
}
} while (true);
loop20:
; // Stops C# compiler whining that label 'loop20' has no statements
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "ID"
// $ANTLR start "Letter"
public void mLetter() // throws RecognitionException [2]
{
try
{
// G3D.g:168:5: ( '\\u0024' | '\\u0041' .. '\\u005a' | '\\u005f' | '\\u0061' .. '\\u007a' | '\\u00c0' .. '\\u00d6' | '\\u00d8' .. '\\u00f6' | '\\u00f8' .. '\\u00ff' | '\\u0100' .. '\\u1fff' | '\\u3040' .. '\\u318f' | '\\u3300' .. '\\u337f' | '\\u3400' .. '\\u3d2d' | '\\u4e00' .. '\\u9fff' | '\\uf900' .. '\\ufaff' )
// G3D.g:
{
if ( input.LA(1) == '$' || (input.LA(1) >= 'A' && input.LA(1) <= 'Z') || input.LA(1) == '_' || (input.LA(1) >= 'a' && input.LA(1) <= 'z') || (input.LA(1) >= '\u00C0' && input.LA(1) <= '\u00D6') || (input.LA(1) >= '\u00D8' && input.LA(1) <= '\u00F6') || (input.LA(1) >= '\u00F8' && input.LA(1) <= '\u1FFF') || (input.LA(1) >= '\u3040' && input.LA(1) <= '\u318F') || (input.LA(1) >= '\u3300' && input.LA(1) <= '\u337F') || (input.LA(1) >= '\u3400' && input.LA(1) <= '\u3D2D') || (input.LA(1) >= '\u4E00' && input.LA(1) <= '\u9FFF') || (input.LA(1) >= '\uF900' && input.LA(1) <= '\uFAFF') )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "Letter"
// $ANTLR start "Digit"
public void mDigit() // throws RecognitionException [2]
{
try
{
// G3D.g:185:5: ( '\\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' )
// G3D.g:
{
if ( (input.LA(1) >= '0' && input.LA(1) <= '9') || (input.LA(1) >= '\u0660' && input.LA(1) <= '\u0669') || (input.LA(1) >= '\u06F0' && input.LA(1) <= '\u06F9') || (input.LA(1) >= '\u0966' && input.LA(1) <= '\u096F') || (input.LA(1) >= '\u09E6' && input.LA(1) <= '\u09EF') || (input.LA(1) >= '\u0A66' && input.LA(1) <= '\u0A6F') || (input.LA(1) >= '\u0AE6' && input.LA(1) <= '\u0AEF') || (input.LA(1) >= '\u0B66' && input.LA(1) <= '\u0B6F') || (input.LA(1) >= '\u0BE7' && input.LA(1) <= '\u0BEF') || (input.LA(1) >= '\u0C66' && input.LA(1) <= '\u0C6F') || (input.LA(1) >= '\u0CE6' && input.LA(1) <= '\u0CEF') || (input.LA(1) >= '\u0D66' && input.LA(1) <= '\u0D6F') || (input.LA(1) >= '\u0E50' && input.LA(1) <= '\u0E59') || (input.LA(1) >= '\u0ED0' && input.LA(1) <= '\u0ED9') || (input.LA(1) >= '\u1040' && input.LA(1) <= '\u1049') )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
}
finally
{
}
}
// $ANTLR end "Digit"
// $ANTLR start "WS"
public void mWS() // throws RecognitionException [2]
{
try
{
int _type = WS;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:202:5: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) )
// G3D.g:202: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) == ' ' )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
_channel=HIDDEN;
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "WS"
// $ANTLR start "COMMENT"
public void mCOMMENT() // throws RecognitionException [2]
{
try
{
int _type = COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:206:5: ( '/*' ( options {greedy=false; } : . )* '*/' )
// G3D.g:206:9: '/*' ( options {greedy=false; } : . )* '*/'
{
Match("/*");
// G3D.g:206:14: ( options {greedy=false; } : . )*
do
{
int alt21 = 2;
int LA21_0 = input.LA(1);
if ( (LA21_0 == '*') )
{
int LA21_1 = input.LA(2);
if ( (LA21_1 == '/') )
{
alt21 = 2;
}
else if ( ((LA21_1 >= '\u0000' && LA21_1 <= '.') || (LA21_1 >= '0' && LA21_1 <= '\uFFFF')) )
{
alt21 = 1;
}
}
else if ( ((LA21_0 >= '\u0000' && LA21_0 <= ')') || (LA21_0 >= '+' && LA21_0 <= '\uFFFF')) )
{
alt21 = 1;
}
switch (alt21)
{
case 1 :
// G3D.g:206:42: .
{
MatchAny();
}
break;
default:
goto loop21;
}
} while (true);
loop21:
; // Stops C# compiler whining that label 'loop21' has no statements
Match("*/");
_channel=HIDDEN;
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "COMMENT"
// $ANTLR start "LINE_COMMENT"
public void mLINE_COMMENT() // throws RecognitionException [2]
{
try
{
int _type = LINE_COMMENT;
int _channel = DEFAULT_TOKEN_CHANNEL;
// G3D.g:210:5: ( '//' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n' )
// G3D.g:210:7: '//' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n'
{
Match("//");
// G3D.g:210:12: (~ ( '\\n' | '\\r' ) )*
do
{
int alt22 = 2;
int LA22_0 = input.LA(1);
if ( ((LA22_0 >= '\u0000' && LA22_0 <= '\t') || (LA22_0 >= '\u000B' && LA22_0 <= '\f') || (LA22_0 >= '\u000E' && LA22_0 <= '\uFFFF')) )
{
alt22 = 1;
}
switch (alt22)
{
case 1 :
// G3D.g:210:12: ~ ( '\\n' | '\\r' )
{
if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '\t') || (input.LA(1) >= '\u000B' && input.LA(1) <= '\f') || (input.LA(1) >= '\u000E' && input.LA(1) <= '\uFFFF') )
{
input.Consume();
}
else
{
MismatchedSetException mse = new MismatchedSetException(null,input);
Recover(mse);
throw mse;}
}
break;
default:
goto loop22;
}
} while (true);
loop22:
; // Stops C# compiler whining that label 'loop22' has no statements
// G3D.g:210:26: ( '\\r' )?
int alt23 = 2;
int LA23_0 = input.LA(1);
if ( (LA23_0 == '\r') )
{
alt23 = 1;
}
switch (alt23)
{
case 1 :
// G3D.g:210:26: '\\r'
{
Match('\r');
}
break;
}
Match('\n');
_channel=HIDDEN;
}
state.type = _type;
state.channel = _channel;
}
finally
{
}
}
// $ANTLR end "LINE_COMMENT"
override public void mTokens() // throws RecognitionException
{
// G3D.g:1:8: ( T__51 | T__52 | T__53 | POINT | LINE | VECTOR | HexLiteral | DecimalLiteral | OctalLiteral | FloatingPointLiteral | CharacterLiteral | StringLiteral | ID | WS | COMMENT | LINE_COMMENT )
int alt24 = 16;
alt24 = dfa24.Predict(input);
switch (alt24)
{
case 1 :
// G3D.g:1:10: T__51
{
mT__51();
}
break;
case 2 :
// G3D.g:1:16: T__52
{
mT__52();
}
break;
case 3 :
// G3D.g:1:22: T__53
{
mT__53();
}
break;
case 4 :
// G3D.g:1:28: POINT
{
mPOINT();
}
break;
case 5 :
// G3D.g:1:34: LINE
{
mLINE();
}
break;
case 6 :
// G3D.g:1:39: VECTOR
{
mVECTOR();
}
break;
case 7 :
// G3D.g:1:46: HexLiteral
{
mHexLiteral();
}
break;
case 8 :
// G3D.g:1:57: DecimalLiteral
{
mDecimalLiteral();
}
break;
case 9 :
// G3D.g:1:72: OctalLiteral
{
mOctalLiteral();
}
break;
case 10 :
// G3D.g:1:85: FloatingPointLiteral
{
mFloatingPointLiteral();
}
break;
case 11 :
// G3D.g:1:106: CharacterLiteral
{
mCharacterLiteral();
}
break;
case 12 :
// G3D.g:1:123: StringLiteral
{
mStringLiteral();
}
break;
case 13 :
// G3D.g:1:137: ID
{
mID();
}
break;
case 14 :
// G3D.g:1:140: WS
{
mWS();
}
break;
case 15 :
// G3D.g:1:143: COMMENT
{
mCOMMENT();
}
break;
case 16 :
// G3D.g:1:151: LINE_COMMENT
{
mLINE_COMMENT();
}
break;
}
}
protected DFA15 dfa15;
protected DFA24 dfa24;
private void InitializeCyclicDFAs()
{
this.dfa15 = new DFA15(this);
this.dfa24 = new DFA24(this);
}
const string DFA15_eotS =
"\x01\uffff\x01\x03\x03\uffff";
const string DFA15_eofS =
"\x05\uffff";
const string DFA15_minS =
"\x02\x2e\x03\uffff";
const string DFA15_maxS =
"\x02\x39\x03\uffff";
const string DFA15_acceptS =
"\x02\uffff\x01\x02\x01\x03\x01\x01";
const string DFA15_specialS =
"\x05\uffff}>";
static readonly string[] DFA15_transitionS = {
"\x01\x02\x01\uffff\x0a\x01",
"\x01\x04\x01\uffff\x0a\x01",
"",
"",
""
};
static readonly short[] DFA15_eot = DFA.UnpackEncodedString(DFA15_eotS);
static readonly short[] DFA15_eof = DFA.UnpackEncodedString(DFA15_eofS);
static readonly char[] DFA15_min = DFA.UnpackEncodedStringToUnsignedChars(DFA15_minS);
static readonly char[] DFA15_max = DFA.UnpackEncodedStringToUnsignedChars(DFA15_maxS);
static readonly short[] DFA15_accept = DFA.UnpackEncodedString(DFA15_acceptS);
static readonly short[] DFA15_special = DFA.UnpackEncodedString(DFA15_specialS);
static readonly short[][] DFA15_transition = DFA.UnpackEncodedStringArray(DFA15_transitionS);
protected class DFA15 : DFA
{
public DFA15(BaseRecognizer recognizer)
{
this.recognizer = recognizer;
this.decisionNumber = 15;
this.eot = DFA15_eot;
this.eof = DFA15_eof;
this.min = DFA15_min;
this.max = DFA15_max;
this.accept = DFA15_accept;
this.special = DFA15_special;
this.transition = DFA15_transition;
}
override public string Description
{
get { return "124:1: FloatingPointLiteral : ( ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( FloatTypeSuffix )? | '.' ( '0' .. '9' )+ ( FloatTypeSuffix )? | ( '0' .. '9' )+ ( FloatTypeSuffix )? );"; }
}
}
const string DFA24_eotS =
"\x04\uffff\x03\x0c\x02\x13\x06\uffff\x03\x0c\x02\uffff\x01\x1b"+
"\x01\x13\x02\uffff\x03\x0c\x01\uffff\x01\x0c\x01\x20\x01\x0c\x01"+
"\x22\x01\uffff\x01\x0c\x01\uffff\x01\x24\x01\uffff";
const string DFA24_eofS =
"\x25\uffff";
const string DFA24_minS =
"\x01\x09\x03\uffff\x01\x4f\x01\x49\x01\x45\x02\x2e\x05\uffff\x01"+
"\x2a\x01\x49\x01\x4e\x01\x43\x02\uffff\x02\x2e\x02\uffff\x01\x4e"+
"\x01\x45\x01\x54\x01\uffff\x01\x54\x01\x24\x01\x4f\x01\x24\x01\uffff"+
"\x01\x52\x01\uffff\x01\x24\x01\uffff";
const string DFA24_maxS =
"\x01\ufaff\x03\uffff\x01\x6f\x01\x69\x01\x65\x01\x78\x01\x66\x05"+
"\uffff\x01\x2f\x01\x69\x01\x6e\x01\x63\x02\uffff\x02\x66\x02\uffff"+
"\x01\x6e\x01\x65\x01\x74\x01\uffff\x01\x74\x01\ufaff\x01\x6f\x01"+
"\ufaff\x01\uffff\x01\x72\x01\uffff\x01\ufaff\x01\uffff";
const string DFA24_acceptS =
"\x01\uffff\x01\x01\x01\x02\x01\x03\x05\uffff\x01\x0a\x01\x0b\x01"+
"\x0c\x01\x0d\x01\x0e\x04\uffff\x01\x07\x01\x08\x02\uffff\x01\x0f"+
"\x01\x10\x03\uffff\x01\x09\x04\uffff\x01\x05\x01\uffff\x01\x04\x01"+
"\uffff\x01\x06";
const string DFA24_specialS =
"\x25\uffff}>";
static readonly string[] DFA24_transitionS = {
"\x02\x0d\x01\uffff\x02\x0d\x12\uffff\x01\x0d\x01\uffff\x01"+
"\x0b\x01\uffff\x01\x0c\x02\uffff\x01\x0a\x03\uffff\x01\x02\x01"+
"\uffff\x01\x03\x01\x09\x01\x0e\x01\x07\x09\x08\x03\uffff\x01"+
"\x01\x03\uffff\x0b\x0c\x01\x05\x03\x0c\x01\x04\x05\x0c\x01\x06"+
"\x04\x0c\x04\uffff\x01\x0c\x01\uffff\x0b\x0c\x01\x05\x03\x0c"+
"\x01\x04\x05\x0c\x01\x06\x04\x0c\x45\uffff\x17\x0c\x01\uffff"+
"\x1f\x0c\x01\uffff\u1f08\x0c\u1040\uffff\u0150\x0c\u0170\uffff"+
"\u0080\x0c\u0080\uffff\u092e\x0c\u10d2\uffff\u5200\x0c\u5900"+
"\uffff\u0200\x0c",
"",
"",
"",
"\x01\x0f\x1f\uffff\x01\x0f",
"\x01\x10\x1f\uffff\x01\x10",
"\x01\x11\x1f\uffff\x01\x11",
"\x01\x09\x01\uffff\x08\x14\x02\x09\x0a\uffff\x01\x09\x01\uffff"+
"\x01\x09\x11\uffff\x01\x12\x0b\uffff\x01\x09\x01\uffff\x01\x09"+
"\x11\uffff\x01\x12",
"\x01\x09\x01\uffff\x0a\x15\x0a\uffff\x01\x09\x01\uffff\x01"+
"\x09\x1d\uffff\x01\x09\x01\uffff\x01\x09",
"",
"",
"",
"",
"",
"\x01\x16\x04\uffff\x01\x17",
"\x01\x18\x1f\uffff\x01\x18",
"\x01\x19\x1f\uffff\x01\x19",
"\x01\x1a\x1f\uffff\x01\x1a",
"",
"",
"\x01\x09\x01\uffff\x08\x14\x02\x09\x0a\uffff\x01\x09\x01\uffff"+
"\x01\x09\x1d\uffff\x01\x09\x01\uffff\x01\x09",
"\x01\x09\x01\uffff\x0a\x15\x0a\uffff\x01\x09\x01\uffff\x01"+
"\x09\x1d\uffff\x01\x09\x01\uffff\x01\x09",
"",
"",
"\x01\x1c\x1f\uffff\x01\x1c",
"\x01\x1d\x1f\uffff\x01\x1d",
"\x01\x1e\x1f\uffff\x01\x1e",
"",
"\x01\x1f\x1f\uffff\x01\x1f",
"\x01\x0c\x0b\uffff\x0a\x0c\x07\uffff\x1a\x0c\x04\uffff\x01"+
"\x0c\x01\uffff\x1a\x0c\x45\uffff\x17\x0c\x01\uffff\x1f\x0c\x01"+
"\uffff\u1f08\x0c\u1040\uffff\u0150\x0c\u0170\uffff\u0080\x0c"+
"\u0080\uffff\u092e\x0c\u10d2\uffff\u5200\x0c\u5900\uffff\u0200"+
"\x0c",
"\x01\x21\x1f\uffff\x01\x21",
"\x01\x0c\x0b\uffff\x0a\x0c\x07\uffff\x1a\x0c\x04\uffff\x01"+
"\x0c\x01\uffff\x1a\x0c\x45\uffff\x17\x0c\x01\uffff\x1f\x0c\x01"+
"\uffff\u1f08\x0c\u1040\uffff\u0150\x0c\u0170\uffff\u0080\x0c"+
"\u0080\uffff\u092e\x0c\u10d2\uffff\u5200\x0c\u5900\uffff\u0200"+
"\x0c",
"",
"\x01\x23\x1f\uffff\x01\x23",
"",
"\x01\x0c\x0b\uffff\x0a\x0c\x07\uffff\x1a\x0c\x04\uffff\x01"+
"\x0c\x01\uffff\x1a\x0c\x45\uffff\x17\x0c\x01\uffff\x1f\x0c\x01"+
"\uffff\u1f08\x0c\u1040\uffff\u0150\x0c\u0170\uffff\u0080\x0c"+
"\u0080\uffff\u092e\x0c\u10d2\uffff\u5200\x0c\u5900\uffff\u0200"+
"\x0c",
""
};
static readonly short[] DFA24_eot = DFA.UnpackEncodedString(DFA24_eotS);
static readonly short[] DFA24_eof = DFA.UnpackEncodedString(DFA24_eofS);
static readonly char[] DFA24_min = DFA.UnpackEncodedStringToUnsignedChars(DFA24_minS);
static readonly char[] DFA24_max = DFA.UnpackEncodedStringToUnsignedChars(DFA24_maxS);
static readonly short[] DFA24_accept = DFA.UnpackEncodedString(DFA24_acceptS);
static readonly short[] DFA24_special = DFA.UnpackEncodedString(DFA24_specialS);
static readonly short[][] DFA24_transition = DFA.UnpackEncodedStringArray(DFA24_transitionS);
protected class DFA24 : DFA
{
public DFA24(BaseRecognizer recognizer)
{
this.recognizer = recognizer;
this.decisionNumber = 24;
this.eot = DFA24_eot;
this.eof = DFA24_eof;
this.min = DFA24_min;
this.max = DFA24_max;
this.accept = DFA24_accept;
this.special = DFA24_special;
this.transition = DFA24_transition;
}
override public string Description
{
get { return "1:1: Tokens : ( T__51 | T__52 | T__53 | POINT | LINE | VECTOR | HexLiteral | DecimalLiteral | OctalLiteral | FloatingPointLiteral | CharacterLiteral | StringLiteral | ID | WS | COMMENT | LINE_COMMENT );"; }
}
}
}
}