protected Import import_directive_from_()
{
Import returnValue;
IToken from = null;
Expression ns = null;
ExpressionCollection names = null;
returnValue = null;
try { // for error handling
from = LT(1);
match(FROM);
ns=identifier_expression();
match(IMPORT);
if (0==inputState.guessing)
{
var mie = new MethodInvocationExpression(ns);
names = mie.Arguments;
returnValue = new Import(ToLexicalInfo(from), mie);
}
{
if ((LA(1)==MULTIPLY) && (LA(2)==EOL||LA(2)==EOS))
{
match(MULTIPLY);
if (0==inputState.guessing)
{
returnValue.Expression = ns;
}
}
else if ((tokenSet_24_.member(LA(1))) && (tokenSet_25_.member(LA(2)))) {
expression_list(names);
}
else
{
throw new NoViableAltException(LT(1), getFilename());
}
}
}
catch (RecognitionException ex)
{
if (0 == inputState.guessing)
{
reportError(ex, "import_directive_from_");
recover(ex,tokenSet_19_);
}
else
{
throw ex;
}
}
return returnValue;
}