Сокращённая операция сложения/вычитания

This commit is contained in:
Victor 2015-04-16 20:29:28 +03:00
parent 8de37bfa4c
commit 3f5f8bca46

View File

@ -226,6 +226,20 @@ public final class Parser {
Variables.setVariable(token.getText(), expression().eval());
return false;
}
if (lookMatch(1, TokenType.EQ) && match(TokenType.PLUS)) {
// variable += expression
consume(TokenType.EQ);
final double varValue = Variables.getVariable(token.getText());
Variables.setVariable(token.getText(), varValue + expression().eval());
return false;
}
if (lookMatch(1, TokenType.EQ) && match(TokenType.MINUS)) {
// variable -= expression
consume(TokenType.EQ);
final double varValue = Variables.getVariable(token.getText());
Variables.setVariable(token.getText(), varValue - expression().eval());
return false;
}
}
return false;