mirror of
https://github.com/DanilaFe/abacus
synced 2026-09-25 12:52:33 +00:00
Move number string parsing from the parser into the reducer.
This commit is contained in:
@@ -143,7 +143,7 @@ public class ShuntingYardParser implements Parser<Match<TokenType>>, PluginListe
|
||||
else return new UnaryNode(operator, applyTo);
|
||||
}
|
||||
} else if (matchType == TokenType.NUM) {
|
||||
return new NumberNode(abacus.numberFromString(match.getContent()));
|
||||
return new NumberNode(match.getContent());
|
||||
} else if (matchType == TokenType.VARIABLE) {
|
||||
return new VariableNode(match.getContent());
|
||||
} else if (matchType == TokenType.FUNCTION) {
|
||||
|
||||
@@ -27,7 +27,7 @@ public class NumberReducer implements Reducer<NumberInterface> {
|
||||
@Override
|
||||
public NumberInterface reduceNode(TreeNode node, Object... children) {
|
||||
if (node instanceof NumberNode) {
|
||||
return ((NumberNode) node).getNumber();
|
||||
return abacus.numberFromString(((NumberNode) node).getNumber());
|
||||
} else if(node instanceof VariableNode) {
|
||||
return abacus.numberFromString("0");
|
||||
} else if (node instanceof BinaryNode) {
|
||||
|
||||
Reference in New Issue
Block a user