summaryrefslogtreecommitdiff
path: root/dice-lang/src/main/java/bjc/dicelang/DiceExpressionBuilder.java
diff options
context:
space:
mode:
Diffstat (limited to 'dice-lang/src/main/java/bjc/dicelang/DiceExpressionBuilder.java')
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/DiceExpressionBuilder.java150
1 files changed, 0 insertions, 150 deletions
diff --git a/dice-lang/src/main/java/bjc/dicelang/DiceExpressionBuilder.java b/dice-lang/src/main/java/bjc/dicelang/DiceExpressionBuilder.java
deleted file mode 100644
index af856a6..0000000
--- a/dice-lang/src/main/java/bjc/dicelang/DiceExpressionBuilder.java
+++ /dev/null
@@ -1,150 +0,0 @@
-package bjc.dicelang;
-
-import static bjc.dicelang.DiceExpressionType.ADD;
-import static bjc.dicelang.DiceExpressionType.DIVIDE;
-import static bjc.dicelang.DiceExpressionType.MULTIPLY;
-import static bjc.dicelang.DiceExpressionType.SUBTRACT;
-
-/**
- * Build a dice expression piece by piece
- *
- * @author ben
- *
- */
-public class DiceExpressionBuilder {
- /**
- * The dice expression we are building
- */
- private IDiceExpression baking;
-
- /**
- * Build a dice expression from a seed dice expression
- *
- * @param seed
- * The dice expression to use as a seed
- */
- public DiceExpressionBuilder(IDiceExpression seed) {
- baking = seed;
- }
-
- /**
- * Build a dice expression from a seed dice
- *
- * @param nSides
- * The number of sides in the dice
- * @param nDice
- * The number of dice in the group
- */
- public DiceExpressionBuilder(int nSides, int nDice) {
- baking = new ComplexDice(nSides, nDice);
- }
-
- /**
- * Add a term to this dice expression
- *
- * @param exp
- * The expression to use on the left
- * @return A new expression adding the two dice
- */
- public DiceExpressionBuilder add(IDiceExpression exp) {
- baking = new OperatorDiceExpression(baking, exp, ADD);
- return this;
- }
-
- /**
- * Add a scalar to this dice
- *
- * @param num
- * The scalar to add to the dice
- * @return A dice expression adding a scalar to this
- */
- public DiceExpressionBuilder add(int num) {
- baking = new OperatorDiceExpression(baking, new ScalarDie(num),
- ADD);
- return this;
- }
-
- /**
- * Bake the expression being built to completion
- *
- * @return A usable dice expression
- */
- public IDiceExpression bake() {
- return baking;
- }
-
- /**
- * Divide a term from dice expression
- *
- * @param exp
- * The expression to use on the left
- * @return A new expression dividing the two dice
- */
- public DiceExpressionBuilder divide(IDiceExpression exp) {
- baking = new OperatorDiceExpression(baking, exp, DIVIDE);
- return this;
- }
-
- /**
- * Divide a scalar from this dice
- *
- * @param num
- * The scalar to add to the dice
- * @return A dice expression dividing a scalar from this
- */
- public DiceExpressionBuilder divide(int num) {
- baking = new OperatorDiceExpression(baking, new ScalarDie(num),
- DIVIDE);
- return this;
- }
-
- /**
- * Multiply a term by this dice expression
- *
- * @param exp
- * The expression to use on the left
- * @return A new expression multiplying the two dice
- */
- public DiceExpressionBuilder multiply(IDiceExpression exp) {
- baking = new OperatorDiceExpression(baking, exp, MULTIPLY);
- return this;
- }
-
- /**
- * Multiply a scalar by this dice
- *
- * @param num
- * The scalar to multiply to the dice
- * @return A dice expression multiplying a scalar to this
- */
- public DiceExpressionBuilder multiply(int num) {
- baking = new OperatorDiceExpression(baking, new ScalarDie(num),
- MULTIPLY);
- return this;
- }
-
- /**
- * Add a term to this dice expression
- *
- * @param exp
- * The expression to use on the left
- * @return A new expression adding the two dice
- */
- public DiceExpressionBuilder subtract(IDiceExpression exp) {
- baking = new OperatorDiceExpression(baking, exp, SUBTRACT);
- return this;
- }
-
- /**
- * Add a scalar to this dice
- *
- * @param num
- * The scalar to add to the dice
- * @return A dice expression adding a scalar to this
- */
- public DiceExpressionBuilder subtract(int num) {
- baking = new OperatorDiceExpression(baking, new ScalarDie(num),
- SUBTRACT);
- return this;
- }
-}