diff options
| author | Adrien Hopkins <ahopk127@my.yorku.ca> | 2021-03-27 18:10:56 -0500 | 
|---|---|---|
| committer | Adrien Hopkins <ahopk127@my.yorku.ca> | 2021-03-27 18:10:56 -0500 | 
| commit | 782cf0c76e09abab1c2e11288d610330f383e732 (patch) | |
| tree | f8cd3fa0dc799349a2b4746f5d31da89190b66ff /src/org/unitConverter/unit/FunctionalUnit.java | |
| parent | fe4135a68cfed92ef336eec663e9c42c2c97dcbc (diff) | |
| parent | 0f9a56ac310a1276dbf3b42859a2374828223879 (diff) | |
Merge branch 'feature-gradle' into develop
Diffstat (limited to 'src/org/unitConverter/unit/FunctionalUnit.java')
| -rw-r--r-- | src/org/unitConverter/unit/FunctionalUnit.java | 109 | 
1 files changed, 0 insertions, 109 deletions
| diff --git a/src/org/unitConverter/unit/FunctionalUnit.java b/src/org/unitConverter/unit/FunctionalUnit.java deleted file mode 100644 index 586e0d7..0000000 --- a/src/org/unitConverter/unit/FunctionalUnit.java +++ /dev/null @@ -1,109 +0,0 @@ -/** - * Copyright (C) 2019 Adrien Hopkins - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program.  If not, see <https://www.gnu.org/licenses/>. - */ -package org.unitConverter.unit; - -import java.util.Objects; -import java.util.function.DoubleUnaryOperator; - -import org.unitConverter.math.ObjectProduct; - -/** - * A unit that uses functional objects to convert to and from its base. - *  - * @author Adrien Hopkins - * @since 2019-05-22 - */ -final class FunctionalUnit extends Unit { -	/** -	 * A function that accepts a value expressed in the unit's base and returns that value expressed in this unit. -	 *  -	 * @since 2019-05-22 -	 */ -	private final DoubleUnaryOperator converterFrom; - -	/** -	 * A function that accepts a value expressed in the unit and returns that value expressed in the unit's base. -	 *  -	 * @since 2019-05-22 -	 */ -	private final DoubleUnaryOperator converterTo; - -	/** -	 * Creates the {@code FunctionalUnit}. -	 *  -	 * @param base -	 *            unit's base -	 * @param converterFrom -	 *            function that accepts a value expressed in the unit's base and returns that value expressed in this -	 *            unit. -	 * @param converterTo -	 *            function that accepts a value expressed in the unit and returns that value expressed in the unit's -	 *            base. -	 * @throws NullPointerException -	 *             if any argument is null -	 * @since 2019-05-22 -	 */ -	public FunctionalUnit(final ObjectProduct<BaseUnit> base, final DoubleUnaryOperator converterFrom, -			final DoubleUnaryOperator converterTo) { -		super(base, NameSymbol.EMPTY); -		this.converterFrom = Objects.requireNonNull(converterFrom, "converterFrom must not be null."); -		this.converterTo = Objects.requireNonNull(converterTo, "converterTo must not be null."); -	} - -	/** -	 * Creates the {@code FunctionalUnit}. -	 *  -	 * @param base -	 *            unit's base -	 * @param converterFrom -	 *            function that accepts a value expressed in the unit's base and returns that value expressed in this -	 *            unit. -	 * @param converterTo -	 *            function that accepts a value expressed in the unit and returns that value expressed in the unit's -	 *            base. -	 * @throws NullPointerException -	 *             if any argument is null -	 * @since 2019-05-22 -	 */ -	public FunctionalUnit(final ObjectProduct<BaseUnit> base, final DoubleUnaryOperator converterFrom, -			final DoubleUnaryOperator converterTo, final NameSymbol ns) { -		super(base, ns); -		this.converterFrom = Objects.requireNonNull(converterFrom, "converterFrom must not be null."); -		this.converterTo = Objects.requireNonNull(converterTo, "converterTo must not be null."); -	} - -	/** -	 * {@inheritDoc} -	 *  -	 * Uses {@code converterFrom} to convert. -	 */ -	@Override -	public double convertFromBase(final double value) { -		return this.converterFrom.applyAsDouble(value); -	} - -	/** -	 * {@inheritDoc} -	 *  -	 * Uses {@code converterTo} to convert. -	 */ -	@Override -	public double convertToBase(final double value) { -		return this.converterTo.applyAsDouble(value); -	} - -} | 
