summaryrefslogtreecommitdiff
path: root/dice-lang/src/main/java/bjc/dicelang/Die.java
diff options
context:
space:
mode:
Diffstat (limited to 'dice-lang/src/main/java/bjc/dicelang/Die.java')
-rw-r--r--dice-lang/src/main/java/bjc/dicelang/Die.java25
1 files changed, 15 insertions, 10 deletions
diff --git a/dice-lang/src/main/java/bjc/dicelang/Die.java b/dice-lang/src/main/java/bjc/dicelang/Die.java
index 5ad5d79..192daaa 100644
--- a/dice-lang/src/main/java/bjc/dicelang/Die.java
+++ b/dice-lang/src/main/java/bjc/dicelang/Die.java
@@ -34,6 +34,21 @@ public class Die implements IDiceExpression {
this.nSides = nSides;
}
+ @Override
+ public boolean canOptimize() {
+ return nSides == 1;
+ }
+
+ @Override
+ public int optimize() {
+ if (nSides != 1) {
+ throw new UnsupportedOperationException(
+ "Can't optimize " + nSides + "-sided dice");
+ }
+
+ return 1;
+ }
+
/*
* (non-Javadoc)
*
@@ -53,14 +68,4 @@ public class Die implements IDiceExpression {
public String toString() {
return "d" + nSides;
}
-
- @Override
- public int optimize() {
- return 1;
- }
-
- @Override
- public boolean canOptimize() {
- return nSides == 1;
- }
}