summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/sevenUnits/unit/UnitDatabase.java8
-rw-r--r--src/main/java/sevenUnits/unit/UnitPrefix.java16
2 files changed, 21 insertions, 3 deletions
diff --git a/src/main/java/sevenUnits/unit/UnitDatabase.java b/src/main/java/sevenUnits/unit/UnitDatabase.java
index 12b78a7..ea0aa7f 100644
--- a/src/main/java/sevenUnits/unit/UnitDatabase.java
+++ b/src/main/java/sevenUnits/unit/UnitDatabase.java
@@ -1256,11 +1256,13 @@ public final class UnitDatabase {
* @since v0.2.0
*/
private final ExpressionParser<UnitPrefix> prefixExpressionParser = new ExpressionParser.Builder<>(
- this::getPrefix).addBinaryOperator("*", (o1, o2) -> o1.times(o2), 0)
+ this::getPrefix).addBinaryOperator("+", (o1, o2) -> o1.plus(o2), 0)
+ .addBinaryOperator("-", (o1, o2) -> o1.minus(o2), 0)
+ .addBinaryOperator("*", (o1, o2) -> o1.times(o2), 1)
.addSpaceFunction("*")
- .addBinaryOperator("/", (o1, o2) -> o1.dividedBy(o2), 0)
+ .addBinaryOperator("/", (o1, o2) -> o1.dividedBy(o2), 1)
.addBinaryOperator("^",
- (o1, o2) -> o1.toExponent(o2.getMultiplier()), 1)
+ (o1, o2) -> o1.toExponent(o2.getMultiplier()), 2)
.build();
/**
diff --git a/src/main/java/sevenUnits/unit/UnitPrefix.java b/src/main/java/sevenUnits/unit/UnitPrefix.java
index e1f7788..824f60b 100644
--- a/src/main/java/sevenUnits/unit/UnitPrefix.java
+++ b/src/main/java/sevenUnits/unit/UnitPrefix.java
@@ -158,6 +158,22 @@ public final class UnitPrefix implements Nameable {
}
/**
+ * Adds {@code other} to this prefix and returns the result.
+ * @since 2024-03-03
+ */
+ public UnitPrefix plus(final UnitPrefix other) {
+ return valueOf(this.getMultiplier() + other.getMultiplier());
+ }
+
+ /**
+ * Subtracts {@code other} from this prefix and returns the result.
+ * @since 2024-03-03
+ */
+ public UnitPrefix minus(final UnitPrefix other) {
+ return valueOf(this.getMultiplier() - other.getMultiplier());
+ }
+
+ /**
* Multiplies this prefix by {@code other}.
*
* @param other prefix to multiply by