protected void parse_module(
Module module
)
{
try { // for error handling
{
if ((LA(1)==EOL||LA(1)==EOS) && (tokenSet_1_.member(LA(2))))
{
eos();
}
else if ((tokenSet_1_.member(LA(1))) && (tokenSet_2_.member(LA(2)))) {
}
else
{
throw new NoViableAltException(LT(1), getFilename());
}
}
docstring(module);
{
if ((LA(1)==EOL||LA(1)==EOS) && (tokenSet_1_.member(LA(2))))
{
eos();
}
else if ((tokenSet_1_.member(LA(1))) && (tokenSet_3_.member(LA(2)))) {
}
else
{
throw new NoViableAltException(LT(1), getFilename());
}
}
{
switch ( LA(1) )
{
case NAMESPACE:
{
namespace_directive(module);
break;
}
case EOF:
case DEDENT:
case ESEPARATOR:
case EOL:
case ASSEMBLY_ATTRIBUTE_BEGIN:
case MODULE_ATTRIBUTE_BEGIN:
case ABSTRACT:
case BREAK:
case CONTINUE:
case CALLABLE:
case CAST:
case CHAR:
case CLASS:
case DEF:
case ENUM:
case FINAL:
case FROM:
case FOR:
case FALSE:
case GOTO:
case IMPORT:
case INTERFACE:
case INTERNAL:
case IF:
case NEW:
case NULL:
case OVERRIDE:
case PARTIAL:
case PUBLIC:
case PROTECTED:
case PRIVATE:
case RAISE:
case RETURN:
case SELF:
case SUPER:
case STATIC:
case STRUCT:
case THEN:
case TRY:
case TRANSIENT:
case TRUE:
case TYPEOF:
case UNLESS:
case VIRTUAL:
case WHILE:
case YIELD:
case TRIPLE_QUOTED_STRING:
case EOS:
case LPAREN:
case DOUBLE_QUOTED_STRING:
case SINGLE_QUOTED_STRING:
case ID:
case MULTIPLY:
case LBRACK:
case SPLICE_BEGIN:
case DOT:
case COLON:
case LBRACE:
case QQ_BEGIN:
case SUBTRACT:
case LONG:
case INCREMENT:
case DECREMENT:
case ONES_COMPLEMENT:
case INT:
case BACKTICK_QUOTED_STRING:
case RE_LITERAL:
case DOUBLE:
case FLOAT:
case TIMESPAN:
{
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
{ // ( ... )*
for (;;)
{
if ((LA(1)==FROM||LA(1)==IMPORT))
{
import_directive(module);
}
else
{
goto _loop7_breakloop;
}
}
_loop7_breakloop: ;
} // ( ... )*
{ // ( ... )*
for (;;)
{
bool synPredMatched11 = false;
if ((((LA(1)==THEN||LA(1)==ID) && (tokenSet_4_.member(LA(2))))&&(IsValidMacroArgument(LA(2)))))
{
int _m11 = mark();
synPredMatched11 = true;
inputState.guessing++;
try {
{
macro_name();
{
if ((tokenSet_5_.member(LA(1))))
{
expression();
}
else {
}
}
}
}
catch (RecognitionException)
{
synPredMatched11 = false;
}
rewind(_m11);
inputState.guessing--;
}
if ( synPredMatched11 )
{
module_macro(module);
}
else if ((tokenSet_6_.member(LA(1))) && (tokenSet_7_.member(LA(2)))) {
type_member(module.Members);
}
else
{
goto _loop12_breakloop;
}
}
_loop12_breakloop: ;
} // ( ... )*
globals(module);
{ // ( ... )*
for (;;)
{
if ((LA(1)==ASSEMBLY_ATTRIBUTE_BEGIN||LA(1)==MODULE_ATTRIBUTE_BEGIN))
{
{
switch ( LA(1) )
{
case ASSEMBLY_ATTRIBUTE_BEGIN:
{
assembly_attribute(module);
break;
}
case MODULE_ATTRIBUTE_BEGIN:
{
module_attribute(module);
break;
}
default:
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
eos();
}
else
{
goto _loop15_breakloop;
}
}
_loop15_breakloop: ;
} // ( ... )*
}
catch (RecognitionException ex)
{
if (0 == inputState.guessing)
{
reportError(ex, "parse_module");
recover(ex,tokenSet_8_);
}
else
{
throw ex;
}
}
}