private AST multiplicationExpression()
{
#if WRITE_DEBUG_INFO
Console.WriteLine("multiplication expression");
#endif
AST lhs = dotNotationExpression();
if ( lookAhead(1).getTokenString() == "*" ||
lookAhead(1).getTokenString() == "/" )
{
Token operatorToken = match(Token.TokenType.OPERATOR);
AST rhs = multiplicationExpression();
checkLeftHandSide(lhs, operatorToken);
checkRightHandSide(rhs, operatorToken);
AST multiplicationTree = new AST(operatorToken);
multiplicationTree.addChild(lhs);
multiplicationTree.addChild(rhs);
return multiplicationTree;
} else {
return lhs;
}
}