diff options
author | Adrien Hopkins <ahopk127@my.yorku.ca> | 2021-08-26 15:09:23 -0400 |
---|---|---|
committer | Adrien Hopkins <ahopk127@my.yorku.ca> | 2021-08-26 15:09:23 -0400 |
commit | 816f744169d1ecdb689aba27cb396ab452fdc3fe (patch) | |
tree | 1eed1edbbf6f3131dfb6a26c1480d023e44f6c51 /src/main/java/sevenUnits/unit/Unit.java | |
parent | 236b497f516694929b9fe409508a7cce21ca9e6e (diff) | |
parent | 75a5a1a2a40b0eb4361d6fc046eb8918ef6f5292 (diff) |
Merge branch 'new-documentation-0.3.1' into develop
Diffstat (limited to 'src/main/java/sevenUnits/unit/Unit.java')
-rw-r--r-- | src/main/java/sevenUnits/unit/Unit.java | 38 |
1 files changed, 17 insertions, 21 deletions
diff --git a/src/main/java/sevenUnits/unit/Unit.java b/src/main/java/sevenUnits/unit/Unit.java index 1e875af..005b6f7 100644 --- a/src/main/java/sevenUnits/unit/Unit.java +++ b/src/main/java/sevenUnits/unit/Unit.java @@ -17,14 +17,12 @@ package sevenUnits.unit; import java.util.HashMap; -import java.util.HashSet; import java.util.Map; import java.util.Objects; -import java.util.Set; import java.util.function.DoubleUnaryOperator; -import sevenUnits.math.DecimalComparison; -import sevenUnits.math.ObjectProduct; +import sevenUnits.utils.DecimalComparison; +import sevenUnits.utils.ObjectProduct; /** * A unit that is composed of base units. @@ -110,6 +108,19 @@ public abstract class Unit implements Nameable { private transient ObjectProduct<BaseDimension> dimension = null; /** + * A constructor that constructs {@code BaseUnit} instances. + * + * @since 2019-10-16 + */ + Unit(final NameSymbol nameSymbol) { + if (this instanceof BaseUnit) { + this.unitBase = ObjectProduct.oneOf((BaseUnit) this); + } else + throw new AssertionError(); + this.nameSymbol = nameSymbol; + } + + /** * Creates the {@code Unit}. * * @param unitBase base of unit @@ -117,28 +128,13 @@ public abstract class Unit implements Nameable { * @since 2019-10-16 * @throws NullPointerException if unitBase or ns is null */ - Unit(ObjectProduct<BaseUnit> unitBase, NameSymbol ns) { + protected Unit(ObjectProduct<BaseUnit> unitBase, NameSymbol ns) { this.unitBase = Objects.requireNonNull(unitBase, "unitBase may not be null"); this.nameSymbol = Objects.requireNonNull(ns, "ns may not be null"); } /** - * A constructor that constructs {@code BaseUnit} instances. - * - * @since 2019-10-16 - */ - Unit(final String primaryName, final String symbol, - final Set<String> otherNames) { - if (this instanceof BaseUnit) { - this.unitBase = ObjectProduct.oneOf((BaseUnit) this); - } else - throw new AssertionError(); - this.nameSymbol = NameSymbol.of(primaryName, symbol, - new HashSet<>(otherNames)); - } - - /** * @return this unit as a {@link Unitlike} * @since 2020-09-07 */ @@ -342,7 +338,7 @@ public abstract class Unit implements Nameable { // second condition - check that for (final BaseUnit b : linear.getBase().getBaseSet()) { - if (!SI.BaseUnits.BASE_UNITS.contains(b)) + if (!Metric.BaseUnits.BASE_UNITS.contains(b)) return false; } |