package net.sourceforge.mayfly.evaluation.expression; import net.sourceforge.mayfly.datastore.Cell; import net.sourceforge.mayfly.datastore.LongCell; import net.sourceforge.mayfly.evaluation.Expression; import net.sourceforge.mayfly.evaluation.ResultRow; import net.sourceforge.mayfly.evaluation.select.Evaluator; public class Divide extends BinaryOperator { public Divide(Expression left, Expression right) { super(left, right); } @Override protected Cell combine(Cell left, Cell right) { return new LongCell(left.asLong() / right.asLong()); } @Override public Expression resolve(ResultRow row, Evaluator evaluator) { return new Divide(left.resolve(row, evaluator), right.resolve(row, evaluator)); } }