protected void argument(
INodeWithArguments node
)
{
Expression value = null;
ExpressionPair pair = null;
try { // for error handling
bool synPredMatched658 = false;
if (((tokenSet_5_.member(LA(1))) && (tokenSet_125_.member(LA(2)))))
{
int _m658 = mark();
synPredMatched658 = true;
inputState.guessing++;
try {
{
expression_pair();
}
}
catch (RecognitionException)
{
synPredMatched658 = false;
}
rewind(_m658);
inputState.guessing--;
}
if ( synPredMatched658 )
{
{
pair=expression_pair();
if (0==inputState.guessing)
{
if (pair != null) node.NamedArguments.Add(pair);
}
}
}
else if ((tokenSet_5_.member(LA(1))) && (tokenSet_126_.member(LA(2)))) {
{
value=expression();
if (0==inputState.guessing)
{
if (value != null) node.Arguments.Add(value);
}
}
}
else
{
throw new NoViableAltException(LT(1), getFilename());
}
}
catch (RecognitionException ex)
{
if (0 == inputState.guessing)
{
reportError(ex, "argument");
recover(ex,tokenSet_85_);
}
else
{
throw ex;
}
}
}