public void module_member(Module module)
{
Block b = module.get_Globals();
try
{
bool flag = false;
if ((tokenSet_7_.member(this.LA(1)) && tokenSet_8_.member(this.LA(2))) && this.GlobalVariablesBecomeFields())
{
int num = this.mark();
flag = true;
base.inputState.guessing++;
try
{
this.module_member_modifiers();
this.match(0x2d);
}
catch (RecognitionException)
{
flag = false;
}
this.rewind(num);
base.inputState.guessing--;
}
if (flag)
{
this.module_field(module);
}
else if ((this.LA(1) == 0x2d) && tokenSet_9_.member(this.LA(2)))
{
this.declaration_statement(b);
this.eos();
}
else
{
TypeMember member;
if (!tokenSet_10_.member(this.LA(1)) || !tokenSet_11_.member(this.LA(2)))
{
throw new NoViableAltException(this.LT(1), this.getFilename());
}
TypeMemberModifiers modifiers = this.module_member_modifiers();
switch (this.LA(1))
{
case 8:
case 0x23:
member = this.class_declaration(module);
break;
case 0x19:
member = this.interface_declaration(module);
break;
case 13:
member = this.enum_declaration(module);
break;
case 0x13:
member = this.function_member(module);
break;
default:
throw new NoViableAltException(this.LT(1), this.getFilename());
}
if ((base.inputState.guessing == 0) && (member != null))
{
member.set_Modifiers(member.get_Modifiers() | modifiers);
}
}
}
catch (RecognitionException exception2)
{
if (base.inputState.guessing != 0)
{
throw;
}
this.reportError(exception2);
this.recover(exception2, tokenSet_12_);
}
}