From 79ee129fc0d36ad10bceb942262f2842419c030c Mon Sep 17 00:00:00 2001 From: bjculkin Date: Mon, 27 Feb 2017 10:08:50 -0500 Subject: Pacakge reorganization --- .../src/bjc/dicelang/OperatorDiceExpression.java | 86 ---------------------- 1 file changed, 86 deletions(-) delete mode 100644 dice-lang/src/bjc/dicelang/OperatorDiceExpression.java (limited to 'dice-lang/src/bjc/dicelang/OperatorDiceExpression.java') diff --git a/dice-lang/src/bjc/dicelang/OperatorDiceExpression.java b/dice-lang/src/bjc/dicelang/OperatorDiceExpression.java deleted file mode 100644 index 63bf548..0000000 --- a/dice-lang/src/bjc/dicelang/OperatorDiceExpression.java +++ /dev/null @@ -1,86 +0,0 @@ -package bjc.dicelang; - -/** - * Implements a class for combining two dice with an operator - * - * @author ben - * - */ -public class OperatorDiceExpression implements IDiceExpression { - /* - * The operator to use for combining the dice - */ - private DiceExpressionType type; - - /* - * The dice on the left side of the expression - */ - private IDiceExpression left; - - /* - * The dice on the right side of the expression - */ - private IDiceExpression right; - - /** - * Create a new compound expression using the specified parameters - * - * @param rght - * The die on the right side of the expression - * @param lft - * The die on the left side of the expression - * @param type - * The operator to use for combining the dices - */ - public OperatorDiceExpression(IDiceExpression rght, - IDiceExpression lft, DiceExpressionType type) { - this.right = rght; - this.left = lft; - this.type = type; - } - - @Override - public int roll() { - /* - * Handle each operator - */ - switch (type) { - case ADD: - return right.roll() + left.roll(); - case SUBTRACT: - return right.roll() - left.roll(); - case MULTIPLY: - return right.roll() * left.roll(); - case DIVIDE: - /* - * Round to keep results as integers. We don't really have - * any need for floating-point dice, and continuous - * probability is a pain - */ - try { - return right.roll() / left.roll(); - } catch (ArithmeticException aex) { - UnsupportedOperationException usex = new UnsupportedOperationException( - "Attempted to divide by zero." - + " Problematic expression is " - + left); - - usex.initCause(aex); - - throw usex; - } - default: - throw new IllegalArgumentException( - "Got passed a invalid ScalarExpressionType (" - + type + "). WAT"); - - } - } - - @Override - public String toString() { - return "dice-exp[type=" + type + ", l=" - + left.toString() + ", r=" - + right.toString() + "]"; - } -} -- cgit v1.2.3