public void pragma_directive(Module container)
{
IToken token = null;
IToken token2 = null;
try
{
IToken token3;
switch (this.LA(1))
{
case 0x39:
token = this.LT(1);
this.match(0x39);
if (base.inputState.guessing == 0)
{
token3 = token;
}
break;
case 0x3a:
token2 = this.LT(1);
this.match(0x3a);
if (base.inputState.guessing == 0)
{
token3 = token2;
}
break;
default:
throw new NoViableAltException(this.LT(1), this.getFilename());
}
if (base.inputState.guessing == 0)
{
string pragma = token3.getText();
if (Pragmas.IsValid(pragma))
{
if (token != null)
{
Pragmas.TryToEnableOn(container, pragma);
}
else
{
Pragmas.DisableOn(container, pragma);
}
}
else
{
this.ReportError(UnityScriptCompilerErrors.UnknownPragma(ToLexicalInfo(token3), pragma));
}
}
}
catch (RecognitionException exception)
{
if (base.inputState.guessing != 0)
{
throw;
}
this.reportError(exception);
this.recover(exception, tokenSet_5_);
}
}