From 86b2efcef08ae73f9310e77560064475383890db Mon Sep 17 00:00:00 2001 From: Andreas Gullberg Larsen Date: Mon, 15 Oct 2018 16:14:44 +0200 Subject: [PATCH] Stricter parsing (#516) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add abbreviations ″ and ′ to inch and foot Found in the wiki * Rename to LengthTests.FeetInches.cs * Length: Add TryParseFeetInches() and ParseFeetInches() Since parsing is generally made more strict, this method adds back the special parsing to handle strings like: 1' 2" * QuantityParser: Make parsing more strict - Only parse the format "{value} {unit abbreviation}" where the spacing is optional - No longer support parsing multiple quantities like "1 ft 2 in", use Length.ParseFeetInches() for that - Move Trim() to inner-most level * Regen * Trim input in TryParseFeetInches() --- .../Quantities/Acceleration.Common.g.cs | 10 +- .../Quantities/AmountOfSubstance.Common.g.cs | 10 +- .../Quantities/AmplitudeRatio.Common.g.cs | 10 +- .../Quantities/Angle.Common.g.cs | 10 +- .../Quantities/ApparentEnergy.Common.g.cs | 10 +- .../Quantities/ApparentPower.Common.g.cs | 10 +- .../GeneratedCode/Quantities/Area.Common.g.cs | 10 +- .../Quantities/AreaDensity.Common.g.cs | 10 +- .../AreaMomentOfInertia.Common.g.cs | 10 +- .../Quantities/BitRate.Common.g.cs | 10 +- .../BrakeSpecificFuelConsumption.Common.g.cs | 10 +- .../Quantities/Capacitance.Common.g.cs | 10 +- .../Quantities/Density.Common.g.cs | 10 +- .../Quantities/Duration.Common.g.cs | 10 +- .../Quantities/DynamicViscosity.Common.g.cs | 10 +- .../Quantities/ElectricAdmittance.Common.g.cs | 10 +- .../Quantities/ElectricCharge.Common.g.cs | 10 +- .../ElectricChargeDensity.Common.g.cs | 10 +- .../ElectricConductance.Common.g.cs | 10 +- .../ElectricConductivity.Common.g.cs | 10 +- .../Quantities/ElectricCurrent.Common.g.cs | 10 +- .../ElectricCurrentDensity.Common.g.cs | 10 +- .../ElectricCurrentGradient.Common.g.cs | 10 +- .../Quantities/ElectricField.Common.g.cs | 10 +- .../Quantities/ElectricInductance.Common.g.cs | 10 +- .../Quantities/ElectricPotential.Common.g.cs | 10 +- .../ElectricPotentialAc.Common.g.cs | 10 +- .../ElectricPotentialDc.Common.g.cs | 10 +- .../Quantities/ElectricResistance.Common.g.cs | 10 +- .../ElectricResistivity.Common.g.cs | 10 +- .../Quantities/Energy.Common.g.cs | 10 +- .../Quantities/Entropy.Common.g.cs | 10 +- .../Quantities/Force.Common.g.cs | 10 +- .../Quantities/ForceChangeRate.Common.g.cs | 10 +- .../Quantities/ForcePerLength.Common.g.cs | 10 +- .../Quantities/Frequency.Common.g.cs | 10 +- .../Quantities/HeatFlux.Common.g.cs | 10 +- .../HeatTransferCoefficient.Common.g.cs | 10 +- .../Quantities/Illuminance.Common.g.cs | 10 +- .../Quantities/Information.Common.g.cs | 10 +- .../Quantities/Irradiance.Common.g.cs | 10 +- .../Quantities/Irradiation.Common.g.cs | 10 +- .../Quantities/KinematicViscosity.Common.g.cs | 10 +- .../Quantities/LapseRate.Common.g.cs | 10 +- .../Quantities/Length.Common.g.cs | 10 +- .../Quantities/Level.Common.g.cs | 10 +- .../Quantities/LinearDensity.Common.g.cs | 10 +- .../Quantities/LuminousFlux.Common.g.cs | 10 +- .../Quantities/LuminousIntensity.Common.g.cs | 10 +- .../Quantities/MagneticField.Common.g.cs | 10 +- .../Quantities/MagneticFlux.Common.g.cs | 10 +- .../Quantities/Magnetization.Common.g.cs | 10 +- .../GeneratedCode/Quantities/Mass.Common.g.cs | 10 +- .../Quantities/MassFlow.Common.g.cs | 10 +- .../Quantities/MassFlux.Common.g.cs | 10 +- .../MassMomentOfInertia.Common.g.cs | 10 +- .../Quantities/MolarEnergy.Common.g.cs | 10 +- .../Quantities/MolarEntropy.Common.g.cs | 10 +- .../Quantities/MolarMass.Common.g.cs | 10 +- .../Quantities/Molarity.Common.g.cs | 10 +- .../Quantities/Permeability.Common.g.cs | 10 +- .../Quantities/Permittivity.Common.g.cs | 10 +- .../Quantities/Power.Common.g.cs | 10 +- .../Quantities/PowerDensity.Common.g.cs | 10 +- .../Quantities/PowerRatio.Common.g.cs | 10 +- .../Quantities/Pressure.Common.g.cs | 10 +- .../Quantities/PressureChangeRate.Common.g.cs | 10 +- .../Quantities/Ratio.Common.g.cs | 10 +- .../Quantities/ReactiveEnergy.Common.g.cs | 10 +- .../Quantities/ReactivePower.Common.g.cs | 10 +- .../RotationalAcceleration.Common.g.cs | 10 +- .../Quantities/RotationalSpeed.Common.g.cs | 10 +- .../RotationalStiffness.Common.g.cs | 10 +- .../RotationalStiffnessPerLength.Common.g.cs | 10 +- .../Quantities/SolidAngle.Common.g.cs | 10 +- .../Quantities/SpecificEnergy.Common.g.cs | 10 +- .../Quantities/SpecificEntropy.Common.g.cs | 10 +- .../Quantities/SpecificVolume.Common.g.cs | 10 +- .../Quantities/SpecificWeight.Common.g.cs | 10 +- .../Quantities/Speed.Common.g.cs | 10 +- .../Quantities/Temperature.Common.g.cs | 10 +- .../TemperatureChangeRate.Common.g.cs | 10 +- .../Quantities/TemperatureDelta.Common.g.cs | 10 +- .../ThermalConductivity.Common.g.cs | 10 +- .../Quantities/ThermalResistance.Common.g.cs | 10 +- .../Quantities/Torque.Common.g.cs | 10 +- .../Quantities/VitaminA.Common.g.cs | 10 +- .../Quantities/Volume.Common.g.cs | 10 +- .../Quantities/VolumeFlow.Common.g.cs | 10 +- Common/UnitDefinitions/Length.json | 6 +- ...chesTests.cs => LengthTests.FeetInches.cs} | 49 +++- UnitsNet.Tests/CustomCode/ParseTests.cs | 25 +- UnitsNet.Tests/UnitParserTests.cs | 10 +- .../CustomCode/Quantities/Length.extra.cs | 68 ++++- UnitsNet/CustomCode/QuantityParser.cs | 237 ++++++++---------- UnitsNet/CustomCode/UnitAbbreviationsCache.cs | 34 +-- UnitsNet/CustomCode/UnitParser.cs | 4 +- .../CustomCode/UnitValueAbbreviationLookup.cs | 2 +- .../Quantities/Level.NetFramework.g.cs | 73 +----- .../GeneratedCode/UnitAbbreviationsCache.g.cs | 4 +- ...clude-GenerateQuantitySourceCodeCommon.ps1 | 10 +- 101 files changed, 612 insertions(+), 800 deletions(-) rename UnitsNet.Tests/CustomCode/{FeetInchesTests.cs => LengthTests.FeetInches.cs} (54%) diff --git a/Common/GeneratedCode/Quantities/Acceleration.Common.g.cs b/Common/GeneratedCode/Quantities/Acceleration.Common.g.cs index d2a979a292..6d0a2a93e2 100644 --- a/Common/GeneratedCode/Quantities/Acceleration.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Acceleration.Common.g.cs @@ -679,8 +679,7 @@ private static Acceleration ParseInternal(string str, [CanBeNull] IFormatProvide provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.MetersPerSecondSquared + y.MetersPerSecondSquared, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -702,8 +701,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.MetersPerSecondSquared + y.MetersPerSecondSquared, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -720,7 +718,7 @@ private static AccelerationUnit ParseUnitInternal(string str, IFormatProvider pr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == AccelerationUnit.Undefined) { @@ -750,7 +748,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == AccelerationUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/AmountOfSubstance.Common.g.cs b/Common/GeneratedCode/Quantities/AmountOfSubstance.Common.g.cs index 8ffdaf8cfc..9c4fb9a21c 100644 --- a/Common/GeneratedCode/Quantities/AmountOfSubstance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/AmountOfSubstance.Common.g.cs @@ -701,8 +701,7 @@ private static AmountOfSubstance ParseInternal(string str, [CanBeNull] IFormatPr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Moles + y.Moles, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -724,8 +723,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Moles + y.Moles, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -742,7 +740,7 @@ private static AmountOfSubstanceUnit ParseUnitInternal(string str, IFormatProvid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == AmountOfSubstanceUnit.Undefined) { @@ -772,7 +770,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == AmountOfSubstanceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/AmplitudeRatio.Common.g.cs b/Common/GeneratedCode/Quantities/AmplitudeRatio.Common.g.cs index 4c179be8cd..c1fe46ff67 100644 --- a/Common/GeneratedCode/Quantities/AmplitudeRatio.Common.g.cs +++ b/Common/GeneratedCode/Quantities/AmplitudeRatio.Common.g.cs @@ -480,8 +480,7 @@ private static AmplitudeRatio ParseInternal(string str, [CanBeNull] IFormatProvi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.DecibelVolts + y.DecibelVolts, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -503,8 +502,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.DecibelVolts + y.DecibelVolts, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -521,7 +519,7 @@ private static AmplitudeRatioUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == AmplitudeRatioUnit.Undefined) { @@ -551,7 +549,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == AmplitudeRatioUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Angle.Common.g.cs b/Common/GeneratedCode/Quantities/Angle.Common.g.cs index a1f6eebf89..83cdf163dd 100644 --- a/Common/GeneratedCode/Quantities/Angle.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Angle.Common.g.cs @@ -700,8 +700,7 @@ private static Angle ParseInternal(string str, [CanBeNull] IFormatProvider provi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Degrees + y.Degrees, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -723,8 +722,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Degrees + y.Degrees, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -741,7 +739,7 @@ private static AngleUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == AngleUnit.Undefined) { @@ -771,7 +769,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == AngleUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ApparentEnergy.Common.g.cs b/Common/GeneratedCode/Quantities/ApparentEnergy.Common.g.cs index 78cd8fb5eb..0ecc9b3128 100644 --- a/Common/GeneratedCode/Quantities/ApparentEnergy.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ApparentEnergy.Common.g.cs @@ -459,8 +459,7 @@ private static ApparentEnergy ParseInternal(string str, [CanBeNull] IFormatProvi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.VoltampereHours + y.VoltampereHours, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.VoltampereHours + y.VoltampereHours, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static ApparentEnergyUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ApparentEnergyUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ApparentEnergyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ApparentPower.Common.g.cs b/Common/GeneratedCode/Quantities/ApparentPower.Common.g.cs index a818ec550d..9df3c1f890 100644 --- a/Common/GeneratedCode/Quantities/ApparentPower.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ApparentPower.Common.g.cs @@ -481,8 +481,7 @@ private static ApparentPower ParseInternal(string str, [CanBeNull] IFormatProvid provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Voltamperes + y.Voltamperes, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -504,8 +503,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Voltamperes + y.Voltamperes, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -522,7 +520,7 @@ private static ApparentPowerUnit ParseUnitInternal(string str, IFormatProvider p { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ApparentPowerUnit.Undefined) { @@ -552,7 +550,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ApparentPowerUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Area.Common.g.cs b/Common/GeneratedCode/Quantities/Area.Common.g.cs index 2459b00b7a..c58c270ae2 100644 --- a/Common/GeneratedCode/Quantities/Area.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Area.Common.g.cs @@ -679,8 +679,7 @@ private static Area ParseInternal(string str, [CanBeNull] IFormatProvider provid provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.SquareMeters + y.SquareMeters, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -702,8 +701,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.SquareMeters + y.SquareMeters, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -720,7 +718,7 @@ private static AreaUnit ParseUnitInternal(string str, IFormatProvider provider = { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == AreaUnit.Undefined) { @@ -750,7 +748,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == AreaUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/AreaDensity.Common.g.cs b/Common/GeneratedCode/Quantities/AreaDensity.Common.g.cs index 4cd4aa2f13..2499aca212 100644 --- a/Common/GeneratedCode/Quantities/AreaDensity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/AreaDensity.Common.g.cs @@ -415,8 +415,7 @@ private static AreaDensity ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.KilogramsPerSquareMeter + y.KilogramsPerSquareMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.KilogramsPerSquareMeter + y.KilogramsPerSquareMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static AreaDensityUnit ParseUnitInternal(string str, IFormatProvider pro { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == AreaDensityUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == AreaDensityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/AreaMomentOfInertia.Common.g.cs b/Common/GeneratedCode/Quantities/AreaMomentOfInertia.Common.g.cs index 5b0cd13dcf..0b60cdd202 100644 --- a/Common/GeneratedCode/Quantities/AreaMomentOfInertia.Common.g.cs +++ b/Common/GeneratedCode/Quantities/AreaMomentOfInertia.Common.g.cs @@ -525,8 +525,7 @@ private static AreaMomentOfInertia ParseInternal(string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.MetersToTheFourth + y.MetersToTheFourth, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -548,8 +547,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.MetersToTheFourth + y.MetersToTheFourth, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -566,7 +564,7 @@ private static AreaMomentOfInertiaUnit ParseUnitInternal(string str, IFormatProv { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == AreaMomentOfInertiaUnit.Undefined) { @@ -596,7 +594,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == AreaMomentOfInertiaUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/BitRate.Common.g.cs b/Common/GeneratedCode/Quantities/BitRate.Common.g.cs index 6ddc4d0c32..1ad1293a07 100644 --- a/Common/GeneratedCode/Quantities/BitRate.Common.g.cs +++ b/Common/GeneratedCode/Quantities/BitRate.Common.g.cs @@ -964,8 +964,7 @@ private static BitRate ParseInternal(string str, [CanBeNull] IFormatProvider pro provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.BitsPerSecond + y.BitsPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -987,8 +986,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.BitsPerSecond + y.BitsPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1005,7 +1003,7 @@ private static BitRateUnit ParseUnitInternal(string str, IFormatProvider provide { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == BitRateUnit.Undefined) { @@ -1035,7 +1033,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == BitRateUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/BrakeSpecificFuelConsumption.Common.g.cs b/Common/GeneratedCode/Quantities/BrakeSpecificFuelConsumption.Common.g.cs index 4af2b1ac17..0608d7e48d 100644 --- a/Common/GeneratedCode/Quantities/BrakeSpecificFuelConsumption.Common.g.cs +++ b/Common/GeneratedCode/Quantities/BrakeSpecificFuelConsumption.Common.g.cs @@ -459,8 +459,7 @@ private static BrakeSpecificFuelConsumption ParseInternal(string str, [CanBeNull provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.KilogramsPerJoule + y.KilogramsPerJoule, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.KilogramsPerJoule + y.KilogramsPerJoule, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static BrakeSpecificFuelConsumptionUnit ParseUnitInternal(string str, IF { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == BrakeSpecificFuelConsumptionUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == BrakeSpecificFuelConsumptionUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Capacitance.Common.g.cs b/Common/GeneratedCode/Quantities/Capacitance.Common.g.cs index f6b0b7356c..1fde587a73 100644 --- a/Common/GeneratedCode/Quantities/Capacitance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Capacitance.Common.g.cs @@ -415,8 +415,7 @@ private static Capacitance ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Farads + y.Farads, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Farads + y.Farads, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static CapacitanceUnit ParseUnitInternal(string str, IFormatProvider pro { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == CapacitanceUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == CapacitanceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Density.Common.g.cs b/Common/GeneratedCode/Quantities/Density.Common.g.cs index 181c7b6999..dc2aee8589 100644 --- a/Common/GeneratedCode/Quantities/Density.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Density.Common.g.cs @@ -1229,8 +1229,7 @@ private static Density ParseInternal(string str, [CanBeNull] IFormatProvider pro provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.KilogramsPerCubicMeter + y.KilogramsPerCubicMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -1252,8 +1251,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.KilogramsPerCubicMeter + y.KilogramsPerCubicMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1270,7 +1268,7 @@ private static DensityUnit ParseUnitInternal(string str, IFormatProvider provide { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == DensityUnit.Undefined) { @@ -1300,7 +1298,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == DensityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Duration.Common.g.cs b/Common/GeneratedCode/Quantities/Duration.Common.g.cs index d74a34cb93..73439f778c 100644 --- a/Common/GeneratedCode/Quantities/Duration.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Duration.Common.g.cs @@ -613,8 +613,7 @@ private static Duration ParseInternal(string str, [CanBeNull] IFormatProvider pr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Seconds + y.Seconds, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -636,8 +635,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Seconds + y.Seconds, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -654,7 +652,7 @@ private static DurationUnit ParseUnitInternal(string str, IFormatProvider provid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == DurationUnit.Undefined) { @@ -684,7 +682,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == DurationUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/DynamicViscosity.Common.g.cs b/Common/GeneratedCode/Quantities/DynamicViscosity.Common.g.cs index 5497bb6261..23979f9711 100644 --- a/Common/GeneratedCode/Quantities/DynamicViscosity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/DynamicViscosity.Common.g.cs @@ -525,8 +525,7 @@ private static DynamicViscosity ParseInternal(string str, [CanBeNull] IFormatPro provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.NewtonSecondsPerMeterSquared + y.NewtonSecondsPerMeterSquared, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -548,8 +547,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.NewtonSecondsPerMeterSquared + y.NewtonSecondsPerMeterSquared, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -566,7 +564,7 @@ private static DynamicViscosityUnit ParseUnitInternal(string str, IFormatProvide { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == DynamicViscosityUnit.Undefined) { @@ -596,7 +594,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == DynamicViscosityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricAdmittance.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricAdmittance.Common.g.cs index cc03d6012c..63a672f664 100644 --- a/Common/GeneratedCode/Quantities/ElectricAdmittance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricAdmittance.Common.g.cs @@ -481,8 +481,7 @@ private static ElectricAdmittance ParseInternal(string str, [CanBeNull] IFormatP provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Siemens + y.Siemens, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -504,8 +503,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Siemens + y.Siemens, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -522,7 +520,7 @@ private static ElectricAdmittanceUnit ParseUnitInternal(string str, IFormatProvi { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricAdmittanceUnit.Undefined) { @@ -552,7 +550,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricAdmittanceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricCharge.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricCharge.Common.g.cs index 87390b5eb6..5dbfebef04 100644 --- a/Common/GeneratedCode/Quantities/ElectricCharge.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricCharge.Common.g.cs @@ -415,8 +415,7 @@ private static ElectricCharge ParseInternal(string str, [CanBeNull] IFormatProvi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Coulombs + y.Coulombs, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Coulombs + y.Coulombs, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static ElectricChargeUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricChargeUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricChargeUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricChargeDensity.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricChargeDensity.Common.g.cs index 7f3ad066a1..6cb2bad778 100644 --- a/Common/GeneratedCode/Quantities/ElectricChargeDensity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricChargeDensity.Common.g.cs @@ -415,8 +415,7 @@ private static ElectricChargeDensity ParseInternal(string str, [CanBeNull] IForm provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.CoulombsPerCubicMeter + y.CoulombsPerCubicMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.CoulombsPerCubicMeter + y.CoulombsPerCubicMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static ElectricChargeDensityUnit ParseUnitInternal(string str, IFormatPr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricChargeDensityUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricChargeDensityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricConductance.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricConductance.Common.g.cs index ef04132634..56d39d998a 100644 --- a/Common/GeneratedCode/Quantities/ElectricConductance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricConductance.Common.g.cs @@ -459,8 +459,7 @@ private static ElectricConductance ParseInternal(string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Siemens + y.Siemens, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Siemens + y.Siemens, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static ElectricConductanceUnit ParseUnitInternal(string str, IFormatProv { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricConductanceUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricConductanceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricConductivity.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricConductivity.Common.g.cs index 82edcd345e..b1079413da 100644 --- a/Common/GeneratedCode/Quantities/ElectricConductivity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricConductivity.Common.g.cs @@ -415,8 +415,7 @@ private static ElectricConductivity ParseInternal(string str, [CanBeNull] IForma provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.SiemensPerMeter + y.SiemensPerMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.SiemensPerMeter + y.SiemensPerMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static ElectricConductivityUnit ParseUnitInternal(string str, IFormatPro { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricConductivityUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricConductivityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricCurrent.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricCurrent.Common.g.cs index 22c01b3809..c05dd17d91 100644 --- a/Common/GeneratedCode/Quantities/ElectricCurrent.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricCurrent.Common.g.cs @@ -569,8 +569,7 @@ private static ElectricCurrent ParseInternal(string str, [CanBeNull] IFormatProv provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Amperes + y.Amperes, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -592,8 +591,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Amperes + y.Amperes, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -610,7 +608,7 @@ private static ElectricCurrentUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricCurrentUnit.Undefined) { @@ -640,7 +638,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricCurrentUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricCurrentDensity.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricCurrentDensity.Common.g.cs index e230b33786..2bb80eac60 100644 --- a/Common/GeneratedCode/Quantities/ElectricCurrentDensity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricCurrentDensity.Common.g.cs @@ -415,8 +415,7 @@ private static ElectricCurrentDensity ParseInternal(string str, [CanBeNull] IFor provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.AmperesPerSquareMeter + y.AmperesPerSquareMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.AmperesPerSquareMeter + y.AmperesPerSquareMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static ElectricCurrentDensityUnit ParseUnitInternal(string str, IFormatP { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricCurrentDensityUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricCurrentDensityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricCurrentGradient.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricCurrentGradient.Common.g.cs index 6cffa791ec..625f5f3f12 100644 --- a/Common/GeneratedCode/Quantities/ElectricCurrentGradient.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricCurrentGradient.Common.g.cs @@ -415,8 +415,7 @@ private static ElectricCurrentGradient ParseInternal(string str, [CanBeNull] IFo provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.AmperesPerSecond + y.AmperesPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.AmperesPerSecond + y.AmperesPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static ElectricCurrentGradientUnit ParseUnitInternal(string str, IFormat { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricCurrentGradientUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricCurrentGradientUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricField.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricField.Common.g.cs index 98b9072347..58e01b2c4b 100644 --- a/Common/GeneratedCode/Quantities/ElectricField.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricField.Common.g.cs @@ -415,8 +415,7 @@ private static ElectricField ParseInternal(string str, [CanBeNull] IFormatProvid provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.VoltsPerMeter + y.VoltsPerMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.VoltsPerMeter + y.VoltsPerMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static ElectricFieldUnit ParseUnitInternal(string str, IFormatProvider p { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricFieldUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricFieldUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricInductance.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricInductance.Common.g.cs index 2cfb8999f0..2e5b239d35 100644 --- a/Common/GeneratedCode/Quantities/ElectricInductance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricInductance.Common.g.cs @@ -415,8 +415,7 @@ private static ElectricInductance ParseInternal(string str, [CanBeNull] IFormatP provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Henries + y.Henries, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Henries + y.Henries, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static ElectricInductanceUnit ParseUnitInternal(string str, IFormatProvi { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricInductanceUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricInductanceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricPotential.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricPotential.Common.g.cs index d6736fbd4a..36d1bc9933 100644 --- a/Common/GeneratedCode/Quantities/ElectricPotential.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricPotential.Common.g.cs @@ -503,8 +503,7 @@ private static ElectricPotential ParseInternal(string str, [CanBeNull] IFormatPr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Volts + y.Volts, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -526,8 +525,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Volts + y.Volts, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -544,7 +542,7 @@ private static ElectricPotentialUnit ParseUnitInternal(string str, IFormatProvid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricPotentialUnit.Undefined) { @@ -574,7 +572,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricPotentialUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricPotentialAc.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricPotentialAc.Common.g.cs index 0c96db267e..25aece9384 100644 --- a/Common/GeneratedCode/Quantities/ElectricPotentialAc.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricPotentialAc.Common.g.cs @@ -502,8 +502,7 @@ private static ElectricPotentialAc ParseInternal(string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.VoltsAc + y.VoltsAc, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -525,8 +524,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.VoltsAc + y.VoltsAc, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -543,7 +541,7 @@ private static ElectricPotentialAcUnit ParseUnitInternal(string str, IFormatProv { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricPotentialAcUnit.Undefined) { @@ -573,7 +571,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricPotentialAcUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricPotentialDc.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricPotentialDc.Common.g.cs index e9e585ee64..1d2005ec42 100644 --- a/Common/GeneratedCode/Quantities/ElectricPotentialDc.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricPotentialDc.Common.g.cs @@ -502,8 +502,7 @@ private static ElectricPotentialDc ParseInternal(string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.VoltsDc + y.VoltsDc, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -525,8 +524,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.VoltsDc + y.VoltsDc, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -543,7 +541,7 @@ private static ElectricPotentialDcUnit ParseUnitInternal(string str, IFormatProv { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricPotentialDcUnit.Undefined) { @@ -573,7 +571,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricPotentialDcUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricResistance.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricResistance.Common.g.cs index d33552494b..45f27e3218 100644 --- a/Common/GeneratedCode/Quantities/ElectricResistance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricResistance.Common.g.cs @@ -481,8 +481,7 @@ private static ElectricResistance ParseInternal(string str, [CanBeNull] IFormatP provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Ohms + y.Ohms, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -504,8 +503,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Ohms + y.Ohms, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -522,7 +520,7 @@ private static ElectricResistanceUnit ParseUnitInternal(string str, IFormatProvi { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricResistanceUnit.Undefined) { @@ -552,7 +550,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricResistanceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ElectricResistivity.Common.g.cs b/Common/GeneratedCode/Quantities/ElectricResistivity.Common.g.cs index 5d96e7af87..bc1a12ad0c 100644 --- a/Common/GeneratedCode/Quantities/ElectricResistivity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ElectricResistivity.Common.g.cs @@ -481,8 +481,7 @@ private static ElectricResistivity ParseInternal(string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.OhmMeters + y.OhmMeters, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -504,8 +503,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.OhmMeters + y.OhmMeters, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -522,7 +520,7 @@ private static ElectricResistivityUnit ParseUnitInternal(string str, IFormatProv { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ElectricResistivityUnit.Undefined) { @@ -552,7 +550,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ElectricResistivityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Energy.Common.g.cs b/Common/GeneratedCode/Quantities/Energy.Common.g.cs index 3169bc23e6..679d4ecf0e 100644 --- a/Common/GeneratedCode/Quantities/Energy.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Energy.Common.g.cs @@ -877,8 +877,7 @@ private static Energy ParseInternal(string str, [CanBeNull] IFormatProvider prov provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Joules + y.Joules, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -900,8 +899,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Joules + y.Joules, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -918,7 +916,7 @@ private static EnergyUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == EnergyUnit.Undefined) { @@ -948,7 +946,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == EnergyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Entropy.Common.g.cs b/Common/GeneratedCode/Quantities/Entropy.Common.g.cs index 70a74a9194..d2b8047b4a 100644 --- a/Common/GeneratedCode/Quantities/Entropy.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Entropy.Common.g.cs @@ -547,8 +547,7 @@ private static Entropy ParseInternal(string str, [CanBeNull] IFormatProvider pro provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.JoulesPerKelvin + y.JoulesPerKelvin, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -570,8 +569,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.JoulesPerKelvin + y.JoulesPerKelvin, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -588,7 +586,7 @@ private static EntropyUnit ParseUnitInternal(string str, IFormatProvider provide { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == EntropyUnit.Undefined) { @@ -618,7 +616,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == EntropyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Force.Common.g.cs b/Common/GeneratedCode/Quantities/Force.Common.g.cs index 4b809d9614..527bd45208 100644 --- a/Common/GeneratedCode/Quantities/Force.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Force.Common.g.cs @@ -613,8 +613,7 @@ private static Force ParseInternal(string str, [CanBeNull] IFormatProvider provi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Newtons + y.Newtons, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -636,8 +635,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Newtons + y.Newtons, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -654,7 +652,7 @@ private static ForceUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ForceUnit.Undefined) { @@ -684,7 +682,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ForceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ForceChangeRate.Common.g.cs b/Common/GeneratedCode/Quantities/ForceChangeRate.Common.g.cs index 16b2cf0449..9c1f7f2341 100644 --- a/Common/GeneratedCode/Quantities/ForceChangeRate.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ForceChangeRate.Common.g.cs @@ -635,8 +635,7 @@ private static ForceChangeRate ParseInternal(string str, [CanBeNull] IFormatProv provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.NewtonsPerSecond + y.NewtonsPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -658,8 +657,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.NewtonsPerSecond + y.NewtonsPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -676,7 +674,7 @@ private static ForceChangeRateUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ForceChangeRateUnit.Undefined) { @@ -706,7 +704,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ForceChangeRateUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ForcePerLength.Common.g.cs b/Common/GeneratedCode/Quantities/ForcePerLength.Common.g.cs index cf736506b2..a4099b4aa0 100644 --- a/Common/GeneratedCode/Quantities/ForcePerLength.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ForcePerLength.Common.g.cs @@ -591,8 +591,7 @@ private static ForcePerLength ParseInternal(string str, [CanBeNull] IFormatProvi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.NewtonsPerMeter + y.NewtonsPerMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -614,8 +613,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.NewtonsPerMeter + y.NewtonsPerMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -632,7 +630,7 @@ private static ForcePerLengthUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ForcePerLengthUnit.Undefined) { @@ -662,7 +660,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ForcePerLengthUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Frequency.Common.g.cs b/Common/GeneratedCode/Quantities/Frequency.Common.g.cs index 9f5b6f7b3a..b9f4b25715 100644 --- a/Common/GeneratedCode/Quantities/Frequency.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Frequency.Common.g.cs @@ -569,8 +569,7 @@ private static Frequency ParseInternal(string str, [CanBeNull] IFormatProvider p provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Hertz + y.Hertz, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -592,8 +591,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Hertz + y.Hertz, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -610,7 +608,7 @@ private static FrequencyUnit ParseUnitInternal(string str, IFormatProvider provi { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == FrequencyUnit.Undefined) { @@ -640,7 +638,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == FrequencyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/HeatFlux.Common.g.cs b/Common/GeneratedCode/Quantities/HeatFlux.Common.g.cs index c15cb25a98..4c5dc74008 100644 --- a/Common/GeneratedCode/Quantities/HeatFlux.Common.g.cs +++ b/Common/GeneratedCode/Quantities/HeatFlux.Common.g.cs @@ -745,8 +745,7 @@ private static HeatFlux ParseInternal(string str, [CanBeNull] IFormatProvider pr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.WattsPerSquareMeter + y.WattsPerSquareMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -768,8 +767,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.WattsPerSquareMeter + y.WattsPerSquareMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -786,7 +784,7 @@ private static HeatFluxUnit ParseUnitInternal(string str, IFormatProvider provid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == HeatFluxUnit.Undefined) { @@ -816,7 +814,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == HeatFluxUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/HeatTransferCoefficient.Common.g.cs b/Common/GeneratedCode/Quantities/HeatTransferCoefficient.Common.g.cs index 7ca816dd36..c3e53a657e 100644 --- a/Common/GeneratedCode/Quantities/HeatTransferCoefficient.Common.g.cs +++ b/Common/GeneratedCode/Quantities/HeatTransferCoefficient.Common.g.cs @@ -437,8 +437,7 @@ private static HeatTransferCoefficient ParseInternal(string str, [CanBeNull] IFo provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.WattsPerSquareMeterKelvin + y.WattsPerSquareMeterKelvin, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -460,8 +459,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.WattsPerSquareMeterKelvin + y.WattsPerSquareMeterKelvin, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -478,7 +476,7 @@ private static HeatTransferCoefficientUnit ParseUnitInternal(string str, IFormat { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == HeatTransferCoefficientUnit.Undefined) { @@ -508,7 +506,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == HeatTransferCoefficientUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Illuminance.Common.g.cs b/Common/GeneratedCode/Quantities/Illuminance.Common.g.cs index a76f397653..461747c421 100644 --- a/Common/GeneratedCode/Quantities/Illuminance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Illuminance.Common.g.cs @@ -481,8 +481,7 @@ private static Illuminance ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Lux + y.Lux, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -504,8 +503,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Lux + y.Lux, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -522,7 +520,7 @@ private static IlluminanceUnit ParseUnitInternal(string str, IFormatProvider pro { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == IlluminanceUnit.Undefined) { @@ -552,7 +550,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == IlluminanceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Information.Common.g.cs b/Common/GeneratedCode/Quantities/Information.Common.g.cs index 43f53d807f..4dc7772045 100644 --- a/Common/GeneratedCode/Quantities/Information.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Information.Common.g.cs @@ -964,8 +964,7 @@ private static Information ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Bits + y.Bits, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -987,8 +986,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Bits + y.Bits, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1005,7 +1003,7 @@ private static InformationUnit ParseUnitInternal(string str, IFormatProvider pro { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == InformationUnit.Undefined) { @@ -1035,7 +1033,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == InformationUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Irradiance.Common.g.cs b/Common/GeneratedCode/Quantities/Irradiance.Common.g.cs index 18fb6c4551..9cf07001d2 100644 --- a/Common/GeneratedCode/Quantities/Irradiance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Irradiance.Common.g.cs @@ -437,8 +437,7 @@ private static Irradiance ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.WattsPerSquareMeter + y.WattsPerSquareMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -460,8 +459,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.WattsPerSquareMeter + y.WattsPerSquareMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -478,7 +476,7 @@ private static IrradianceUnit ParseUnitInternal(string str, IFormatProvider prov { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == IrradianceUnit.Undefined) { @@ -508,7 +506,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == IrradianceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Irradiation.Common.g.cs b/Common/GeneratedCode/Quantities/Irradiation.Common.g.cs index 31b6c55e97..f200105b05 100644 --- a/Common/GeneratedCode/Quantities/Irradiation.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Irradiation.Common.g.cs @@ -459,8 +459,7 @@ private static Irradiation ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.JoulesPerSquareMeter + y.JoulesPerSquareMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.JoulesPerSquareMeter + y.JoulesPerSquareMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static IrradiationUnit ParseUnitInternal(string str, IFormatProvider pro { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == IrradiationUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == IrradiationUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/KinematicViscosity.Common.g.cs b/Common/GeneratedCode/Quantities/KinematicViscosity.Common.g.cs index 1557709422..1c52767722 100644 --- a/Common/GeneratedCode/Quantities/KinematicViscosity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/KinematicViscosity.Common.g.cs @@ -569,8 +569,7 @@ private static KinematicViscosity ParseInternal(string str, [CanBeNull] IFormatP provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.SquareMetersPerSecond + y.SquareMetersPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -592,8 +591,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.SquareMetersPerSecond + y.SquareMetersPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -610,7 +608,7 @@ private static KinematicViscosityUnit ParseUnitInternal(string str, IFormatProvi { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == KinematicViscosityUnit.Undefined) { @@ -640,7 +638,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == KinematicViscosityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/LapseRate.Common.g.cs b/Common/GeneratedCode/Quantities/LapseRate.Common.g.cs index 74bb128ac6..95ecc9ff70 100644 --- a/Common/GeneratedCode/Quantities/LapseRate.Common.g.cs +++ b/Common/GeneratedCode/Quantities/LapseRate.Common.g.cs @@ -415,8 +415,7 @@ private static LapseRate ParseInternal(string str, [CanBeNull] IFormatProvider p provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.DegreesCelciusPerKilometer + y.DegreesCelciusPerKilometer, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.DegreesCelciusPerKilometer + y.DegreesCelciusPerKilometer, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static LapseRateUnit ParseUnitInternal(string str, IFormatProvider provi { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == LapseRateUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == LapseRateUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Length.Common.g.cs b/Common/GeneratedCode/Quantities/Length.Common.g.cs index d96924eb0a..5cf0e59579 100644 --- a/Common/GeneratedCode/Quantities/Length.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Length.Common.g.cs @@ -877,8 +877,7 @@ private static Length ParseInternal(string str, [CanBeNull] IFormatProvider prov provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Meters + y.Meters, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -900,8 +899,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Meters + y.Meters, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -918,7 +916,7 @@ private static LengthUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == LengthUnit.Undefined) { @@ -948,7 +946,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == LengthUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Level.Common.g.cs b/Common/GeneratedCode/Quantities/Level.Common.g.cs index 460c901c68..fb8bc39905 100644 --- a/Common/GeneratedCode/Quantities/Level.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Level.Common.g.cs @@ -436,8 +436,7 @@ private static Level ParseInternal(string str, [CanBeNull] IFormatProvider provi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Decibels + y.Decibels, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -459,8 +458,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Decibels + y.Decibels, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -477,7 +475,7 @@ private static LevelUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == LevelUnit.Undefined) { @@ -507,7 +505,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == LevelUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/LinearDensity.Common.g.cs b/Common/GeneratedCode/Quantities/LinearDensity.Common.g.cs index f944bdb31b..bf93d8745a 100644 --- a/Common/GeneratedCode/Quantities/LinearDensity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/LinearDensity.Common.g.cs @@ -459,8 +459,7 @@ private static LinearDensity ParseInternal(string str, [CanBeNull] IFormatProvid provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.KilogramsPerMeter + y.KilogramsPerMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.KilogramsPerMeter + y.KilogramsPerMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static LinearDensityUnit ParseUnitInternal(string str, IFormatProvider p { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == LinearDensityUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == LinearDensityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/LuminousFlux.Common.g.cs b/Common/GeneratedCode/Quantities/LuminousFlux.Common.g.cs index 84875930a8..1ec661ec2f 100644 --- a/Common/GeneratedCode/Quantities/LuminousFlux.Common.g.cs +++ b/Common/GeneratedCode/Quantities/LuminousFlux.Common.g.cs @@ -415,8 +415,7 @@ private static LuminousFlux ParseInternal(string str, [CanBeNull] IFormatProvide provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Lumens + y.Lumens, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Lumens + y.Lumens, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static LuminousFluxUnit ParseUnitInternal(string str, IFormatProvider pr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == LuminousFluxUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == LuminousFluxUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/LuminousIntensity.Common.g.cs b/Common/GeneratedCode/Quantities/LuminousIntensity.Common.g.cs index e3c2665457..76d83c9d9e 100644 --- a/Common/GeneratedCode/Quantities/LuminousIntensity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/LuminousIntensity.Common.g.cs @@ -415,8 +415,7 @@ private static LuminousIntensity ParseInternal(string str, [CanBeNull] IFormatPr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Candela + y.Candela, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Candela + y.Candela, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static LuminousIntensityUnit ParseUnitInternal(string str, IFormatProvid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == LuminousIntensityUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == LuminousIntensityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/MagneticField.Common.g.cs b/Common/GeneratedCode/Quantities/MagneticField.Common.g.cs index 2731a33f19..6d97502e59 100644 --- a/Common/GeneratedCode/Quantities/MagneticField.Common.g.cs +++ b/Common/GeneratedCode/Quantities/MagneticField.Common.g.cs @@ -415,8 +415,7 @@ private static MagneticField ParseInternal(string str, [CanBeNull] IFormatProvid provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Teslas + y.Teslas, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Teslas + y.Teslas, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static MagneticFieldUnit ParseUnitInternal(string str, IFormatProvider p { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MagneticFieldUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MagneticFieldUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/MagneticFlux.Common.g.cs b/Common/GeneratedCode/Quantities/MagneticFlux.Common.g.cs index 5a1e968acd..8fa9e01791 100644 --- a/Common/GeneratedCode/Quantities/MagneticFlux.Common.g.cs +++ b/Common/GeneratedCode/Quantities/MagneticFlux.Common.g.cs @@ -415,8 +415,7 @@ private static MagneticFlux ParseInternal(string str, [CanBeNull] IFormatProvide provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Webers + y.Webers, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Webers + y.Webers, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static MagneticFluxUnit ParseUnitInternal(string str, IFormatProvider pr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MagneticFluxUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MagneticFluxUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Magnetization.Common.g.cs b/Common/GeneratedCode/Quantities/Magnetization.Common.g.cs index 52cce6354d..4e2cf27b84 100644 --- a/Common/GeneratedCode/Quantities/Magnetization.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Magnetization.Common.g.cs @@ -415,8 +415,7 @@ private static Magnetization ParseInternal(string str, [CanBeNull] IFormatProvid provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.AmperesPerMeter + y.AmperesPerMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.AmperesPerMeter + y.AmperesPerMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static MagnetizationUnit ParseUnitInternal(string str, IFormatProvider p { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MagnetizationUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MagnetizationUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Mass.Common.g.cs b/Common/GeneratedCode/Quantities/Mass.Common.g.cs index 564c87dc4b..eb7891bca8 100644 --- a/Common/GeneratedCode/Quantities/Mass.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Mass.Common.g.cs @@ -877,8 +877,7 @@ private static Mass ParseInternal(string str, [CanBeNull] IFormatProvider provid provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Kilograms + y.Kilograms, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -900,8 +899,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Kilograms + y.Kilograms, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -918,7 +916,7 @@ private static MassUnit ParseUnitInternal(string str, IFormatProvider provider = { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MassUnit.Undefined) { @@ -948,7 +946,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MassUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/MassFlow.Common.g.cs b/Common/GeneratedCode/Quantities/MassFlow.Common.g.cs index 7b941233f2..e27aa6b919 100644 --- a/Common/GeneratedCode/Quantities/MassFlow.Common.g.cs +++ b/Common/GeneratedCode/Quantities/MassFlow.Common.g.cs @@ -723,8 +723,7 @@ private static MassFlow ParseInternal(string str, [CanBeNull] IFormatProvider pr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.GramsPerSecond + y.GramsPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -746,8 +745,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.GramsPerSecond + y.GramsPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -764,7 +762,7 @@ private static MassFlowUnit ParseUnitInternal(string str, IFormatProvider provid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MassFlowUnit.Undefined) { @@ -794,7 +792,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MassFlowUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/MassFlux.Common.g.cs b/Common/GeneratedCode/Quantities/MassFlux.Common.g.cs index e9dcb735fa..b23e5aca4b 100644 --- a/Common/GeneratedCode/Quantities/MassFlux.Common.g.cs +++ b/Common/GeneratedCode/Quantities/MassFlux.Common.g.cs @@ -437,8 +437,7 @@ private static MassFlux ParseInternal(string str, [CanBeNull] IFormatProvider pr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.KilogramsPerSecondPerSquareMeter + y.KilogramsPerSecondPerSquareMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -460,8 +459,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.KilogramsPerSecondPerSquareMeter + y.KilogramsPerSecondPerSquareMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -478,7 +476,7 @@ private static MassFluxUnit ParseUnitInternal(string str, IFormatProvider provid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MassFluxUnit.Undefined) { @@ -508,7 +506,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MassFluxUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/MassMomentOfInertia.Common.g.cs b/Common/GeneratedCode/Quantities/MassMomentOfInertia.Common.g.cs index d8ffb92ba3..00650df202 100644 --- a/Common/GeneratedCode/Quantities/MassMomentOfInertia.Common.g.cs +++ b/Common/GeneratedCode/Quantities/MassMomentOfInertia.Common.g.cs @@ -1009,8 +1009,7 @@ private static MassMomentOfInertia ParseInternal(string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.KilogramSquareMeters + y.KilogramSquareMeters, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -1032,8 +1031,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.KilogramSquareMeters + y.KilogramSquareMeters, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1050,7 +1048,7 @@ private static MassMomentOfInertiaUnit ParseUnitInternal(string str, IFormatProv { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MassMomentOfInertiaUnit.Undefined) { @@ -1080,7 +1078,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MassMomentOfInertiaUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/MolarEnergy.Common.g.cs b/Common/GeneratedCode/Quantities/MolarEnergy.Common.g.cs index 245c2b9db4..c7976e833c 100644 --- a/Common/GeneratedCode/Quantities/MolarEnergy.Common.g.cs +++ b/Common/GeneratedCode/Quantities/MolarEnergy.Common.g.cs @@ -459,8 +459,7 @@ private static MolarEnergy ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.JoulesPerMole + y.JoulesPerMole, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.JoulesPerMole + y.JoulesPerMole, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static MolarEnergyUnit ParseUnitInternal(string str, IFormatProvider pro { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MolarEnergyUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MolarEnergyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/MolarEntropy.Common.g.cs b/Common/GeneratedCode/Quantities/MolarEntropy.Common.g.cs index a2079795df..dfc6fdcff9 100644 --- a/Common/GeneratedCode/Quantities/MolarEntropy.Common.g.cs +++ b/Common/GeneratedCode/Quantities/MolarEntropy.Common.g.cs @@ -459,8 +459,7 @@ private static MolarEntropy ParseInternal(string str, [CanBeNull] IFormatProvide provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.JoulesPerMoleKelvin + y.JoulesPerMoleKelvin, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.JoulesPerMoleKelvin + y.JoulesPerMoleKelvin, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static MolarEntropyUnit ParseUnitInternal(string str, IFormatProvider pr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MolarEntropyUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MolarEntropyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/MolarMass.Common.g.cs b/Common/GeneratedCode/Quantities/MolarMass.Common.g.cs index cde782d394..b4522ad436 100644 --- a/Common/GeneratedCode/Quantities/MolarMass.Common.g.cs +++ b/Common/GeneratedCode/Quantities/MolarMass.Common.g.cs @@ -657,8 +657,7 @@ private static MolarMass ParseInternal(string str, [CanBeNull] IFormatProvider p provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.KilogramsPerMole + y.KilogramsPerMole, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -680,8 +679,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.KilogramsPerMole + y.KilogramsPerMole, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -698,7 +696,7 @@ private static MolarMassUnit ParseUnitInternal(string str, IFormatProvider provi { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MolarMassUnit.Undefined) { @@ -728,7 +726,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MolarMassUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Molarity.Common.g.cs b/Common/GeneratedCode/Quantities/Molarity.Common.g.cs index b551f2e57a..a433111a73 100644 --- a/Common/GeneratedCode/Quantities/Molarity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Molarity.Common.g.cs @@ -569,8 +569,7 @@ private static Molarity ParseInternal(string str, [CanBeNull] IFormatProvider pr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.MolesPerCubicMeter + y.MolesPerCubicMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -592,8 +591,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.MolesPerCubicMeter + y.MolesPerCubicMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -610,7 +608,7 @@ private static MolarityUnit ParseUnitInternal(string str, IFormatProvider provid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == MolarityUnit.Undefined) { @@ -640,7 +638,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == MolarityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Permeability.Common.g.cs b/Common/GeneratedCode/Quantities/Permeability.Common.g.cs index 26b3a79c94..b04f222029 100644 --- a/Common/GeneratedCode/Quantities/Permeability.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Permeability.Common.g.cs @@ -415,8 +415,7 @@ private static Permeability ParseInternal(string str, [CanBeNull] IFormatProvide provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.HenriesPerMeter + y.HenriesPerMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.HenriesPerMeter + y.HenriesPerMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static PermeabilityUnit ParseUnitInternal(string str, IFormatProvider pr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == PermeabilityUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == PermeabilityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Permittivity.Common.g.cs b/Common/GeneratedCode/Quantities/Permittivity.Common.g.cs index a96cf85386..3fb2bd490f 100644 --- a/Common/GeneratedCode/Quantities/Permittivity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Permittivity.Common.g.cs @@ -415,8 +415,7 @@ private static Permittivity ParseInternal(string str, [CanBeNull] IFormatProvide provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.FaradsPerMeter + y.FaradsPerMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -438,8 +437,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.FaradsPerMeter + y.FaradsPerMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -456,7 +454,7 @@ private static PermittivityUnit ParseUnitInternal(string str, IFormatProvider pr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == PermittivityUnit.Undefined) { @@ -486,7 +484,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == PermittivityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Power.Common.g.cs b/Common/GeneratedCode/Quantities/Power.Common.g.cs index 89037f0f1a..03c8a5e79e 100644 --- a/Common/GeneratedCode/Quantities/Power.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Power.Common.g.cs @@ -833,8 +833,7 @@ private static Power ParseInternal(string str, [CanBeNull] IFormatProvider provi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Watts + y.Watts, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -856,8 +855,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Watts + y.Watts, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -874,7 +872,7 @@ private static PowerUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == PowerUnit.Undefined) { @@ -904,7 +902,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == PowerUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/PowerDensity.Common.g.cs b/Common/GeneratedCode/Quantities/PowerDensity.Common.g.cs index 5d273e3417..8ec46a9658 100644 --- a/Common/GeneratedCode/Quantities/PowerDensity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/PowerDensity.Common.g.cs @@ -1361,8 +1361,7 @@ private static PowerDensity ParseInternal(string str, [CanBeNull] IFormatProvide provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.WattsPerCubicMeter + y.WattsPerCubicMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -1384,8 +1383,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.WattsPerCubicMeter + y.WattsPerCubicMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1402,7 +1400,7 @@ private static PowerDensityUnit ParseUnitInternal(string str, IFormatProvider pr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == PowerDensityUnit.Undefined) { @@ -1432,7 +1430,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == PowerDensityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/PowerRatio.Common.g.cs b/Common/GeneratedCode/Quantities/PowerRatio.Common.g.cs index 518471df32..66d9f5d959 100644 --- a/Common/GeneratedCode/Quantities/PowerRatio.Common.g.cs +++ b/Common/GeneratedCode/Quantities/PowerRatio.Common.g.cs @@ -436,8 +436,7 @@ private static PowerRatio ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.DecibelWatts + y.DecibelWatts, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -459,8 +458,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.DecibelWatts + y.DecibelWatts, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -477,7 +475,7 @@ private static PowerRatioUnit ParseUnitInternal(string str, IFormatProvider prov { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == PowerRatioUnit.Undefined) { @@ -507,7 +505,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == PowerRatioUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Pressure.Common.g.cs b/Common/GeneratedCode/Quantities/Pressure.Common.g.cs index c3db07bf24..baadedff81 100644 --- a/Common/GeneratedCode/Quantities/Pressure.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Pressure.Common.g.cs @@ -1207,8 +1207,7 @@ private static Pressure ParseInternal(string str, [CanBeNull] IFormatProvider pr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Pascals + y.Pascals, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -1230,8 +1229,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Pascals + y.Pascals, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1248,7 +1246,7 @@ private static PressureUnit ParseUnitInternal(string str, IFormatProvider provid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == PressureUnit.Undefined) { @@ -1278,7 +1276,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == PressureUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/PressureChangeRate.Common.g.cs b/Common/GeneratedCode/Quantities/PressureChangeRate.Common.g.cs index 7b3b600e5f..db9a9d9670 100644 --- a/Common/GeneratedCode/Quantities/PressureChangeRate.Common.g.cs +++ b/Common/GeneratedCode/Quantities/PressureChangeRate.Common.g.cs @@ -481,8 +481,7 @@ private static PressureChangeRate ParseInternal(string str, [CanBeNull] IFormatP provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.PascalsPerSecond + y.PascalsPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -504,8 +503,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.PascalsPerSecond + y.PascalsPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -522,7 +520,7 @@ private static PressureChangeRateUnit ParseUnitInternal(string str, IFormatProvi { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == PressureChangeRateUnit.Undefined) { @@ -552,7 +550,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == PressureChangeRateUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Ratio.Common.g.cs b/Common/GeneratedCode/Quantities/Ratio.Common.g.cs index 55e0b0ab88..2f15162ea9 100644 --- a/Common/GeneratedCode/Quantities/Ratio.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Ratio.Common.g.cs @@ -524,8 +524,7 @@ private static Ratio ParseInternal(string str, [CanBeNull] IFormatProvider provi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.DecimalFractions + y.DecimalFractions, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -547,8 +546,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.DecimalFractions + y.DecimalFractions, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -565,7 +563,7 @@ private static RatioUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == RatioUnit.Undefined) { @@ -595,7 +593,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == RatioUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ReactiveEnergy.Common.g.cs b/Common/GeneratedCode/Quantities/ReactiveEnergy.Common.g.cs index 001687c404..b6e38f715b 100644 --- a/Common/GeneratedCode/Quantities/ReactiveEnergy.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ReactiveEnergy.Common.g.cs @@ -459,8 +459,7 @@ private static ReactiveEnergy ParseInternal(string str, [CanBeNull] IFormatProvi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.VoltampereReactiveHours + y.VoltampereReactiveHours, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.VoltampereReactiveHours + y.VoltampereReactiveHours, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static ReactiveEnergyUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ReactiveEnergyUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ReactiveEnergyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ReactivePower.Common.g.cs b/Common/GeneratedCode/Quantities/ReactivePower.Common.g.cs index a447e75069..e97faed80e 100644 --- a/Common/GeneratedCode/Quantities/ReactivePower.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ReactivePower.Common.g.cs @@ -481,8 +481,7 @@ private static ReactivePower ParseInternal(string str, [CanBeNull] IFormatProvid provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.VoltamperesReactive + y.VoltamperesReactive, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -504,8 +503,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.VoltamperesReactive + y.VoltamperesReactive, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -522,7 +520,7 @@ private static ReactivePowerUnit ParseUnitInternal(string str, IFormatProvider p { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ReactivePowerUnit.Undefined) { @@ -552,7 +550,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ReactivePowerUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/RotationalAcceleration.Common.g.cs b/Common/GeneratedCode/Quantities/RotationalAcceleration.Common.g.cs index 84c60712c6..54863e9bca 100644 --- a/Common/GeneratedCode/Quantities/RotationalAcceleration.Common.g.cs +++ b/Common/GeneratedCode/Quantities/RotationalAcceleration.Common.g.cs @@ -459,8 +459,7 @@ private static RotationalAcceleration ParseInternal(string str, [CanBeNull] IFor provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.RadiansPerSecondSquared + y.RadiansPerSecondSquared, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.RadiansPerSecondSquared + y.RadiansPerSecondSquared, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static RotationalAccelerationUnit ParseUnitInternal(string str, IFormatP { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == RotationalAccelerationUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == RotationalAccelerationUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/RotationalSpeed.Common.g.cs b/Common/GeneratedCode/Quantities/RotationalSpeed.Common.g.cs index 3620080e25..c03e2d0da3 100644 --- a/Common/GeneratedCode/Quantities/RotationalSpeed.Common.g.cs +++ b/Common/GeneratedCode/Quantities/RotationalSpeed.Common.g.cs @@ -679,8 +679,7 @@ private static RotationalSpeed ParseInternal(string str, [CanBeNull] IFormatProv provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.RadiansPerSecond + y.RadiansPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -702,8 +701,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.RadiansPerSecond + y.RadiansPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -720,7 +718,7 @@ private static RotationalSpeedUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == RotationalSpeedUnit.Undefined) { @@ -750,7 +748,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == RotationalSpeedUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/RotationalStiffness.Common.g.cs b/Common/GeneratedCode/Quantities/RotationalStiffness.Common.g.cs index 21cacb0712..f3a2d2b280 100644 --- a/Common/GeneratedCode/Quantities/RotationalStiffness.Common.g.cs +++ b/Common/GeneratedCode/Quantities/RotationalStiffness.Common.g.cs @@ -459,8 +459,7 @@ private static RotationalStiffness ParseInternal(string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.NewtonMetersPerRadian + y.NewtonMetersPerRadian, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.NewtonMetersPerRadian + y.NewtonMetersPerRadian, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static RotationalStiffnessUnit ParseUnitInternal(string str, IFormatProv { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == RotationalStiffnessUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == RotationalStiffnessUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/RotationalStiffnessPerLength.Common.g.cs b/Common/GeneratedCode/Quantities/RotationalStiffnessPerLength.Common.g.cs index 943f679024..d8b10b8930 100644 --- a/Common/GeneratedCode/Quantities/RotationalStiffnessPerLength.Common.g.cs +++ b/Common/GeneratedCode/Quantities/RotationalStiffnessPerLength.Common.g.cs @@ -459,8 +459,7 @@ private static RotationalStiffnessPerLength ParseInternal(string str, [CanBeNull provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.NewtonMetersPerRadianPerMeter + y.NewtonMetersPerRadianPerMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -482,8 +481,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.NewtonMetersPerRadianPerMeter + y.NewtonMetersPerRadianPerMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -500,7 +498,7 @@ private static RotationalStiffnessPerLengthUnit ParseUnitInternal(string str, IF { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == RotationalStiffnessPerLengthUnit.Undefined) { @@ -530,7 +528,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == RotationalStiffnessPerLengthUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/SolidAngle.Common.g.cs b/Common/GeneratedCode/Quantities/SolidAngle.Common.g.cs index 7a445f8f83..344b7d5050 100644 --- a/Common/GeneratedCode/Quantities/SolidAngle.Common.g.cs +++ b/Common/GeneratedCode/Quantities/SolidAngle.Common.g.cs @@ -414,8 +414,7 @@ private static SolidAngle ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Steradians + y.Steradians, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -437,8 +436,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Steradians + y.Steradians, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -455,7 +453,7 @@ private static SolidAngleUnit ParseUnitInternal(string str, IFormatProvider prov { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == SolidAngleUnit.Undefined) { @@ -485,7 +483,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == SolidAngleUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/SpecificEnergy.Common.g.cs b/Common/GeneratedCode/Quantities/SpecificEnergy.Common.g.cs index 87278341dd..e93fce1dab 100644 --- a/Common/GeneratedCode/Quantities/SpecificEnergy.Common.g.cs +++ b/Common/GeneratedCode/Quantities/SpecificEnergy.Common.g.cs @@ -569,8 +569,7 @@ private static SpecificEnergy ParseInternal(string str, [CanBeNull] IFormatProvi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.JoulesPerKilogram + y.JoulesPerKilogram, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -592,8 +591,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.JoulesPerKilogram + y.JoulesPerKilogram, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -610,7 +608,7 @@ private static SpecificEnergyUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == SpecificEnergyUnit.Undefined) { @@ -640,7 +638,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == SpecificEnergyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/SpecificEntropy.Common.g.cs b/Common/GeneratedCode/Quantities/SpecificEntropy.Common.g.cs index f9d7cd18be..b94fb65d1d 100644 --- a/Common/GeneratedCode/Quantities/SpecificEntropy.Common.g.cs +++ b/Common/GeneratedCode/Quantities/SpecificEntropy.Common.g.cs @@ -569,8 +569,7 @@ private static SpecificEntropy ParseInternal(string str, [CanBeNull] IFormatProv provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.JoulesPerKilogramKelvin + y.JoulesPerKilogramKelvin, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -592,8 +591,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.JoulesPerKilogramKelvin + y.JoulesPerKilogramKelvin, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -610,7 +608,7 @@ private static SpecificEntropyUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == SpecificEntropyUnit.Undefined) { @@ -640,7 +638,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == SpecificEntropyUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/SpecificVolume.Common.g.cs b/Common/GeneratedCode/Quantities/SpecificVolume.Common.g.cs index d697f500be..f56d086df0 100644 --- a/Common/GeneratedCode/Quantities/SpecificVolume.Common.g.cs +++ b/Common/GeneratedCode/Quantities/SpecificVolume.Common.g.cs @@ -437,8 +437,7 @@ private static SpecificVolume ParseInternal(string str, [CanBeNull] IFormatProvi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.CubicMetersPerKilogram + y.CubicMetersPerKilogram, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -460,8 +459,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.CubicMetersPerKilogram + y.CubicMetersPerKilogram, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -478,7 +476,7 @@ private static SpecificVolumeUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == SpecificVolumeUnit.Undefined) { @@ -508,7 +506,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == SpecificVolumeUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/SpecificWeight.Common.g.cs b/Common/GeneratedCode/Quantities/SpecificWeight.Common.g.cs index 644612dfa6..6ecacc9fec 100644 --- a/Common/GeneratedCode/Quantities/SpecificWeight.Common.g.cs +++ b/Common/GeneratedCode/Quantities/SpecificWeight.Common.g.cs @@ -767,8 +767,7 @@ private static SpecificWeight ParseInternal(string str, [CanBeNull] IFormatProvi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.NewtonsPerCubicMeter + y.NewtonsPerCubicMeter, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -790,8 +789,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.NewtonsPerCubicMeter + y.NewtonsPerCubicMeter, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -808,7 +806,7 @@ private static SpecificWeightUnit ParseUnitInternal(string str, IFormatProvider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == SpecificWeightUnit.Undefined) { @@ -838,7 +836,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == SpecificWeightUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Speed.Common.g.cs b/Common/GeneratedCode/Quantities/Speed.Common.g.cs index 048ddd0502..630d1f1ff3 100644 --- a/Common/GeneratedCode/Quantities/Speed.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Speed.Common.g.cs @@ -1097,8 +1097,7 @@ private static Speed ParseInternal(string str, [CanBeNull] IFormatProvider provi provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.MetersPerSecond + y.MetersPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -1120,8 +1119,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.MetersPerSecond + y.MetersPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1138,7 +1136,7 @@ private static SpeedUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == SpeedUnit.Undefined) { @@ -1168,7 +1166,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == SpeedUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Temperature.Common.g.cs b/Common/GeneratedCode/Quantities/Temperature.Common.g.cs index 939ab11ba7..5d4c748cb7 100644 --- a/Common/GeneratedCode/Quantities/Temperature.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Temperature.Common.g.cs @@ -569,8 +569,7 @@ private static Temperature ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Kelvins + y.Kelvins, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -592,8 +591,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Kelvins + y.Kelvins, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -610,7 +608,7 @@ private static TemperatureUnit ParseUnitInternal(string str, IFormatProvider pro { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == TemperatureUnit.Undefined) { @@ -640,7 +638,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == TemperatureUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/TemperatureChangeRate.Common.g.cs b/Common/GeneratedCode/Quantities/TemperatureChangeRate.Common.g.cs index 36cde49a47..7fd42725ee 100644 --- a/Common/GeneratedCode/Quantities/TemperatureChangeRate.Common.g.cs +++ b/Common/GeneratedCode/Quantities/TemperatureChangeRate.Common.g.cs @@ -613,8 +613,7 @@ private static TemperatureChangeRate ParseInternal(string str, [CanBeNull] IForm provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.DegreesCelsiusPerSecond + y.DegreesCelsiusPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -636,8 +635,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.DegreesCelsiusPerSecond + y.DegreesCelsiusPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -654,7 +652,7 @@ private static TemperatureChangeRateUnit ParseUnitInternal(string str, IFormatPr { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == TemperatureChangeRateUnit.Undefined) { @@ -684,7 +682,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == TemperatureChangeRateUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/TemperatureDelta.Common.g.cs b/Common/GeneratedCode/Quantities/TemperatureDelta.Common.g.cs index 84833c4fd7..0cd1a49739 100644 --- a/Common/GeneratedCode/Quantities/TemperatureDelta.Common.g.cs +++ b/Common/GeneratedCode/Quantities/TemperatureDelta.Common.g.cs @@ -568,8 +568,7 @@ private static TemperatureDelta ParseInternal(string str, [CanBeNull] IFormatPro provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.Kelvins + y.Kelvins, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -591,8 +590,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.Kelvins + y.Kelvins, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -609,7 +607,7 @@ private static TemperatureDeltaUnit ParseUnitInternal(string str, IFormatProvide { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == TemperatureDeltaUnit.Undefined) { @@ -639,7 +637,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == TemperatureDeltaUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ThermalConductivity.Common.g.cs b/Common/GeneratedCode/Quantities/ThermalConductivity.Common.g.cs index a09d0982fa..1c23b158ee 100644 --- a/Common/GeneratedCode/Quantities/ThermalConductivity.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ThermalConductivity.Common.g.cs @@ -437,8 +437,7 @@ private static ThermalConductivity ParseInternal(string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.WattsPerMeterKelvin + y.WattsPerMeterKelvin, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -460,8 +459,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.WattsPerMeterKelvin + y.WattsPerMeterKelvin, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -478,7 +476,7 @@ private static ThermalConductivityUnit ParseUnitInternal(string str, IFormatProv { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ThermalConductivityUnit.Undefined) { @@ -508,7 +506,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ThermalConductivityUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/ThermalResistance.Common.g.cs b/Common/GeneratedCode/Quantities/ThermalResistance.Common.g.cs index 13068ea152..a50ef603b4 100644 --- a/Common/GeneratedCode/Quantities/ThermalResistance.Common.g.cs +++ b/Common/GeneratedCode/Quantities/ThermalResistance.Common.g.cs @@ -503,8 +503,7 @@ private static ThermalResistance ParseInternal(string str, [CanBeNull] IFormatPr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.SquareMeterKelvinsPerKilowatt + y.SquareMeterKelvinsPerKilowatt, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -526,8 +525,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.SquareMeterKelvinsPerKilowatt + y.SquareMeterKelvinsPerKilowatt, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -544,7 +542,7 @@ private static ThermalResistanceUnit ParseUnitInternal(string str, IFormatProvid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == ThermalResistanceUnit.Undefined) { @@ -574,7 +572,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == ThermalResistanceUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Torque.Common.g.cs b/Common/GeneratedCode/Quantities/Torque.Common.g.cs index 83e93c1cb2..fd91c3cca3 100644 --- a/Common/GeneratedCode/Quantities/Torque.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Torque.Common.g.cs @@ -855,8 +855,7 @@ private static Torque ParseInternal(string str, [CanBeNull] IFormatProvider prov provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.NewtonMeters + y.NewtonMeters, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -878,8 +877,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.NewtonMeters + y.NewtonMeters, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -896,7 +894,7 @@ private static TorqueUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == TorqueUnit.Undefined) { @@ -926,7 +924,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == TorqueUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/VitaminA.Common.g.cs b/Common/GeneratedCode/Quantities/VitaminA.Common.g.cs index 4d6b0c5a4c..cbf92fdf97 100644 --- a/Common/GeneratedCode/Quantities/VitaminA.Common.g.cs +++ b/Common/GeneratedCode/Quantities/VitaminA.Common.g.cs @@ -414,8 +414,7 @@ private static VitaminA ParseInternal(string str, [CanBeNull] IFormatProvider pr provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.InternationalUnits + y.InternationalUnits, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -437,8 +436,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.InternationalUnits + y.InternationalUnits, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -455,7 +453,7 @@ private static VitaminAUnit ParseUnitInternal(string str, IFormatProvider provid { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == VitaminAUnit.Undefined) { @@ -485,7 +483,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == VitaminAUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/Volume.Common.g.cs b/Common/GeneratedCode/Quantities/Volume.Common.g.cs index 0bad7a2881..be78c8f41e 100644 --- a/Common/GeneratedCode/Quantities/Volume.Common.g.cs +++ b/Common/GeneratedCode/Quantities/Volume.Common.g.cs @@ -1317,8 +1317,7 @@ private static Volume ParseInternal(string str, [CanBeNull] IFormatProvider prov provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.CubicMeters + y.CubicMeters, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -1340,8 +1339,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.CubicMeters + y.CubicMeters, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1358,7 +1356,7 @@ private static VolumeUnit ParseUnitInternal(string str, IFormatProvider provider { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == VolumeUnit.Undefined) { @@ -1388,7 +1386,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == VolumeUnit.Undefined) diff --git a/Common/GeneratedCode/Quantities/VolumeFlow.Common.g.cs b/Common/GeneratedCode/Quantities/VolumeFlow.Common.g.cs index 6201e6011e..1965904664 100644 --- a/Common/GeneratedCode/Quantities/VolumeFlow.Common.g.cs +++ b/Common/GeneratedCode/Quantities/VolumeFlow.Common.g.cs @@ -965,8 +965,7 @@ private static VolumeFlow ParseInternal(string str, [CanBeNull] IFormatProvider provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From, - (x, y) => From(x.CubicMetersPerSecond + y.CubicMetersPerSecond, BaseUnit)); + return QuantityParser.Default.Parse(str, provider, ParseUnitInternal, From); } /// @@ -988,8 +987,7 @@ private static bool TryParseInternal([CanBeNull] string str, [CanBeNull] IFormat provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.CubicMetersPerSecond + y.CubicMetersPerSecond, BaseUnit), out result); + return QuantityParser.Default.TryParse(str, provider, TryParseUnitInternal, From, out result); } /// @@ -1006,7 +1004,7 @@ private static VolumeFlowUnit ParseUnitInternal(string str, IFormatProvider prov { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse(str.Trim(), provider); + var unit = UnitParser.Default.Parse(str, provider); if (unit == VolumeFlowUnit.Undefined) { @@ -1036,7 +1034,7 @@ private static bool TryParseUnitInternal(string str, IFormatProvider provider, o if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse(str, provider, out unit)) return false; if(unit == VolumeFlowUnit.Undefined) diff --git a/Common/UnitDefinitions/Length.json b/Common/UnitDefinitions/Length.json index 2ee0fd3767..ea24e97c88 100644 --- a/Common/UnitDefinitions/Length.json +++ b/Common/UnitDefinitions/Length.json @@ -64,7 +64,7 @@ "Localization": [ { "Culture": "en-US", - "Abbreviations": [ "ft", "'" ] + "Abbreviations": [ "ft", "'", "′" ] }, { "Culture": "ru-RU", @@ -92,7 +92,7 @@ "Localization": [ { "Culture": "en-US", - "Abbreviations": [ "in", "\\\"" ] + "Abbreviations": [ "in", "\\\"", "″" ] }, { "Culture": "ru-RU", @@ -233,4 +233,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/UnitsNet.Tests/CustomCode/FeetInchesTests.cs b/UnitsNet.Tests/CustomCode/LengthTests.FeetInches.cs similarity index 54% rename from UnitsNet.Tests/CustomCode/FeetInchesTests.cs rename to UnitsNet.Tests/CustomCode/LengthTests.FeetInches.cs index 73dd817f8e..715a655fed 100644 --- a/UnitsNet.Tests/CustomCode/FeetInchesTests.cs +++ b/UnitsNet.Tests/CustomCode/LengthTests.FeetInches.cs @@ -1,16 +1,16 @@ // Copyright (c) 2013 Andreas Gullberg Larsen (andreas.larsen84@gmail.com). // https://github.com/angularsen/UnitsNet -// +// // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: -// +// // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. -// +// // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -46,5 +46,46 @@ public void FeetInchesRoundTrip() AssertEx.EqualTolerance(2, feetInches.Feet, FeetTolerance); AssertEx.EqualTolerance(3, feetInches.Inches, InchesTolerance); } + + [Theory] + [InlineData("1'", 1)] // Feet only + [InlineData("1′", 1)] // Feet only + [InlineData("1\"", 0.08333333)] // Inches only + [InlineData("1″", 0.08333333)] // Inches only + [InlineData("1' 1\"", 1.08333333)] // Normal form + [InlineData("1′ 1″", 1.08333333)] // Normal form + [InlineData(" 1′ 1″ ", 1.08333333)] // Normal form, requires trimming + [InlineData("1'1\"", 1.08333333)] // Without space + [InlineData("1′1″", 1.08333333)] // Without space + [InlineData("1 ft 1 in", 1.08333333)] + [InlineData("1ft 1in", 1.08333333)] + public void TryParseFeetInches(string str, double expectedFeet) + { + Assert.True(Length.TryParseFeetInches(str, out Length result)); + AssertEx.EqualTolerance(expectedFeet, result.Feet, 1e-5); + } + + [Theory] + [InlineData("a")] // Missing or invalid apostrophe or double prime chars + [InlineData("1")] + [InlineData("1`")] + [InlineData("1^")] + [InlineData("1' 1'")] // Feet apostrophe twice + [InlineData("1′ 1′")] + [InlineData("1' 1")] // No inches double prime + [InlineData("1′ 1")] + [InlineData("1′ 1`")] // Invalid inches double prime + [InlineData("1' 1`")] + [InlineData("1'1'")] // Same without space + [InlineData("1′1′")] + [InlineData("1'1")] + [InlineData("1′1")] + [InlineData("1′1`")] + [InlineData("1'1`")] + public void TryParseFeetInches_GivenInvalidString_ReturnsFalseAndZeroOut(string str) + { + Assert.False(Length.TryParseFeetInches(str, out Length result)); + Assert.Equal(Length.Zero, result); + } } -} \ No newline at end of file +} diff --git a/UnitsNet.Tests/CustomCode/ParseTests.cs b/UnitsNet.Tests/CustomCode/ParseTests.cs index 3a05a64df8..294c12d0e1 100644 --- a/UnitsNet.Tests/CustomCode/ParseTests.cs +++ b/UnitsNet.Tests/CustomCode/ParseTests.cs @@ -38,6 +38,7 @@ public class ParseTests { [Theory] [InlineData("1km", 1000)] + [InlineData(" 1km ", 1000)] // Check that it also trims string [InlineData("1 km", 1000)] [InlineData("1e-3 km", 1)] [InlineData("5.5 m", 5.5)] @@ -51,11 +52,11 @@ public void ParseLengthToMetersUsEnglish(string s, double expected) [Theory] [InlineData(null, typeof(ArgumentNullException))] // Can't parse null. - [InlineData("1", typeof(ArgumentException))] // No unit abbreviation. - [InlineData("km", typeof(UnitsNetException))] // No value, wrong measurement type. - [InlineData("1 kg", typeof(UnitsNetException))] // Wrong measurement type. - [InlineData("1ft monkey 1in", typeof(UnitsNetException))] // Invalid separator between two valid measurements. - [InlineData("1ft 1invalid", typeof(UnitsNetException))] // Valid + [InlineData("1", typeof(FormatException))] // No unit abbreviation. + [InlineData("km", typeof(FormatException))] // No value, wrong measurement type. + [InlineData("1 kg", typeof(FormatException))] // Wrong measurement type. + [InlineData("1ft monkey 1in", typeof(FormatException))] // Invalid separator between two valid measurements. + [InlineData("1ft 1invalid", typeof(FormatException))] // Valid public void ParseLength_InvalidString_USEnglish_ThrowsException(string s, Type expectedExceptionType) { var usEnglish = new CultureInfo("en-US"); @@ -71,20 +72,24 @@ public void ParseWithCultureUsingSpaceAsThousandSeparators(string s, double expe { var numberFormat = (NumberFormatInfo) CultureInfo.InvariantCulture.NumberFormat.Clone(); numberFormat.NumberGroupSeparator = " "; + numberFormat.CurrencyGroupSeparator = " "; numberFormat.NumberDecimalSeparator = "."; + numberFormat.CurrencyDecimalSeparator = "."; double actual = Length.Parse(s, numberFormat).Meters; Assert.Equal(expected, actual); } [Theory] - [InlineData("500.005.050,001 m", typeof(UnitsNetException))] + [InlineData("500.005.050,001 m", typeof(FormatException))] // quantity doesn't match number format public void ParseWithCultureUsingSpaceAsThousandSeparators_ThrowsExceptionOnInvalidString(string s, Type expectedExceptionType) { var numberFormat = (NumberFormatInfo) CultureInfo.InvariantCulture.NumberFormat.Clone(); numberFormat.NumberGroupSeparator = " "; + numberFormat.CurrencyGroupSeparator = " "; numberFormat.NumberDecimalSeparator = "."; + numberFormat.CurrencyDecimalSeparator = "."; Assert.Throws(expectedExceptionType, () => Length.Parse(s, numberFormat)); } @@ -98,7 +103,9 @@ public void ParseWithCultureUsingDotAsThousandSeparators(string s, double expect { var numberFormat = (NumberFormatInfo) CultureInfo.InvariantCulture.NumberFormat.Clone(); numberFormat.NumberGroupSeparator = "."; + numberFormat.CurrencyGroupSeparator = "."; numberFormat.NumberDecimalSeparator = ","; + numberFormat.CurrencyDecimalSeparator = ","; double actual = Length.Parse(s, numberFormat).Meters; Assert.Equal(expected, actual); @@ -112,12 +119,14 @@ public void ParseMultiWordAbbreviations() } [Theory] - [InlineData("500 005 m", typeof(UnitsNetException))] // Quantity doesn't match number format. + [InlineData("500 005 m", typeof(FormatException))] // Quantity doesn't match number format. public void ParseWithCultureUsingDotAsThousandSeparators_ThrowsExceptionOnInvalidString(string s, Type expectedExceptionType) { var numberFormat = (NumberFormatInfo) CultureInfo.InvariantCulture.NumberFormat.Clone(); numberFormat.NumberGroupSeparator = "."; + numberFormat.CurrencyGroupSeparator = "."; numberFormat.NumberDecimalSeparator = ","; + numberFormat.CurrencyDecimalSeparator = ","; Assert.Throws(expectedExceptionType, () => Length.Parse(s, numberFormat)); } @@ -142,7 +151,7 @@ public void ParseLengthUnitUsEnglish_ThrowsExceptionOnInvalidString(string s, Ty [Theory] [InlineData("1 m", true)] - [InlineData("1 m 50 cm", true)] + [InlineData("1 m 50 cm", false)] [InlineData("2 kg", false)] [InlineData(null, false)] [InlineData("foo", false)] diff --git a/UnitsNet.Tests/UnitParserTests.cs b/UnitsNet.Tests/UnitParserTests.cs index 5270fcb328..a6d1dafd8f 100644 --- a/UnitsNet.Tests/UnitParserTests.cs +++ b/UnitsNet.Tests/UnitParserTests.cs @@ -48,7 +48,7 @@ public void Parse_UnknownAbbreviationThrowsUnitNotFoundException() } [Fact] - public void ShouldUseCorrectMicroSign() + public void ParseUnit_ShouldUseCorrectMicroSign() { // "\u00b5" = Micro sign Assert.Equal(AccelerationUnit.MicrometerPerSecondSquared, Acceleration.ParseUnit("\u00b5m/s²")); @@ -118,13 +118,5 @@ public void Parse_AmbiguousUnitsThrowsException() Assert.Equal("Cannot parse \"pt\" since it could be either of these: DtpPoint, PrinterPoint", exception1.Message); Assert.Equal("Cannot parse \"pt\" since it could be either of these: DtpPoint, PrinterPoint", exception2.Message); } - - [Fact] - public void Parse_UnambiguousUnitsDoesNotThrow() - { - var unit = Volume.Parse("1 l"); - - Assert.Equal(Volume.FromLiters(1), unit); - } } } diff --git a/UnitsNet/CustomCode/Quantities/Length.extra.cs b/UnitsNet/CustomCode/Quantities/Length.extra.cs index 118ccdb360..20bc2af780 100644 --- a/UnitsNet/CustomCode/Quantities/Length.extra.cs +++ b/UnitsNet/CustomCode/Quantities/Length.extra.cs @@ -1,16 +1,16 @@ // Copyright (c) 2013 Andreas Gullberg Larsen (andreas.larsen84@gmail.com). // https://github.com/angularsen/UnitsNet -// +// // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: -// +// // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. -// +// // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -20,6 +20,7 @@ // THE SOFTWARE. using System; +using System.Text.RegularExpressions; using JetBrains.Annotations; using UnitsNet.Units; @@ -68,6 +69,67 @@ public static Length FromFeetInches(double feet, double inches) // Windows Runtime Component does not allow operator overloads: https://msdn.microsoft.com/en-us/library/br230301.aspx #if !WINDOWS_UWP + + /// + /// Special parsing of feet/inches strings, commonly used. + /// 2 feet 4 inches is sometimes denoted as 2′−4″, 2′ 4″, 2′4″, 2 ft 4 in. + /// The apostrophe can be ′ and '. + /// The double prime can be ″ and ". + /// https://en.wikipedia.org/wiki/Foot_(unit) + /// + /// + /// Optionally specify the culture format numbers and localize unit abbreviations. Defaults to thread's culture. + /// Parsed length. + public static Length ParseFeetInches(string str, IFormatProvider formatProvider = null) + { + if (!TryParseFeetInches(str, out Length result, formatProvider)) + { + // A bit lazy, but I didn't want to duplicate this edge case implementation just to get more narrow exception descriptions. + throw new FormatException("Unable to parse feet and inches. Expected format \"2' 4\"\" or \"2 ft 4 in\". Whitespace is optional."); + } + + return result; + } + + /// + /// Special parsing of feet/inches strings, commonly used. + /// 2 feet 4 inches is sometimes denoted as 2′−4″, 2′ 4″, 2′4″, 2 ft 4 in. + /// The apostrophe can be ′ and '. + /// The double prime can be ″ and ". + /// https://en.wikipedia.org/wiki/Foot_(unit) + /// + /// + /// Parsed length. + /// Optionally specify the culture format numbers and localize unit abbreviations. Defaults to thread's culture. + public static bool TryParseFeetInches(string str, out Length result, IFormatProvider formatProvider = null) + { + // This succeeds if only feet or inches are given, not both + if (TryParseInternal(str, formatProvider, out result)) + return true; + + var quantityParser = QuantityParser.Default; + string footRegex = quantityParser.CreateRegexPatternForUnit(LengthUnit.Foot, formatProvider, matchEntireString: false); + string inchRegex = quantityParser.CreateRegexPatternForUnit(LengthUnit.Inch, formatProvider, matchEntireString: false); + + // Match entire string exactly + string pattern = $@"^(?{footRegex})\s?(?{inchRegex})$"; + + var match = new Regex(pattern, RegexOptions.Singleline).Match(str.Trim()); + if (!match.Success) return false; + + var feetGroup = match.Groups["feet"]; + var inchesGroup = match.Groups["inches"]; + if (TryParseInternal(feetGroup.Value, formatProvider, out Length feet) && + TryParseInternal(inchesGroup.Value, formatProvider, out Length inches)) + { + result = feet + inches; + return true; + } + + result = default; + return false; + } + public static Speed operator /(Length length, TimeSpan timeSpan) { return Speed.FromMetersPerSecond(length.Meters/timeSpan.TotalSeconds); diff --git a/UnitsNet/CustomCode/QuantityParser.cs b/UnitsNet/CustomCode/QuantityParser.cs index f4b1ea767d..41c02aecd7 100644 --- a/UnitsNet/CustomCode/QuantityParser.cs +++ b/UnitsNet/CustomCode/QuantityParser.cs @@ -34,24 +34,29 @@ namespace UnitsNet internal delegate bool TryParseUnitDelegate(string unitString, IFormatProvider formatProvider, out TUnitType unit) where TUnitType : Enum; #if !WINDOWS_UWP - internal delegate TQuantity QuantityFromDelegate(QuantityValue value, TUnitType fromUnit) + internal delegate TQuantity QuantityFromDelegate(QuantityValue value, TUnitType fromUnit) where TQuantity : IQuantity where TUnitType : Enum; #else - internal delegate TQuantity QuantityFromDelegate(double value, TUnitType fromUnit) + internal delegate TQuantity QuantityFromDelegate(double value, TUnitType fromUnit) where TQuantity : IQuantity where TUnitType : Enum; #endif internal class QuantityParser { - private readonly UnitAbbreviationsCache unitAbbreviationsCache; + /// + /// Allow integer, floating point or exponential number formats. + /// + private const NumberStyles ParseNumberStyles = NumberStyles.Number | NumberStyles.Float | NumberStyles.AllowExponent; + + private readonly UnitAbbreviationsCache _unitAbbreviationsCache; public static QuantityParser Default { get; } public QuantityParser(UnitAbbreviationsCache unitAbbreviationsCache) { - this.unitAbbreviationsCache = unitAbbreviationsCache ?? UnitAbbreviationsCache.Default; + _unitAbbreviationsCache = unitAbbreviationsCache ?? UnitAbbreviationsCache.Default; } static QuantityParser() @@ -63,14 +68,12 @@ static QuantityParser() internal TQuantity Parse([NotNull] string str, [CanBeNull] IFormatProvider formatProvider, [NotNull] ParseUnitDelegate parseUnit, - [NotNull] QuantityFromDelegate fromDelegate, - [NotNull] Func add) + [NotNull] QuantityFromDelegate fromDelegate) where TQuantity : IQuantity where TUnitType : Enum { if (str == null) throw new ArgumentNullException(nameof(str)); if (parseUnit == null) throw new ArgumentNullException(nameof(parseUnit)); - if (add == null) throw new ArgumentNullException(nameof(add)); var numFormat = formatProvider != null ? (NumberFormatInfo) formatProvider.GetFormat(typeof(NumberFormatInfo)) @@ -79,95 +82,16 @@ internal TQuantity Parse([NotNull] string str, if (numFormat == null) throw new InvalidOperationException($"No number format was found for the given format provider: {formatProvider}"); - var numRegex = string.Format(@"[\d., {0}{1}]*\d", - // allows digits, dots, commas, and spaces in the quantity (must end in digit) - numFormat.NumberGroupSeparator, // adds provided (or current) culture's group separator - numFormat.NumberDecimalSeparator); // adds provided (or current) culture's decimal separator - - const string exponentialRegex = @"(?:[eE][-+]?\d+)?)"; - - var unitAbbreviations = unitAbbreviationsCache.GetAllAbbreviations(typeof(TUnitType)) - .OrderByDescending(s => s.Length) // Important to order by length -- if "m" is before "mm" and the input is "mm", it will match just "m" and throw invalid string error - .Select(Regex.Escape) // Escape special regex characters - .ToArray(); - - var unitsRegex = $"({String.Join("|", unitAbbreviations)})"; - - var regexString = string.Format(@"(?:\s*(?[-+]?{0}{1}{2}{3})?{4}{5}", - numRegex, // capture base (integral) Quantity value - exponentialRegex, // capture exponential (if any), end of Quantity capturing - @"\s?", // ignore whitespace (allows both "1kg", "1 kg") - $@"(?{unitsRegex})", // capture Unit by list of abbreviations - @"(and)?,?", // allow "and" & "," separators between quantities - @"(?[a-z]*)?"); // capture invalid input - - var quantities = ParseWithRegex(regexString, str, parseUnit, fromDelegate, formatProvider); - if (quantities.Count == 0) - { - throw new ArgumentException( - "Expected string to have at least one pair of quantity and unit in the format" - + " \"<quantity> <unit>\". Eg. \"5.5 m\" or \"1ft 2in\""); - } - - return quantities.Aggregate(add); - } - - /// - /// Parse a string given a particular regular expression. - /// - /// Error parsing string. - private static List ParseWithRegex(string regexString, string str, ParseUnitDelegate parseUnit, - QuantityFromDelegate fromDelegate, IFormatProvider formatProvider = null) - where TQuantity : IQuantity - where TUnitType : Enum - { - var regex = new Regex(regexString); - var matches = regex.Matches(str.Trim()); - var converted = new List(); + var regex = CreateRegexForQuantity(formatProvider); - foreach (Match match in matches) + if (!ExtractValueAndUnit(regex, str, out var valueString, out var unitString)) { - var groups = match.Groups; - - var valueString = groups["value"].Value; - var unitString = groups["unit"].Value; - if (groups["invalid"].Value != string.Empty) - { - var newEx = new UnitsNetException("Invalid string detected: " + groups["invalid"].Value); - newEx.Data["input"] = str; - newEx.Data["matched value"] = valueString; - newEx.Data["matched unit"] = unitString; - newEx.Data["formatprovider"] = formatProvider?.ToString(); - throw newEx; - } - - if ((valueString == string.Empty) && (unitString == string.Empty)) - continue; - - try - { - var value = double.Parse(valueString, formatProvider); - var parsedUnit = parseUnit(unitString, formatProvider); - var quantity = fromDelegate(value, parsedUnit); - - converted.Add(quantity); - } - catch (AmbiguousUnitParseException) - { - throw; - } - catch (Exception ex) - { - var newEx = new UnitsNetException("Error parsing string.", ex); - newEx.Data["input"] = str; - newEx.Data["matched value"] = valueString; - newEx.Data["matched unit"] = unitString; - newEx.Data["formatprovider"] = formatProvider?.ToString(); - throw newEx; - } + var ex = new FormatException("Unable to parse quantity. Expected the form \"{value} {unit abbreviation}\", such as \"5.5 m\". The spacing is optional."); + ex.Data["input"] = str; + throw ex; } - return converted; + return ParseWithRegex(valueString, unitString, parseUnit, fromDelegate, formatProvider); } [SuppressMessage("ReSharper", "UseStringInterpolation")] @@ -175,15 +99,13 @@ internal bool TryParse([NotNull] string str, [CanBeNull] IFormatProvider formatProvider, [NotNull] TryParseUnitDelegate parseUnit, [NotNull] QuantityFromDelegate fromDelegate, - [NotNull] Func add, out TQuantity value) + out TQuantity result) where TQuantity : IQuantity where TUnitType : Enum { - value = default(TQuantity); + result = default; if(string.IsNullOrWhiteSpace(str)) return false; - if(parseUnit == null) return false; - if(add == null) return false; var numFormat = formatProvider != null ? (NumberFormatInfo) formatProvider.GetFormat(typeof(NumberFormatInfo)) @@ -192,73 +114,110 @@ internal bool TryParse([NotNull] string str, if(numFormat == null) return false; - var numRegex = string.Format(@"[\d., {0}{1}]*\d", - // allows digits, dots, commas, and spaces in the quantity (must end in digit) - numFormat.NumberGroupSeparator, // adds provided (or current) culture's group separator - numFormat.NumberDecimalSeparator); // adds provided (or current) culture's decimal separator + var regex = CreateRegexForQuantity(formatProvider); - const string exponentialRegex = @"(?:[eE][-+]?\d+)?)"; + if (!ExtractValueAndUnit(regex, str, out var valueString, out var unitString)) + return false; - var unitAbbreviations = unitAbbreviationsCache.GetAllAbbreviations(typeof(TUnitType)) - .OrderByDescending(s => s.Length) // Important to order by length -- if "m" is before "mm" and the input is "mm", it will match just "m" and throw invalid string error - .Select(Regex.Escape) // Escape special regex characters - .ToArray(); + return TryParseWithRegex(valueString, unitString, parseUnit, fromDelegate, formatProvider, out result); + } - var unitsRegex = $"({String.Join("|", unitAbbreviations)})"; + internal string CreateRegexPatternForUnit( + TUnitType unit, + IFormatProvider formatProvider, + bool matchEntireString = true) + where TUnitType : Enum + { + var unitAbbreviations = _unitAbbreviationsCache.GetUnitAbbreviations(unit, formatProvider); + var pattern = GetRegexPatternForUnitAbbreviations(unitAbbreviations); + return matchEntireString ? $"^{pattern}$" : pattern; + } - var regexString = string.Format(@"(?:\s*(?[-+]?{0}{1}{2}{3})?{4}{5}", - numRegex, // capture base (integral) Quantity value - exponentialRegex, // capture exponential (if any), end of Quantity capturing - @"\s?", // ignore whitespace (allows both "1kg", "1 kg") - $@"(?{unitsRegex})", // capture Unit by list of abbreviations - @"(and)?,?", // allow "and" & "," separators between quantities - @"(?[a-z]*)?"); // capture invalid input + private static string GetRegexPatternForUnitAbbreviations(IEnumerable abbreviations) + { + var orderedAbbreviations = abbreviations + .OrderByDescending(s => s.Length) // Important to order by length -- if "m" is before "mm" and the input is "mm", it will match just "m" + .Select(Regex.Escape) // Escape special regex characters + .ToArray(); - if(!TryParseWithRegex(regexString, str, parseUnit, fromDelegate, formatProvider, out var quantities)) - return false; + var abbreviationsPiped = $"{string.Join("|", orderedAbbreviations)}"; + return $@"(?.*?)\s?(?{abbreviationsPiped})"; + } - value = quantities.Aggregate(add); - return true; + /// + /// Parse a string given a particular regular expression. + /// + /// Error parsing string. + private static TQuantity ParseWithRegex(string valueString, + string unitString, + ParseUnitDelegate parseUnit, + QuantityFromDelegate fromDelegate, + IFormatProvider formatProvider) + where TQuantity : IQuantity + where TUnitType : Enum + { + var value = double.Parse(valueString, ParseNumberStyles, formatProvider); + var parsedUnit = parseUnit(unitString, formatProvider); + return fromDelegate(value, parsedUnit); } /// /// Parse a string given a particular regular expression. /// /// Error parsing string. - private static bool TryParseWithRegex(string regexString, string str, TryParseUnitDelegate tryParseUnit, - QuantityFromDelegate fromDelegate, IFormatProvider formatProvider, out List converted) + private static bool TryParseWithRegex(string valueString, + string unitString, + TryParseUnitDelegate tryParseUnit, + QuantityFromDelegate fromDelegate, + IFormatProvider formatProvider, + out TQuantity result) where TQuantity : IQuantity where TUnitType : Enum { - converted = new List(); + result = default; - var regex = new Regex(regexString); - var matches = regex.Matches(str.Trim()); + if (!double.TryParse(valueString, ParseNumberStyles, formatProvider, out var value)) + return false; - foreach(Match match in matches) - { - var groups = match.Groups; + if (!tryParseUnit(unitString, formatProvider, out var parsedUnit)) + return false; - var valueString = groups["value"].Value; - var unitString = groups["unit"].Value; - if(groups["invalid"].Value != string.Empty) - return false; + result = fromDelegate(value, parsedUnit); + return true; + } - if((valueString == string.Empty) && (unitString == string.Empty)) - continue; + private static bool ExtractValueAndUnit(Regex regex, string str, out string valueString, out string unitString) + { + var match = regex.Match(str.Trim()); + var groups = match.Groups; - if(!double.TryParse(valueString, NumberStyles.Any, formatProvider, out var value)) - return false; + var valueGroup = groups["value"]; + var unitGroup = groups["unit"]; + if (!valueGroup.Success || !unitGroup.Success) + { + valueString = null; + unitString = null; + return false; + } - if(!tryParseUnit(unitString, formatProvider, out var parsedUnit)) - return false; + valueString = valueGroup.Value; + unitString = unitGroup.Value; + return true; + } - var quantity = fromDelegate(value, parsedUnit); + private string CreateRegexPatternForQuantity(IFormatProvider formatProvider) where TUnitType : Enum + { + var unitAbbreviations = _unitAbbreviationsCache.GetAllUnitAbbreviationsForQuantity(typeof(TUnitType), formatProvider); + var pattern = GetRegexPatternForUnitAbbreviations(unitAbbreviations); - converted.Add(quantity); - } + // Match entire string exactly + return $"^{pattern}$"; + } - return true; + private Regex CreateRegexForQuantity([CanBeNull] IFormatProvider formatProvider) where TUnitType : Enum + { + var pattern = CreateRegexPatternForQuantity(formatProvider); + return new Regex(pattern, RegexOptions.Singleline); } } } diff --git a/UnitsNet/CustomCode/UnitAbbreviationsCache.cs b/UnitsNet/CustomCode/UnitAbbreviationsCache.cs index ee4523084d..7b7ec1cdd1 100644 --- a/UnitsNet/CustomCode/UnitAbbreviationsCache.cs +++ b/UnitsNet/CustomCode/UnitAbbreviationsCache.cs @@ -34,10 +34,10 @@ namespace UnitsNet { public sealed partial class UnitAbbreviationsCache { - private Dictionary looksupsForCulture; + private readonly Dictionary _lookupsForCulture; /// - /// Fallback culture used by and + /// Fallback culture used by and /// if no abbreviations are found with a given culture. /// /// @@ -51,7 +51,7 @@ public sealed partial class UnitAbbreviationsCache public UnitAbbreviationsCache() { - looksupsForCulture = new Dictionary(); + _lookupsForCulture = new Dictionary(); LoadGeneratedAbbreviations(); } @@ -143,8 +143,8 @@ void MapUnitToAbbreviation(Type unitType, int unitValue, IFormatProvider formatP formatProvider = formatProvider ?? GlobalConfiguration.DefaultCulture; - if(!looksupsForCulture.TryGetValue(formatProvider, out var quantitiesForProvider)) - quantitiesForProvider = looksupsForCulture[formatProvider] = new UnitTypeToLookup(); + if(!_lookupsForCulture.TryGetValue(formatProvider, out var quantitiesForProvider)) + quantitiesForProvider = _lookupsForCulture[formatProvider] = new UnitTypeToLookup(); if(!quantitiesForProvider.TryGetValue(unitType, out var unitToAbbreviations)) unitToAbbreviations = quantitiesForProvider[unitType] = new UnitValueAbbreviationLookup(); @@ -245,9 +245,9 @@ string GetDefaultAbbreviation(Type unitType, int unitValue, IFormatProvider form #else public #endif - string[] GetAllAbbreviations(TUnitType unit, IFormatProvider formatProvider = null) where TUnitType : Enum + string[] GetUnitAbbreviations(TUnitType unit, IFormatProvider formatProvider = null) where TUnitType : Enum { - return GetAllAbbreviations(typeof(TUnitType), formatProvider); + return GetUnitAbbreviations(typeof(TUnitType), Convert.ToInt32(unit), formatProvider); } /// @@ -263,24 +263,24 @@ string[] GetAllAbbreviations(TUnitType unit, IFormatProvider formatPr #else public #endif - string[] GetAllAbbreviations(Type unitType, int unitValue, IFormatProvider formatProvider = null) + string[] GetUnitAbbreviations(Type unitType, int unitValue, IFormatProvider formatProvider = null) { formatProvider = formatProvider ?? GlobalConfiguration.DefaultCulture; if(!TryGetUnitValueAbbreviationLookup(unitType, formatProvider, out var lookup)) - return formatProvider != FallbackCulture ? GetAllAbbreviations(unitType, unitValue, FallbackCulture) : new string[] { }; + return formatProvider != FallbackCulture ? GetUnitAbbreviations(unitType, unitValue, FallbackCulture) : new string[] { }; var abbreviations = lookup.GetAbbreviationsForUnit(unitValue); if(abbreviations.Count == 0) - return formatProvider != FallbackCulture ? GetAllAbbreviations(unitType, unitValue, FallbackCulture) : new string[] { }; + return formatProvider != FallbackCulture ? GetUnitAbbreviations(unitType, unitValue, FallbackCulture) : new string[] { }; return abbreviations.ToArray(); } /// - /// Get all abbreviations for unit. + /// Get all abbreviations for all units of a quantity. /// - /// Enum type for unit. + /// Enum type for unit. /// The format provider to use for lookup. Defaults to if null. /// Unit abbreviations associated with unit. [PublicAPI] @@ -289,14 +289,14 @@ string[] GetAllAbbreviations(Type unitType, int unitValue, IFormatProvider forma #else public #endif - string[] GetAllAbbreviations(Type unitType, IFormatProvider formatProvider = null) + string[] GetAllUnitAbbreviationsForQuantity(Type unitEnumType, IFormatProvider formatProvider = null) { formatProvider = formatProvider ?? GlobalConfiguration.DefaultCulture; - if(!TryGetUnitValueAbbreviationLookup(unitType, formatProvider, out var lookup)) - return formatProvider != FallbackCulture ? GetAllAbbreviations(unitType, FallbackCulture) : new string[] { }; + if(!TryGetUnitValueAbbreviationLookup(unitEnumType, formatProvider, out var lookup)) + return formatProvider != FallbackCulture ? GetAllUnitAbbreviationsForQuantity(unitEnumType, FallbackCulture) : new string[] { }; - return lookup.GetAllAbbreviations(); + return lookup.GetAllUnitAbbreviationsForQuantity(); } internal bool TryGetUnitValueAbbreviationLookup(Type unitType, IFormatProvider formatProvider, out UnitValueAbbreviationLookup unitToAbbreviations) @@ -305,7 +305,7 @@ internal bool TryGetUnitValueAbbreviationLookup(Type unitType, IFormatProvider f formatProvider = formatProvider ?? GlobalConfiguration.DefaultCulture; - if(!looksupsForCulture.TryGetValue(formatProvider, out var quantitiesForProvider)) + if(!_lookupsForCulture.TryGetValue(formatProvider, out var quantitiesForProvider)) return formatProvider != FallbackCulture ? TryGetUnitValueAbbreviationLookup(unitType, FallbackCulture, out unitToAbbreviations) : false; if(!quantitiesForProvider.TryGetValue(unitType, out unitToAbbreviations)) diff --git a/UnitsNet/CustomCode/UnitParser.cs b/UnitsNet/CustomCode/UnitParser.cs index f31f39b7ec..cc265b585c 100644 --- a/UnitsNet/CustomCode/UnitParser.cs +++ b/UnitsNet/CustomCode/UnitParser.cs @@ -87,7 +87,7 @@ object Parse(string unitAbbreviation, Type unitType, [CanBeNull] IFormatProvider if(!_unitAbbreviationsCache.TryGetUnitValueAbbreviationLookup(unitType, formatProvider, out var abbreviations)) throw new UnitNotFoundException($"No abbreviations defined for unit type [{unitType}] for culture [{formatProvider}]."); - var unitIntValues = abbreviations.GetUnitsForAbbreviation(unitAbbreviation); + var unitIntValues = abbreviations.GetUnitsForAbbreviation(unitAbbreviation.Trim()); switch (unitIntValues.Count) { @@ -181,7 +181,7 @@ bool TryParse(string unitAbbreviation, Type unitType, [CanBeNull] IFormatProvide if(!_unitAbbreviationsCache.TryGetUnitValueAbbreviationLookup(unitType, formatProvider, out var abbreviations)) return false; - var unitIntValues = abbreviations.GetUnitsForAbbreviation(unitAbbreviation); + var unitIntValues = abbreviations.GetUnitsForAbbreviation(unitAbbreviation.Trim()); if(unitIntValues.Count != 1) return false; diff --git a/UnitsNet/CustomCode/UnitValueAbbreviationLookup.cs b/UnitsNet/CustomCode/UnitValueAbbreviationLookup.cs index 012abee1b5..18b8e8c171 100644 --- a/UnitsNet/CustomCode/UnitValueAbbreviationLookup.cs +++ b/UnitsNet/CustomCode/UnitValueAbbreviationLookup.cs @@ -40,7 +40,7 @@ internal UnitValueAbbreviationLookup() abbreviationToUnitMap = new AbbreviationToUnitMap(); } - internal string[] GetAllAbbreviations() + internal string[] GetAllUnitAbbreviationsForQuantity() { return unitToAbbreviationMap.Values.SelectMany((abbreviations) => { diff --git a/UnitsNet/GeneratedCode/Quantities/Level.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/Level.NetFramework.g.cs index becab22f5c..92fb22feab 100644 --- a/UnitsNet/GeneratedCode/Quantities/Level.NetFramework.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Level.NetFramework.g.cs @@ -47,43 +47,9 @@ namespace UnitsNet /// Level is the logarithm of the ratio of a quantity Q to a reference value of that quantity, Q₀, expressed in dimensionless units. /// // ReSharper disable once PartialTypeWithSinglePart + public partial struct Level : IQuantity, IComparable, IComparable { - /// - /// The numeric value this quantity was constructed with. - /// - private readonly double _value; - - /// - /// The unit this quantity was constructed with. - /// - private readonly LevelUnit? _unit; - - /// - /// The unit this quantity was constructed with -or- if default ctor was used. - /// - public LevelUnit Unit => _unit.GetValueOrDefault(BaseUnit); - - static Level() - { - } - - /// - /// Creates the quantity with the given numeric value and unit. - /// - /// The numeric value to contruct this quantity with. - /// The unit representation to contruct this quantity with. - /// Value parameter cannot be named 'value' due to constraint when targeting Windows Runtime Component. - /// If value is NaN or Infinity. - public Level(double numericValue, LevelUnit unit) - { - if(unit == LevelUnit.Undefined) - throw new ArgumentException("The quantity can not be created with an undefined unit.", nameof(unit)); - - _value = Guard.EnsureValidNumber(numericValue, nameof(numericValue)); - _unit = unit; - } - /// /// The numeric value this quantity was constructed with. /// @@ -101,43 +67,6 @@ public static string GetAbbreviation(LevelUnit unit, [CanBeNull] IFormatProvider return UnitAbbreviationsCache.Default.GetDefaultAbbreviation(unit, provider); } - #region Properties - - /// - /// The of this quantity. - /// - public static QuantityType QuantityType => QuantityType.Level; - - /// - /// The base unit of Level, which is Decibel. All conversions go via this value. - /// - public static LevelUnit BaseUnit => LevelUnit.Decibel; - - /// - /// The of this quantity. - /// - public static BaseDimensions BaseDimensions - { - get; - } - - /// - /// All units of measurement for the Level quantity. - /// - public static LevelUnit[] Units { get; } = Enum.GetValues(typeof(LevelUnit)).Cast().Except(new LevelUnit[]{ LevelUnit.Undefined }).ToArray(); - - /// - /// Get Level in Decibels. - /// - public double Decibels => As(LevelUnit.Decibel); - - /// - /// Get Level in Nepers. - /// - public double Nepers => As(LevelUnit.Neper); - - #endregion - #region Logarithmic Arithmetic Operators public static Level operator -(Level right) diff --git a/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs b/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs index 7325754b68..da7fe81ca9 100644 --- a/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs +++ b/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs @@ -458,9 +458,9 @@ private static readonly Tuple[] GeneratedLocalizati Tuple.Create("en-US", typeof(LengthUnit), (int)LengthUnit.DtpPica, new string[]{"pica"}), Tuple.Create("en-US", typeof(LengthUnit), (int)LengthUnit.DtpPoint, new string[]{"pt"}), Tuple.Create("en-US", typeof(LengthUnit), (int)LengthUnit.Fathom, new string[]{"fathom"}), - Tuple.Create("en-US", typeof(LengthUnit), (int)LengthUnit.Foot, new string[]{"ft", "'"}), + Tuple.Create("en-US", typeof(LengthUnit), (int)LengthUnit.Foot, new string[]{"ft", "'", "′"}), Tuple.Create("ru-RU", typeof(LengthUnit), (int)LengthUnit.Foot, new string[]{"фут"}), - Tuple.Create("en-US", typeof(LengthUnit), (int)LengthUnit.Inch, new string[]{"in", "\""}), + Tuple.Create("en-US", typeof(LengthUnit), (int)LengthUnit.Inch, new string[]{"in", "\"", "″"}), Tuple.Create("ru-RU", typeof(LengthUnit), (int)LengthUnit.Inch, new string[]{"дюйм"}), Tuple.Create("en-US", typeof(LengthUnit), (int)LengthUnit.Kilometer, new string[]{"km"}), Tuple.Create("ru-RU", typeof(LengthUnit), (int)LengthUnit.Kilometer, new string[]{"км"}), diff --git a/UnitsNet/Scripts/Include-GenerateQuantitySourceCodeCommon.ps1 b/UnitsNet/Scripts/Include-GenerateQuantitySourceCodeCommon.ps1 index 696c788078..1ac1d02089 100644 --- a/UnitsNet/Scripts/Include-GenerateQuantitySourceCodeCommon.ps1 +++ b/UnitsNet/Scripts/Include-GenerateQuantitySourceCodeCommon.ps1 @@ -479,8 +479,7 @@ if ($obsoleteAttribute) provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.Parse<$quantityName, $unitEnumName>(str, provider, ParseUnitInternal, From, - (x, y) => From(x.$baseUnitPluralName + y.$baseUnitPluralName, BaseUnit)); + return QuantityParser.Default.Parse<$quantityName, $unitEnumName>(str, provider, ParseUnitInternal, From); } /// @@ -502,8 +501,7 @@ if ($obsoleteAttribute) provider = provider ?? GlobalConfiguration.DefaultCulture; - return QuantityParser.Default.TryParse<$quantityName, $unitEnumName>(str, provider, TryParseUnitInternal, From, - (x, y) => From(x.$baseUnitPluralName + y.$baseUnitPluralName, BaseUnit), out result); + return QuantityParser.Default.TryParse<$quantityName, $unitEnumName>(str, provider, TryParseUnitInternal, From, out result); } /// @@ -520,7 +518,7 @@ if ($obsoleteAttribute) { if (str == null) throw new ArgumentNullException(nameof(str)); - var unit = UnitParser.Default.Parse<$unitEnumName>(str.Trim(), provider); + var unit = UnitParser.Default.Parse<$unitEnumName>(str, provider); if (unit == $unitEnumName.Undefined) { @@ -550,7 +548,7 @@ if ($obsoleteAttribute) if(string.IsNullOrWhiteSpace(str)) return false; - if(!UnitParser.Default.TryParse<$unitEnumName>(str.Trim(), provider, out unit)) + if(!UnitParser.Default.TryParse<$unitEnumName>(str, provider, out unit)) return false; if(unit == $unitEnumName.Undefined)