9 using System.Collections.Generic;
10 using System.Globalization;
158 public const int AS = 56;
172 public const int DO = 70;
182 public const int FOR = 80;
185 public const int IF = 83;
187 public const int IN = 85;
188 public const int INT = 86;
191 public const int IS = 89;
195 public const int NEW = 93;
199 public const int OUT = 97;
206 public const int REF = 104;
219 public const int TRY = 117;
231 public const int VAR = 129;
232 public const int DOT = 130;
266 public const int DIV = 164;
267 public const int MOD = 165;
276 public const int INC = 174;
277 public const int DEC = 175;
280 public const int LTE = 178;
281 public const int GTE = 179;
386 private Location getLocation(
IToken i) {
return new Location(fileinfo_.FullName, i.getLine(), i.getColumn()); }
393 return ((codeMask & construct) != 0);
398 base.setFilename(filename);
402 private bool SingleLinePPDirectiveIsPredictedByLA(
int lookAheadDepth)
406 (LA(lookAheadDepth) ==
PP_LINE) ||
415 private bool PPDirectiveIsPredictedByLA(
int lookAheadDepth)
421 (LA(lookAheadDepth) ==
PP_LINE) ||
430 private bool IdentifierRuleIsPredictedByLA(
int lookAheadDepth)
450 private bool TypeRuleIsPredictedByLA(
int lookAheadDepth)
452 if ((LA(lookAheadDepth) ==
DOT) ||
453 (LA(lookAheadDepth) ==
VOID) ||
455 (LA(lookAheadDepth) ==
INT) ||
456 (LA(lookAheadDepth) ==
BOOL) ||
457 (LA(lookAheadDepth) ==
STRING) ||
458 (LA(lookAheadDepth) ==
OBJECT) ||
459 (LA(lookAheadDepth) ==
BYTE) ||
460 (LA(lookAheadDepth) ==
CHAR) ||
461 (LA(lookAheadDepth) ==
DECIMAL) ||
462 (LA(lookAheadDepth) ==
DOUBLE) ||
463 (LA(lookAheadDepth) ==
FLOAT) ||
464 (LA(lookAheadDepth) ==
LONG) ||
465 (LA(lookAheadDepth) ==
SBYTE) ||
466 (LA(lookAheadDepth) ==
SHORT) ||
467 (LA(lookAheadDepth) ==
UINT) ||
468 (LA(lookAheadDepth) ==
ULONG) ||
469 (LA(lookAheadDepth) ==
VAR) ||
470 (LA(lookAheadDepth) ==
USHORT))
482 private bool errorState =
false;
489 public override void match(
int token) {
493 while (this.LA(0) != token && this.LA(0) !=
EOF)
551 if (0==inputState.guessing)
561 if (0==inputState.guessing)
571 if (0==inputState.guessing)
581 if (0==inputState.guessing)
591 if (0==inputState.guessing)
601 if (0==inputState.guessing)
611 if (0==inputState.guessing)
621 if (0==inputState.guessing)
631 if (0==inputState.guessing)
641 if (0==inputState.guessing)
651 if (0==inputState.guessing)
677 if (0==inputState.guessing)
772 if (0==inputState.guessing)
841 if (0==inputState.guessing)
843 name = qid.Identifier;
858 if (0==inputState.guessing)
871 if (0==inputState.guessing)
876 for (
int i = 0; i < rank; i++) { name +=
"[]"; }
885 string typeExp =
""; ;
893 if (0==inputState.guessing)
902 if (0==inputState.guessing)
911 if (0==inputState.guessing)
920 if (0==inputState.guessing)
929 if (0==inputState.guessing)
938 if (0==inputState.guessing)
947 if (0==inputState.guessing)
949 typeExp = Convert.ToString(TypeVariable.NewTypeVariable);
972 if (0==inputState.guessing)
979 goto _loop224_breakloop;
983 _loop224_breakloop: ;
995 if (0==inputState.guessing)
1006 if (0==inputState.guessing)
1008 ce.AddExpression(exp);
1013 goto _loop10_breakloop;
1017 _loop10_breakloop: ;
1029 if (0==inputState.guessing)
1070 if (0==inputState.guessing)
1081 if (0==inputState.guessing)
1083 ce.AddExpression(exp);
1088 goto _loop16_breakloop;
1092 _loop16_breakloop: ;
1125 if (0==inputState.guessing)
1127 op = AssignmentOperator.Assign;
1134 if (0==inputState.guessing)
1136 opArith = ArithmeticOperator.Plus;
1143 if (0==inputState.guessing)
1145 opArith = ArithmeticOperator.Minus;
1152 if (0==inputState.guessing)
1154 opArith = ArithmeticOperator.Mult;
1161 if (0==inputState.guessing)
1163 opArith = ArithmeticOperator.Div;
1170 if (0==inputState.guessing)
1172 opArith = ArithmeticOperator.Mod;
1179 if (0==inputState.guessing)
1181 opBit = BitwiseOperator.BitwiseAnd;
1188 if (0==inputState.guessing)
1190 opBit = BitwiseOperator.BitwiseOr;
1197 if (0==inputState.guessing)
1199 opBit = BitwiseOperator.BitwiseXOr;
1206 if (0==inputState.guessing)
1208 opBit = BitwiseOperator.ShiftLeft;
1215 if (0==inputState.guessing)
1217 opBit = BitwiseOperator.ShiftRight;
1245 if (0==inputState.guessing)
1284 if (0==inputState.guessing)
1316 if (0==inputState.guessing)
1318 if (exp == null) exp = exp1;
1337 if (0==inputState.guessing)
1344 goto _loop25_breakloop;
1348 _loop25_breakloop: ;
1350 if (0==inputState.guessing)
1371 if (0==inputState.guessing)
1378 goto _loop28_breakloop;
1382 _loop28_breakloop: ;
1384 if (0==inputState.guessing)
1405 if (0==inputState.guessing)
1412 goto _loop31_breakloop;
1416 _loop31_breakloop: ;
1418 if (0==inputState.guessing)
1439 if (0==inputState.guessing)
1446 goto _loop34_breakloop;
1450 _loop34_breakloop: ;
1452 if (0==inputState.guessing)
1473 if (0==inputState.guessing)
1480 goto _loop37_breakloop;
1484 _loop37_breakloop: ;
1486 if (0==inputState.guessing)
1511 if (0==inputState.guessing)
1513 op = RelationalOperator.Equal;
1520 if (0==inputState.guessing)
1522 op = RelationalOperator.NotEqual;
1533 if (0==inputState.guessing)
1540 goto _loop41_breakloop;
1544 _loop41_breakloop: ;
1546 if (0==inputState.guessing)
1605 if (0==inputState.guessing)
1607 op = RelationalOperator.LessThan;
1614 if (0==inputState.guessing)
1616 op = RelationalOperator.GreaterThan;
1623 if (0==inputState.guessing)
1625 op = RelationalOperator.LessThanOrEqual;
1632 if (0==inputState.guessing)
1634 op = RelationalOperator.GreaterThanOrEqual;
1645 if (0==inputState.guessing)
1652 goto _loop46_breakloop;
1656 _loop46_breakloop: ;
1658 if (0==inputState.guessing)
1669 if (0==inputState.guessing)
1702 if (0==inputState.guessing)
1704 op = BitwiseOperator.ShiftLeft;
1711 if (0==inputState.guessing)
1713 op = BitwiseOperator.ShiftRight;
1724 if (0==inputState.guessing)
1731 goto _loop50_breakloop;
1735 _loop50_breakloop: ;
1737 if (0==inputState.guessing)
1762 if (0==inputState.guessing)
1764 op = ArithmeticOperator.Plus;
1771 if (0==inputState.guessing)
1773 op = ArithmeticOperator.Minus;
1784 if (0==inputState.guessing)
1791 goto _loop54_breakloop;
1795 _loop54_breakloop: ;
1797 if (0==inputState.guessing)
1814 if (((LA(1) >=
STAR && LA(1) <=
MOD)))
1822 if (0==inputState.guessing)
1824 op = ArithmeticOperator.Mult;
1831 if (0==inputState.guessing)
1833 op = ArithmeticOperator.Div;
1840 if (0==inputState.guessing)
1842 op = ArithmeticOperator.Mod;
1853 if (0==inputState.guessing)
1860 goto _loop58_breakloop;
1864 _loop58_breakloop: ;
1866 if (0==inputState.guessing)
1893 if (0==inputState.guessing)
1907 if (0==inputState.guessing)
1921 if (0==inputState.guessing)
1932 if (0==inputState.guessing)
1943 if (0==inputState.guessing)
1954 if (0==inputState.guessing)
1961 bool synPredMatched61 =
false;
1965 synPredMatched61 =
true;
1966 inputState.guessing++;
1977 synPredMatched61 =
false;
1980 inputState.guessing--;
1982 if ( synPredMatched61 )
1989 if (0==inputState.guessing)
2076 if (0==inputState.guessing)
2088 if (0==inputState.guessing)
2099 if (0==inputState.guessing)
2109 if (0==inputState.guessing)
2114 e =
new ArithmeticExpression(
new AssignmentExpression(e,
new ArithmeticExpression(e.
CloneInit(),
new IntLiteralExpression(1, l), ArithmeticOperator.Plus, l),
AssignmentOperator.Assign, l),
new IntLiteralExpression(1, l), ArithmeticOperator.Minus, l);
2123 if (0==inputState.guessing)
2128 e =
new ArithmeticExpression(
new AssignmentExpression(e,
new ArithmeticExpression(e.
CloneInit(),
new IntLiteralExpression(1, l), ArithmeticOperator.Minus, l),
AssignmentOperator.Assign, l),
new IntLiteralExpression(1, l), ArithmeticOperator.Plus, l);
2142 goto _loop69_breakloop;
2146 _loop69_breakloop: ;
2148 if (0==inputState.guessing)
2204 if (0==inputState.guessing)
2221 if (0==inputState.guessing)
2232 if (0==inputState.guessing)
2278 if (0==inputState.guessing)
2288 if (0==inputState.guessing)
2298 if (0==inputState.guessing)
2308 if (0==inputState.guessing)
2311 NumberFormatInfo provider =
new NumberFormatInfo();
2312 provider.NumberDecimalSeparator =
".";
2322 if (0==inputState.guessing)
2326 string aux = c.getText().Substring(1, c.getText().Length - 2);
2327 if (aux.Length == 1)
2335 case "\\\'": literal =
'\'';
break;
2336 case "\\\"": literal =
'\"';
break;
2337 case "\\\\": literal =
'\\';
break;
2338 case "\\0": literal =
'\0';
break;
2339 case "\\a": literal =
'\a';
break;
2340 case "\\b": literal =
'\b';
break;
2341 case "\\f": literal =
'\f';
break;
2342 case "\\n": literal =
'\n';
break;
2343 case "\\r": literal =
'\r';
break;
2344 case "\\t": literal =
'\t';
break;
2345 default: ErrorManager.Instance.NotifyError(
new LexicalError(
"The character " + c.getText() +
" is not allowed.", getLocation(c)));
break;
2357 if (0==inputState.guessing)
2367 if (0==inputState.guessing)
2444 if (0==inputState.guessing)
2453 if (0==inputState.guessing)
2458 string typeIdentifier = typeExp;
2459 while (typeIdentifier.Contains(
"[]"))
2461 typeIdentifier = typeIdentifier.Substring(0, typeIdentifier.Length - 2);
2535 if (0==inputState.guessing)
2687 if (((
tokenSet_5_.member(LA(1))) && (
tokenSet_6_.member(LA(2))))&&( ((LA(1) ==
CONST) && TypeRuleIsPredictedByLA(2) && IdentifierRuleIsPredictedByLA(3)) ||
2688 (TypeRuleIsPredictedByLA(1) && IdentifierRuleIsPredictedByLA(2)) ))
2693 bool synPredMatched81 =
false;
2697 synPredMatched81 =
true;
2698 inputState.guessing++;
2744 synPredMatched81 =
false;
2747 inputState.guessing--;
2749 if ( synPredMatched81 )
2764 if (0 == inputState.guessing)
2767 ErrorManager.Instance.NotifyError(
new ParserError(
new Location(ex.fileName, ex.line, ex.column), ex.Message));
2769 if (this.errorState)
2772 this.errorState =
true;
2787 List<Statement> ds = null;
2814 if (0==inputState.guessing)
2824 if (0==inputState.guessing)
2855 if (0==inputState.guessing)
2857 stat =
new Block(getLocation(s));
2938 if (0==inputState.guessing)
2940 stat =
new Block(getLocation(o));
2948 if (0==inputState.guessing)
2950 stat.AddStatement(s);
2955 goto _loop86_breakloop;
2959 _loop86_breakloop: ;
3086 if (0==inputState.guessing)
3093 goto _loop150_breakloop;
3097 _loop150_breakloop: ;
3171 if (0==inputState.guessing)
3195 if (0==inputState.guessing)
3197 stat =
new Block(getLocation(s));
3211 List<Statement> stats =
new List<Statement>();
3222 if (0==inputState.guessing)
3229 if (_cnt89 >= 1) {
goto _loop89_breakloop; }
else {
throw new NoViableAltException(LT(1), getFilename());; }
3234 _loop89_breakloop: ;
3241 List<Statement> statList = null;
3243 string typeExp =
"";
3252 List<Statement> statList = null;
3254 string typeExp =
"";
3266 List<Statement> statList =
new List<Statement>();
3271 if (0==inputState.guessing)
3280 if (0==inputState.guessing)
3283 type = TypeSystem.TypeTable.ObtainNewType(
type);
3287 if (0==inputState.guessing)
3294 goto _loop94_breakloop;
3298 _loop94_breakloop: ;
3332 if (0==inputState.guessing)
3338 decl =
new Definition(
id, type, exp,
id.Location);
3403 List<Statement> statList =
new List<Statement>();
3408 if (0==inputState.guessing)
3417 if (0==inputState.guessing)
3420 type = TypeSystem.TypeTable.ObtainNewType(
type);
3424 if (0==inputState.guessing)
3431 goto _loop102_breakloop;
3435 _loop102_breakloop: ;
3451 if (0==inputState.guessing)
3459 string type, List<Modifier> mods
3462 List<FieldDeclaration> decls =
new List<FieldDeclaration>();
3467 if (0==inputState.guessing)
3476 if (0==inputState.guessing)
3479 type = TypeSystem.TypeTable.ObtainNewType(
type);
3483 if (0==inputState.guessing)
3490 goto _loop106_breakloop;
3494 _loop106_breakloop: ;
3500 string type, List<Modifier> mods
3510 if (0==inputState.guessing)
3552 if (0==inputState.guessing)
3577 if (0==inputState.guessing)
3596 List<SwitchSection> sections =
new List<SwitchSection>();
3625 List<SwitchSection> sections =
new List<SwitchSection>();
3636 if (0==inputState.guessing)
3638 sections.Add(section);
3643 if (_cnt119 >= 1) {
goto _loop119_breakloop; }
else {
throw new NoViableAltException(LT(1), getFilename());; }
3648 _loop119_breakloop: ;
3657 List<SwitchLabel> labels = null; List<Statement> stats = null;
3661 if (0==inputState.guessing)
3670 List<SwitchLabel> labels =
new List<SwitchLabel>();
3681 if (0==inputState.guessing)
3688 if (_cnt123 >= 1) {
goto _loop123_breakloop; }
else {
throw new NoViableAltException(LT(1), getFilename());; }
3693 _loop123_breakloop: ;
3714 if (0==inputState.guessing)
3725 if (0==inputState.guessing)
3752 if (0==inputState.guessing)
3774 if (0==inputState.guessing)
3786 Statement stat = null;
Expression cond = null; List<Statement> stats1 = null; List<Statement> stats2 = null;
3798 if (0==inputState.guessing)
3800 s =
new ForStatement(stats1, cond, stats2, stat, getLocation(f));
3821 if (0==inputState.guessing)
3830 List<Statement> stat = null;
3834 if (((
tokenSet_1_.member(LA(1))) && (
tokenSet_12_.member(LA(2))))&&( (TypeRuleIsPredictedByLA(1) && IdentifierRuleIsPredictedByLA(2)) ))
3839 bool synPredMatched132 =
false;
3843 synPredMatched132 =
true;
3844 inputState.guessing++;
3853 synPredMatched132 =
false;
3856 inputState.guessing--;
3858 if ( synPredMatched132 )
3865 else if ((LA(1)==
SEMI)) {
3932 List<Statement> statList = null;
3986 List<Statement> statList = null;
3991 if (0==inputState.guessing)
3993 statList =
new List<Statement>(); statList.Add(st1);
4002 if (0==inputState.guessing)
4009 goto _loop139_breakloop;
4013 _loop139_breakloop: ;
4027 if (0==inputState.guessing)
4043 if (0==inputState.guessing)
4106 if (0==inputState.guessing)
4169 if (0==inputState.guessing)
4216 if (0==inputState.guessing)
4222 return catchStatement;
4227 Block finallyBlock = null;
4231 finallyBlock=
block();
4232 return finallyBlock;
4256 if (((LA(1)==
USING))&&( !PPDirectiveIsPredictedByLA(1) ))
4259 if (0==inputState.guessing)
4261 sf.AddUsing(e.Identifier);
4266 goto _loop158_breakloop;
4270 _loop158_breakloop: ;
4289 goto _loop162_breakloop;
4293 _loop162_breakloop: ;
4313 Declaration decl = null; List<Modifier> mods = null;
4336 if (0==inputState.guessing)
4338 sf.AddDeclaration(decl);
4389 if (0==inputState.guessing)
4391 sf.AddNamespace(qid, decls);
4397 List<Modifier> mods =
new List<Modifier>();
4407 if (0==inputState.guessing)
4414 goto _loop172_breakloop;
4418 _loop172_breakloop: ;
4495 if (0==inputState.guessing)
4547 if (0==inputState.guessing)
4556 List<Declaration> decls =
new List<Declaration>();
4558 Declaration decl = null; List<Modifier> mods = null;
4568 if (0==inputState.guessing)
4575 goto _loop169_breakloop;
4579 _loop169_breakloop: ;
4596 if (0==inputState.guessing)
4598 mod = Modifier.Abstract;
4605 if (0==inputState.guessing)
4614 if (0==inputState.guessing)
4616 mod = Modifier.Override;
4623 if (0==inputState.guessing)
4625 mod = Modifier.Public;
4632 if (0==inputState.guessing)
4634 mod = Modifier.Protected;
4641 if (0==inputState.guessing)
4643 mod = Modifier.Internal;
4650 if (0==inputState.guessing)
4652 mod = Modifier.Private;
4659 if (0==inputState.guessing)
4661 mod = Modifier.Static;
4668 if (0==inputState.guessing)
4670 mod = Modifier.Virtual;
4685 List<string> bases =
new List<string>();
4687 string typeExp =
"";
4696 if (0==inputState.guessing)
4707 if (0==inputState.guessing)
4714 goto _loop180_breakloop;
4718 _loop180_breakloop: ;
4737 List<Declaration> decls =
new List<Declaration>();
4748 List<Declaration> decls =
new List<Declaration>();
4758 if (0==inputState.guessing)
4767 for (
int i = 0; i < ((FieldDeclarationSet)d).Count; i++)
4769 decls.Add(((FieldDeclarationSet)d).GetDeclarationElement(i));
4777 goto _loop184_breakloop;
4781 _loop184_breakloop: ;
4790 List<Modifier> mods = null;
4815 if (0==inputState.guessing)
4881 if (0==inputState.guessing)
4929 if (0==inputState.guessing)
4952 if (0==inputState.guessing)
5000 if (0==inputState.guessing)
5030 List<Parameter> pars = null;
5105 if (0==inputState.guessing)
5163 if (0==inputState.guessing)
5193 if (0==inputState.guessing)
5210 string type, List<Modifier> mods
5216 List<FieldDeclaration> decls =
new List<FieldDeclaration>();
FieldDeclaration d = null;
5219 if (0==inputState.guessing)
5228 if (0==inputState.guessing)
5231 type = TypeSystem.TypeTable.ObtainNewType(
type);
5237 if (0==inputState.guessing)
5244 goto _loop196_breakloop;
5248 _loop196_breakloop: ;
5250 if (0==inputState.guessing)
5292 if (0==inputState.guessing)
5294 accessors[0] = getStat; accessors[1] = setStat;
5319 if (0==inputState.guessing)
5321 accessors[0] = getStat; accessors[1] = setStat;
5335 string type, List<Modifier> mods
5363 if (0==inputState.guessing)
5432 string typeExp =
""; ;
5435 if (((LA(1)==
VOID) && (LA(2)==
EOF))&&( ((LA(1) ==
VOID) && (LA(2) !=
STAR)) ))
5452 List<Parameter> pars =
new List<Parameter>();
5457 if (0==inputState.guessing)
5468 if (0==inputState.guessing)
5475 goto _loop207_breakloop;
5479 _loop207_breakloop: ;
5492 if (0==inputState.guessing)
5494 param.Identifier = id.Identifier; param.ParamType = typeExp; param.Line = id.Location.Line; param.Column = id.Location.Column;
5530 string typeExp =
"";;
5551 goto _loop227_breakloop;
5555 _loop227_breakloop: ;
5567 if (0==inputState.guessing)
5574 if ((LA(1)==
COMMA) && (tokenSet_20_.member(LA(2))))
5578 if (0==inputState.guessing)
5580 ce.AddExpression(e1);
5585 goto _loop233_breakloop;
5589 _loop233_breakloop: ;
5596 List<string> bases =
new List<string>();
5598 string typeExp =
"";
5607 if (0==inputState.guessing)
5618 if (0==inputState.guessing)
5625 goto _loop239_breakloop;
5629 _loop239_breakloop: ;
5648 List<Declaration> decls =
new List<Declaration>();
5659 List<Declaration> decls =
new List<Declaration>();
5669 if (0==inputState.guessing)
5676 goto _loop243_breakloop;
5680 _loop243_breakloop: ;
5697 if (0==inputState.guessing)
5699 mod.Add(Modifier.New);
5777 if (0==inputState.guessing)
5831 if (0==inputState.guessing)
5842 if (0==inputState.guessing)
5895 if (0==inputState.guessing)
5897 accessors[0] = getStat; accessors[1] = setStat;
5922 if (0==inputState.guessing)
5924 accessors[0] = getStat; accessors[1] = setStat;
5937 private void initializeFactory()
5945 @"""NULL_TREE_LOOKAHEAD""",
5946 @"""UNICODE_CLASS_Nl""",
5947 @"""UNICODE_CLASS_Lt""",
5948 @"""UNICODE_CLASS_Zs""",
5949 @"""UNICODE_CLASS_Ll""",
5950 @"""UNICODE_CLASS_Lu""",
5951 @"""UNICODE_CLASS_Lo""",
5952 @"""UNICODE_CLASS_Lm""",
5953 @"""UNICODE_CLASS_Mn""",
5954 @"""UNICODE_CLASS_Mc""",
5955 @"""UNICODE_CLASS_Nd""",
5956 @"""UNICODE_CLASS_Pc""",
5957 @"""UNICODE_CLASS_Cf""",
5964 @"""PP_COND_ELIF""",
5965 @"""PP_COND_ELSE""",
5966 @"""PP_COND_ENDIF""",
5971 @"""PP_ENDREGION""",
5988 @"""NON_NEWLINE_WHITESPACE""",
5989 @"""UNICODE_ESCAPE_SEQUENCE""",
5990 @"""DECIMAL_DIGIT""",
5992 @"""LETTER_CHARACTER""",
5993 @"""DECIMAL_DIGIT_CHARACTER""",
5994 @"""CONNECTING_CHARACTER""",
5995 @"""COMBINING_CHARACTER""",
5996 @"""FORMATTING_CHARACTER""",
6073 @"""UINT_LITERAL""",
6074 @"""LONG_LITERAL""",
6075 @"""ULONG_LITERAL""",
6076 @"""DECIMAL_LITERAL""",
6077 @"""FLOAT_LITERAL""",
6078 @"""DOUBLE_LITERAL""",
6093 @"""CHAR_LITERAL""",
6094 @"""STRING_LITERAL""",
6095 @"""ESCAPED_LITERAL""",
6123 @"""MINUS_ASSIGN""",
6127 @"""BIN_AND_ASSIGN""",
6128 @"""BIN_OR_ASSIGN""",
6129 @"""BIN_XOR_ASSIGN""",
6130 @"""SHIFTL_ASSIGN""",
6131 @"""SHIFTR_ASSIGN""",
6133 @"""PP_DIRECTIVE""",
6134 @"""COMPILATION_UNIT""",
6135 @"""USING_DIRECTIVES""",
6136 @"""USING_ALIAS_DIRECTIVE""",
6137 @"""USING_NAMESPACE_DIRECTIVE""",
6138 @"""GLOBAL_ATTRIBUTE_SECTIONS""",
6139 @"""GLOBAL_ATTRIBUTE_SECTION""",
6140 @"""ATTRIBUTE_SECTIONS""",
6141 @"""ATTRIBUTE_SECTION""",
6143 @"""QUALIFIED_IDENTIFIER""",
6144 @"""POSITIONAL_ARGLIST""",
6145 @"""POSITIONAL_ARG""",
6146 @"""NAMED_ARGLIST""",
6149 @"""FORMAL_PARAMETER_LIST""",
6150 @"""PARAMETER_FIXED""",
6151 @"""PARAMETER_ARRAY""",
6152 @"""ATTRIB_ARGUMENT_EXPR""",
6157 @"""INTERFACE_BASE""",
6161 @"""CONST_DECLARATOR""",
6163 @"""STATIC_CTOR_DECL""",
6167 @"""PROPERTY_DECL""",
6168 @"""INDEXER_DECL""",
6169 @"""UNARY_OP_DECL""",
6170 @"""BINARY_OP_DECL""",
6171 @"""CONV_OP_DECL""",
6178 @"""VAR_INIT_LIST""",
6179 @"""VAR_DECLARATOR""",
6181 @"""LOCVAR_INIT_LIST""",
6182 @"""LOCVAR_DECLS""",
6186 @"""MEMBER_ACCESS_EXPR""",
6187 @"""ELEMENT_ACCESS_EXPR""",
6188 @"""INVOCATION_EXPR""",
6189 @"""POST_INC_EXPR""",
6190 @"""POST_DEC_EXPR""",
6192 @"""OBJ_CREATE_EXPR""",
6193 @"""DLG_CREATE_EXPR""",
6194 @"""ARRAY_CREATE_EXPR""",
6196 @"""PTR_ELEMENT_ACCESS_EXPR""",
6197 @"""PTR_INDIRECTION_EXPR""",
6198 @"""PTR_DECLARATOR""",
6200 @"""ADDRESS_OF_EXPR""",
6202 @"""NAMESPACE_BODY""",
6211 @"""SWITCH_SECTION""",
6212 @"""SWITCH_LABELS""",
6213 @"""SWITCH_LABEL""",
6214 @"""PP_DIRECTIVES""",
6220 private static long[] mk_tokenSet_0_()
6222 long[] data = { 0L, 0L, 3404087999594496L, 0L, 0L, 0L};
6226 private static long[] mk_tokenSet_1_()
6228 long[] data = { -8935141660703064064L, 4611967495555776640L, 3145218L, 0L, 0L, 0L};
6232 private static long[] mk_tokenSet_2_()
6234 long[] data = { 144115256795529216L, 2251801424297984L, 32505600L, 0L, 0L, 0L};
6238 private static long[] mk_tokenSet_3_()
6240 long[] data = { -8791017745253466112L, 4614219297013629056L, 4611686018325675782L, 0L, 0L, 0L};
6244 private static long[] mk_tokenSet_4_()
6246 long[] data = { 68719476736L, 0L, 211106500968452L, 0L, 0L, 0L};
6250 private static long[] mk_tokenSet_5_()
6252 long[] data = { -8935141660703064064L, 4611967495555776644L, 3145218L, 0L, 0L, 0L};
6256 private static long[] mk_tokenSet_6_()
6258 long[] data = { -8935141660703064064L, 4611967495555776640L, 271580678L, 0L, 0L, 0L};
6262 private static long[] mk_tokenSet_7_()
6264 long[] data = { 720576283976859648L, 16890699237228616L, 213335420174081L, 0L, 0L, 0L};
6268 private static long[] mk_tokenSet_8_()
6270 long[] data = { -5908714121175040000L, 4628858194826559692L, 4611686014634688263L, 0L, 0L, 0L};
6274 private static long[] mk_tokenSet_9_()
6276 long[] data = { -8214565376726204416L, 4628858194793005260L, 213335420174083L, 0L, 0L, 0L};
6280 private static long[] mk_tokenSet_10_()
6282 long[] data = { -5908722367512248320L, 4628858194793005516L, 213335554391811L, 0L, 0L, 0L};
6286 private static long[] mk_tokenSet_11_()
6288 long[] data = { -1260999305728688128L, 6934842439761600972L, 4611686016782171911L, 0L, 0L, 0L};
6292 private static long[] mk_tokenSet_12_()
6294 long[] data = { 0L, 0L, 271580676L, 0L, 0L, 0L};
6298 private static long[] mk_tokenSet_13_()
6300 long[] data = { 144115531673436160L, 2251801424297984L, 213331058097920L, 0L, 0L, 0L};
6304 private static long[] mk_tokenSet_14_()
6306 long[] data = { -8791017882692419584L, 4614219297013629056L, 4611686015507103494L, 0L, 0L, 0L};
6310 private static long[] mk_tokenSet_15_()
6312 long[] data = { 36028797018963968L, 2305984245748727810L, 0L, 0L, 0L};
6316 private static long[] mk_tokenSet_16_()
6318 long[] data = { 36028797018963968L, 2305984245471903744L, 0L, 0L, 0L};
6322 private static long[] mk_tokenSet_17_()
6324 long[] data = { 36028797018963968L, 2305984245480292354L, 0L, 0L, 0L};
6328 private static long[] mk_tokenSet_18_()
6330 long[] data = { -8899112863684100096L, 6917951741027680388L, 3145218L, 0L, 0L, 0L};
6334 private static long[] mk_tokenSet_19_()
6336 long[] data = { 0L, 0L, 3145216L, 0L, 0L, 0L};
6340 private static long[] mk_tokenSet_20_()
6342 long[] data = { 144115531673436160L, 2251801424297984L, 213331125206784L, 0L, 0L, 0L};
6346 private static long[] mk_tokenSet_21_()
6348 long[] data = { -8935141660703064064L, 4611967496092647552L, 3145218L, 0L, 0L, 0L};
Encapsulates a Return statement of our programming languages.
Encapsulates a 'base' expression.
Encapsulates a definition of a concrete method.
List< Statement > statementList()
static readonly BitSet tokenSet_11_
Declaration typeDeclaration(List< Modifier > mods)
const int POSITIONAL_ARGLIST
Expression conditionalOrExpression()
Encapsulates a Break statement of our programming languages.
CodeMaskEnums
Bit masks for specifying valid CSharp syntax constructs in Parser productions.
Expression relationalExpression()
const int ELEMENT_ACCESS_EXPR
List< SwitchSection > switchBlock()
List< Declaration > namespaceBody()
Statement jumpStatement()
antlr.collections.impl.BitSet BitSet
static readonly BitSet tokenSet_9_
Statement embeddedStatement()
Abstract class encapsulate a programming language expression.
Encapsulates a name expression of our programming language.
List< Statement > localConstantDeclarators(string type)
Encapsulates the qualified name expression.
CSharpParser(TokenStream lexer)
CompoundExpression argumentList()
Encapsulates a Case statement of our programming languages.
List< Parameter > formalParameterList()
Encapsulates a Do statement of our programming language.
const int UNICODE_CLASS_Zs
Encapsulates a string literal expression.
Encapsulates the expression to access a field.
Statement selectionStatement()
const int FORMATTING_CHARACTER
Encapsulates a block of statements.
Expression conditionalExpression()
antlr.LLkParser LLkParser
Expression shiftExpression()
SingleIdentifierExpression nonKeywordLiterals()
static readonly BitSet tokenSet_2_
const int STATIC_CTOR_DECL
List< Statement > localConstantDeclaration()
static readonly BitSet tokenSet_6_
Declaration typeMemberDeclaration(List< Modifier > mods)
SingleIdentifierExpression identifier()
static readonly BitSet tokenSet_8_
Statement continueStatement()
static readonly BitSet tokenSet_5_
System.IO.FileInfo FileInfo
static readonly BitSet tokenSet_18_
Encapsulates a Catch statement of our programming languages.
Encapsulates a logical binary expression.
static readonly BitSet tokenSet_3_
Encapsulates a invocation expression.
Encapsulates a boolean literal expression.
Encapsulates a cast expression.
Encapsulates a definition of a concrete field.
This class encapsulates a location in a specific file. Implements an Inmutable pattern. So it can be used in any context, that is his internal fields never change.
Abstract class represents a programming language statement.
InvocationExpression constructorInitializer()
CSharpParser(TokenBuffer tokenBuf)
void usingDirectives(SourceFile sf)
const int CONST_DECLARATOR
SwitchStatement switchStatement()
Statement breakStatement()
ConstantDefinition localConstantDeclarator(string type)
antlr.NoViableAltException NoViableAltException
SwitchSection switchSection()
const int UNICODE_CLASS_Lt
IdentifierExpression usingDirective()
const int ARRAY_CREATE_EXPR
Expression localVariableInitializer()
Statement foreachStatement()
static readonly BitSet tokenSet_16_
Encapsulates a constant field definition.
Expression newExpression()
const int PARAMETER_FIXED
Encapsulates a definition.
Statement elseStatement()
Statement returnStatement()
const int NULL_TREE_LOOKAHEAD
DeclarationSet declarationStatement()
Encapsulates arithmetic binary expressions.
CSharpParser(ParserSharedInputState state)
void namespaceMemberDeclarations(SourceFile sf)
const int DECIMAL_DIGIT_CHARACTER
List< Declaration > interfaceMemberDeclarations()
Encapsulates a For statement of our programming languages.
Declaration classMemberDeclaration()
Encapsulates a While statement of our programming languages.
Expression unaryExpression()
System.Text.StringBuilder StringBuilder
const int UNICODE_CLASS_Mn
List< SwitchSection > switchSections()
antlr.SemanticException SemanticException
Encapsulates a null expression.
RelationalOperator
Relational binary operators
Encapsulates a Is expression.
Expression booleanExpression()
System.IO.FileInfo FileInfo
Encapsulates a definition of a concrete interface.
const int COMBINING_CHARACTER
const int NON_NEWLINE_WHITESPACE
antlr.TokenStream TokenStream
Encapsulates a switch label (Case + condition or Default section).
List< Statement > forIterator()
static readonly BitSet tokenSet_21_
Encapsulates a identifier expression of our programming language.
Encapsulates a statement with several declarations.
Parameter fixedParameter()
CSharpParser(TokenBuffer tokenBuf, int k)
Encapsulates a declaration of a concrete method.
LogicalOperator
Logical binary operators
Declaration interfaceDeclaration(List< Modifier > mods)
int ExpressionCount
Gets the number of expressions.
const int UNICODE_CLASS_Nl
ArgumentExpression argument()
Expression assignmentExpression()
Encapsulates a set of expressions.
override void match(int token)
Overrides the behavior of match. Discards tokens when the parser is in panic mode ...
ConstantFieldDefinition constantDeclarator(string type, List< Modifier > mods)
const int USING_DIRECTIVES
Expression forCondition()
CompoundExpression expressionList()
Expression CloneInit()
Clones the initialization of the current object.
Statement getAccessorDeclaration()
CatchStatement catchClause()
Encapsulates a relational binary expression.
Encapsulates a bitwise binary expression.
Declaration localVariableDeclarator(string type)
ArithmeticOperator
Arithmetic binary operators
const int USING_NAMESPACE_DIRECTIVE
static readonly BitSet tokenSet_20_
Expression constantExpression()
void namespaceDeclaration(SourceFile sf)
Encapsulates assignment binary expressions.
List< Declaration > classMemberDeclarations()
Represents the error occurred while the source code is parsing.
const int ESCAPED_LITERAL
static readonly BitSet tokenSet_12_
static readonly BitSet tokenSet_7_
Encapsulates a ternary expression of our programming language.
antlr.RecognitionException RecognitionException
const int COMPILATION_UNIT
Encapsulates a If-Else statement of our programming language.
Statement throwStatement()
antlr.ParserSharedInputState ParserSharedInputState
List< Statement > statementExpressionList()
List< Statement > forInitializer()
Encapsulates a new array expression.
Encapsulates a definition of a concrete constructor.
List< string > classBase()
Expression basicPrimaryExpression()
const int DECIMAL_LITERAL
antlr.TokenBuffer TokenBuffer
Encapsulates a parameter declaration.
Encapsulates the source code.
const int PTR_ELEMENT_ACCESS_EXPR
const int PTR_INDIRECTION_EXPR
const int UNICODE_CLASS_Nd
CompoundExpression variableInitializerList()
List< Statement > localVariableDeclarators(string type)
Expression variableInitializer()
override void setFilename(string filename)
Encapsulates a Try-Catch-finally statement of our programming languages. As C# states catch blcok and...
Declaration variableDeclarators(string type, List< Modifier > mods)
const int UNICODE_CLASS_Mc
List< SwitchLabel > switchLabels()
Expression exclusiveOrExpression()
const int ATTRIBUTE_SECTIONS
const int DLG_CREATE_EXPR
const int OBJ_CREATE_EXPR
Encapsulates a string literal expression.
Statement whileStatement()
static readonly BitSet tokenSet_15_
Encapsulates a declaration of a concrete type.
List< Declaration > interfaceBody()
antlr.MismatchedTokenException MismatchedTokenException
const int LETTER_CHARACTER
Encapsulates a declaration.
Encapsulates a argument expression of our programming language.
const int UNICODE_CLASS_Lu
static readonly BitSet tokenSet_1_
Encapsulates a 'this' expression.
Statement iterationStatement()
Encapsulates a unary expression of our programming language.
const int UNICODE_ESCAPE_SEQUENCE
Modifier
Indicates differents modifiers to use in class (only public, internal or static), fields or methods...
static readonly BitSet tokenSet_14_
const int UNICODE_CLASS_Lo
UnaryOperator
Unary operators
static readonly BitSet tokenSet_0_
Expression equalityExpression()
const int UNICODE_CLASS_Ll
const int QUALIFIED_IDENTIFIER
Statement[] accessorDeclarations()
SwitchLabel switchLabel()
Expression primaryExpression()
Encapsulates a integer literal expression.
Encapsulates a set of field declarations.
const int LITERAL_assembly
antlr.TokenStreamIOException TokenStreamIOException
Encapsulates a declaration of a concrete field.
Encapsulates a constant definition.
Expression conditionalAndExpression()
Encapsulates the array expression to access the concrete position.
const int UNICODE_CLASS_Cf
Expression inclusiveOrExpression()
static readonly string[] tokenNames_
Statement[] interfaceAccessors()
IdentifierExpression qualifiedIdentifier()
const int INVOCATION_EXPR
const int LOCVAR_INIT_LIST
List< Modifier > modifiers()
antlr.TokenStreamException TokenStreamException
BitwiseOperator
Bitwise binary operators
Statement setAccessorDeclaration()
const int USING_ALIAS_DIRECTIVE
const int MEMBER_ACCESS_EXPR
Expression additiveExpression()
List< Declaration > classBody()
const int GLOBAL_ATTRIBUTE_SECTION
Represents the error occurred while the source code is lexing.
Encapsulates a Continue statement of our programming languages.
static readonly BitSet tokenSet_13_
const int UNICODE_CLASS_Lm
string Identifier
Gets the name name.
Expression multiplicativeExpression()
static readonly BitSet tokenSet_10_
const int FORMAL_PARAMETER_LIST
CompoundExpression arrayInitializer()
Encapsulates a Throw statement of our programming languages.
const int ATTRIB_ARGUMENT_EXPR
string predefinedTypeName()
Statement expressionStatement()
antlr.ANTLRException ANTLRException
void namespaceMemberDeclaration(SourceFile sf)
CSharpParser(TokenStream lexer, int k)
List< Parameter > fixedParameters()
TernaryOperator
Ternary operators
AssignmentOperator
Assignment binary operators
Declaration classDeclaration(List< Modifier > mods)
const int LITERAL_property
Encapsulates a Foreach statement of our programming languages.
Expression statementExpression()
SourceFile compilationUnit()
Encapsulates a new expression.
Encapsulates a property definition.
Encapsulates a definition of a concrete class.
const int GLOBAL_ATTRIBUTE_SECTIONS
const int ADDRESS_OF_EXPR
List< Statement > localVariableDeclaration()
Expression andExpression()
Declaration interfaceMemberDeclaration()
FieldDeclaration variableDeclarator(string type, List< Modifier > mods)
const int PARAMETER_ARRAY
List< FieldDeclaration > constantDeclarators(string type, List< Modifier > mods)
Encapsulates a Switch statement of our programming languages.
List< string > interfaceBase()
const int ATTRIBUTE_SECTION
static readonly BitSet tokenSet_17_
static readonly BitSet tokenSet_19_
static readonly BitSet tokenSet_4_
const int UNICODE_CLASS_Pc
const int CONNECTING_CHARACTER