Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into release/v6
Browse files Browse the repository at this point in the history
# Conflicts:
#	CodeGen/CodeGen.csproj
#	CodeGen/Generators/NanoFrameworkGen/NuspecGenerator.cs
#	CodeGen/Generators/UnitsNetGen/UnitTestBaseClassGenerator.cs
#	Common/UnitEnumValues.g.json
#	UnitsNet.Benchmark/UnitsNet.Benchmark.csproj
#	UnitsNet.NanoFramework/GeneratedCode/AbsorbedDoseOfIonizingRadiation/UnitsNet.NanoFramework.AbsorbedDoseOfIonizingRadiation.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Acceleration/UnitsNet.NanoFramework.Acceleration.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/AmountOfSubstance/UnitsNet.NanoFramework.AmountOfSubstance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/AmplitudeRatio/UnitsNet.NanoFramework.AmplitudeRatio.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Angle/UnitsNet.NanoFramework.Angle.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ApparentEnergy/UnitsNet.NanoFramework.ApparentEnergy.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ApparentPower/UnitsNet.NanoFramework.ApparentPower.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Area/UnitsNet.NanoFramework.Area.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/AreaDensity/UnitsNet.NanoFramework.AreaDensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/AreaMomentOfInertia/UnitsNet.NanoFramework.AreaMomentOfInertia.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/BitRate/UnitsNet.NanoFramework.BitRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/BrakeSpecificFuelConsumption/UnitsNet.NanoFramework.BrakeSpecificFuelConsumption.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Capacitance/UnitsNet.NanoFramework.Capacitance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/CoefficientOfThermalExpansion/UnitsNet.NanoFramework.CoefficientOfThermalExpansion.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Compressibility/UnitsNet.NanoFramework.Compressibility.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Density/UnitsNet.NanoFramework.Density.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Duration/UnitsNet.NanoFramework.Duration.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/DynamicViscosity/UnitsNet.NanoFramework.DynamicViscosity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricAdmittance/UnitsNet.NanoFramework.ElectricAdmittance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricCharge/UnitsNet.NanoFramework.ElectricCharge.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricChargeDensity/UnitsNet.NanoFramework.ElectricChargeDensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricConductance/UnitsNet.NanoFramework.ElectricConductance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricConductivity/UnitsNet.NanoFramework.ElectricConductivity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricCurrent/UnitsNet.NanoFramework.ElectricCurrent.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricCurrentDensity/UnitsNet.NanoFramework.ElectricCurrentDensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricCurrentGradient/UnitsNet.NanoFramework.ElectricCurrentGradient.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricField/UnitsNet.NanoFramework.ElectricField.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricInductance/UnitsNet.NanoFramework.ElectricInductance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricPotential/UnitsNet.NanoFramework.ElectricPotential.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricPotentialAc/UnitsNet.NanoFramework.ElectricPotentialAc.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricPotentialChangeRate/UnitsNet.NanoFramework.ElectricPotentialChangeRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricPotentialDc/UnitsNet.NanoFramework.ElectricPotentialDc.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricResistance/UnitsNet.NanoFramework.ElectricResistance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricResistivity/UnitsNet.NanoFramework.ElectricResistivity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ElectricSurfaceChargeDensity/UnitsNet.NanoFramework.ElectricSurfaceChargeDensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Energy/UnitsNet.NanoFramework.Energy.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/EnergyDensity/UnitsNet.NanoFramework.EnergyDensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Entropy/UnitsNet.NanoFramework.Entropy.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Force/UnitsNet.NanoFramework.Force.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ForceChangeRate/UnitsNet.NanoFramework.ForceChangeRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ForcePerLength/UnitsNet.NanoFramework.ForcePerLength.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Frequency/UnitsNet.NanoFramework.Frequency.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/FuelEfficiency/UnitsNet.NanoFramework.FuelEfficiency.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/HeatFlux/UnitsNet.NanoFramework.HeatFlux.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/HeatTransferCoefficient/UnitsNet.NanoFramework.HeatTransferCoefficient.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Illuminance/UnitsNet.NanoFramework.Illuminance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Impulse/UnitsNet.NanoFramework.Impulse.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Information/UnitsNet.NanoFramework.Information.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Irradiance/UnitsNet.NanoFramework.Irradiance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Irradiation/UnitsNet.NanoFramework.Irradiation.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Jerk/UnitsNet.NanoFramework.Jerk.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/KinematicViscosity/UnitsNet.NanoFramework.KinematicViscosity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/LapseRate/UnitsNet.NanoFramework.LapseRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/LeakRate/UnitsNet.NanoFramework.LeakRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Length/UnitsNet.NanoFramework.Length.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Level/UnitsNet.NanoFramework.Level.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/LinearDensity/UnitsNet.NanoFramework.LinearDensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/LinearPowerDensity/UnitsNet.NanoFramework.LinearPowerDensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Luminance/UnitsNet.NanoFramework.Luminance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Luminosity/UnitsNet.NanoFramework.Luminosity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/LuminousFlux/UnitsNet.NanoFramework.LuminousFlux.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/LuminousIntensity/UnitsNet.NanoFramework.LuminousIntensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MagneticField/UnitsNet.NanoFramework.MagneticField.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MagneticFlux/UnitsNet.NanoFramework.MagneticFlux.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Magnetization/UnitsNet.NanoFramework.Magnetization.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Mass/UnitsNet.NanoFramework.Mass.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MassConcentration/UnitsNet.NanoFramework.MassConcentration.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MassFlow/UnitsNet.NanoFramework.MassFlow.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MassFlux/UnitsNet.NanoFramework.MassFlux.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MassFraction/UnitsNet.NanoFramework.MassFraction.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MassMomentOfInertia/UnitsNet.NanoFramework.MassMomentOfInertia.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Molality/UnitsNet.NanoFramework.Molality.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MolarEnergy/UnitsNet.NanoFramework.MolarEnergy.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MolarEntropy/UnitsNet.NanoFramework.MolarEntropy.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MolarFlow/UnitsNet.NanoFramework.MolarFlow.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/MolarMass/UnitsNet.NanoFramework.MolarMass.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Molarity/UnitsNet.NanoFramework.Molarity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Permeability/UnitsNet.NanoFramework.Permeability.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Permittivity/UnitsNet.NanoFramework.Permittivity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/PorousMediumPermeability/UnitsNet.NanoFramework.PorousMediumPermeability.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Power/UnitsNet.NanoFramework.Power.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/PowerDensity/UnitsNet.NanoFramework.PowerDensity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/PowerRatio/UnitsNet.NanoFramework.PowerRatio.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Pressure/UnitsNet.NanoFramework.Pressure.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/PressureChangeRate/UnitsNet.NanoFramework.PressureChangeRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Properties/AssemblyInfo.cs
#	UnitsNet.NanoFramework/GeneratedCode/Quantities/RadiationEquivalentDoseRate.g.cs
#	UnitsNet.NanoFramework/GeneratedCode/RadiationEquivalentDose/UnitsNet.NanoFramework.RadiationEquivalentDose.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/RadiationEquivalentDoseRate/UnitsNet.NanoFramework.RadiationEquivalentDoseRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/RadiationExposure/UnitsNet.NanoFramework.RadiationExposure.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Radioactivity/UnitsNet.NanoFramework.Radioactivity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Ratio/UnitsNet.NanoFramework.Ratio.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/RatioChangeRate/UnitsNet.NanoFramework.RatioChangeRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ReactiveEnergy/UnitsNet.NanoFramework.ReactiveEnergy.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ReactivePower/UnitsNet.NanoFramework.ReactivePower.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ReciprocalArea/UnitsNet.NanoFramework.ReciprocalArea.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ReciprocalLength/UnitsNet.NanoFramework.ReciprocalLength.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/RelativeHumidity/UnitsNet.NanoFramework.RelativeHumidity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/RotationalAcceleration/UnitsNet.NanoFramework.RotationalAcceleration.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/RotationalSpeed/UnitsNet.NanoFramework.RotationalSpeed.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/RotationalStiffness/UnitsNet.NanoFramework.RotationalStiffness.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/RotationalStiffnessPerLength/UnitsNet.NanoFramework.RotationalStiffnessPerLength.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Scalar/UnitsNet.NanoFramework.Scalar.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/SolidAngle/UnitsNet.NanoFramework.SolidAngle.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/SpecificEnergy/UnitsNet.NanoFramework.SpecificEnergy.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/SpecificEntropy/UnitsNet.NanoFramework.SpecificEntropy.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/SpecificFuelConsumption/UnitsNet.NanoFramework.SpecificFuelConsumption.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/SpecificVolume/UnitsNet.NanoFramework.SpecificVolume.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/SpecificWeight/UnitsNet.NanoFramework.SpecificWeight.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Speed/UnitsNet.NanoFramework.Speed.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/StandardVolumeFlow/UnitsNet.NanoFramework.StandardVolumeFlow.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Temperature/UnitsNet.NanoFramework.Temperature.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/TemperatureChangeRate/UnitsNet.NanoFramework.TemperatureChangeRate.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/TemperatureDelta/UnitsNet.NanoFramework.TemperatureDelta.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/TemperatureGradient/UnitsNet.NanoFramework.TemperatureGradient.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ThermalConductivity/UnitsNet.NanoFramework.ThermalConductivity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/ThermalInsulance/UnitsNet.NanoFramework.ThermalInsulance.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Torque/UnitsNet.NanoFramework.Torque.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Turbidity/UnitsNet.NanoFramework.Turbidity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/VitaminA/UnitsNet.NanoFramework.VitaminA.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/Volume/UnitsNet.NanoFramework.Volume.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/VolumeConcentration/UnitsNet.NanoFramework.VolumeConcentration.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/VolumeFlow/UnitsNet.NanoFramework.VolumeFlow.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/VolumeFlowPerArea/UnitsNet.NanoFramework.VolumeFlowPerArea.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/VolumePerLength/UnitsNet.NanoFramework.VolumePerLength.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/VolumetricHeatCapacity/UnitsNet.NanoFramework.VolumetricHeatCapacity.nuspec
#	UnitsNet.NanoFramework/GeneratedCode/WarpingMomentOfInertia/UnitsNet.NanoFramework.WarpingMomentOfInertia.nuspec
#	UnitsNet.NumberExtensions.Tests/UnitsNet.NumberExtensions.Tests.csproj
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToApparentEnergyExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToApparentPowerExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToCapacitanceExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToElectricAdmittanceExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToElectricConductanceExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToElectricPotentialAcExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToElectricPotentialDcExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToElectricResistanceExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToRadiationEquivalentDoseRateExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToReactiveEnergyExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToReactivePowerExtensions.g.cs
#	UnitsNet.NumberExtensions/GeneratedCode/NumberToTemperatureChangeRateExtensions.g.cs
#	UnitsNet.NumberExtensions/UnitsNet.NumberExtensions.csproj
#	UnitsNet.Serialization.JsonNet.Tests/UnitsNet.Serialization.JsonNet.Tests.csproj
#	UnitsNet.Serialization.JsonNet/UnitsNet.Serialization.JsonNet.csproj
#	UnitsNet.Tests/CustomCode/RadiationEquivalentDoseRateTests.cs
#	UnitsNet.Tests/CustomCode/RadiationEquivalentDoseTests.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/AngleTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/BitRateTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/CoefficientOfThermalExpansionTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/DensityTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/DynamicViscosityTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/ElectricAdmittanceTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/ElectricConductanceTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/ElectricResistanceTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/FuelEfficiencyTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/HeatFluxTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/HeatTransferCoefficientTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/InformationTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/MassConcentrationTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/MolarityTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/PowerTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/RadiationEquivalentDoseRateTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/SpecificEntropyTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/TemperatureChangeRateTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/ThermalConductivityTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/ThermalResistanceTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/TorquePerLengthTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/VolumeConcentrationTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/VolumeFlowTestsBase.g.cs
#	UnitsNet.Tests/GeneratedCode/TestsBase/VolumetricHeatCapacityTestsBase.g.cs
#	UnitsNet.Tests/UnitAbbreviationsCacheTests.cs
#	UnitsNet.Tests/UnitsNet.Tests.csproj
#	UnitsNet/CustomCode/Quantities/Power.extra.cs
#	UnitsNet/CustomCode/UnitParser.cs
#	UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDoseRate.g.cs
#	UnitsNet/GeneratedCode/Quantities/ThermalInsulance.g.cs
#	UnitsNet/GeneratedCode/Quantities/TorquePerLength.g.cs
#	UnitsNet/QuantityFormatter.cs
#	UnitsNet/UnitsNet.csproj
  • Loading branch information
angularsen committed Dec 29, 2024
2 parents 8164326 + bb1420e commit 108d44a
Show file tree
Hide file tree
Showing 213 changed files with 27,169 additions and 160 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/continious-benchmarking.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ jobs:
uses: actions/[email protected]

- name: Download Artifacts # The benchmark results are downloaded into a 'runtime' folder.
uses: actions/download-artifact@v1
uses: actions/download-artifact@v4.1.7
with:
name: UnitsNet Benchmarks (${{ matrix.runtime }})
path: ${{ matrix.runtime }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/run-benchmarks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ jobs:

# The benchmark results are downloaded into a 'runtime' folder.
- name: Download Artifacts
uses: actions/download-artifact@v1
uses: actions/download-artifact@v4.1.7
with:
name: ${{ github.event.inputs.benchmark-name }} (${{ github.event.inputs.runtimes }})
path: results
Expand Down
27 changes: 13 additions & 14 deletions CodeGen/Generators/UnitsNetGen/NumberExtensionsGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,11 @@

namespace CodeGen.Generators.UnitsNetGen
{
internal class NumberExtensionsGenerator : GeneratorBase
internal class NumberExtensionsGenerator(Quantity quantity) : GeneratorBase
{
private readonly Unit[] _units;
private readonly string _quantityName;

public NumberExtensionsGenerator(Quantity quantity)
{
if (quantity is null)
throw new ArgumentNullException(nameof(quantity));

_units = quantity.Units;
_quantityName = quantity.Name;
}
private readonly Quantity _quantity = quantity ?? throw new ArgumentNullException(nameof(quantity));
private readonly Unit[] _units = quantity.Units;
private readonly string _quantityName = quantity.Name;

public string Generate()
{
Expand All @@ -35,7 +27,10 @@ namespace UnitsNet.NumberExtensions.NumberTo{_quantityName}
{{
/// <summary>
/// A number to {_quantityName} Extensions
/// </summary>
/// </summary>");

Writer.WLIfText(1, GetObsoleteAttributeOrNull(_quantity));
Writer.WL(@$"
public static class NumberTo{_quantityName}Extensions
{{");

Expand All @@ -47,7 +42,8 @@ public static class NumberTo{_quantityName}Extensions
Writer.WL(2, $@"
/// <inheritdoc cref=""{_quantityName}.From{unit.PluralName}(double)"" />");

Writer.WLIfText(2, GetObsoleteAttributeOrNull(unit.ObsoleteText));
// Include obsolete text from the quantity per extension method, to make it visible when the class is not explicitly referenced in code.
Writer.WLIfText(2, GetObsoleteAttributeOrNull(unit.ObsoleteText ?? _quantity.ObsoleteText));

Writer.WL(2, $@"public static {_quantityName} {unit.PluralName}<T>(this T value)
where T : notnull
Expand All @@ -63,6 +59,9 @@ public static class NumberTo{_quantityName}Extensions
return Writer.ToString();
}

/// <inheritdoc cref="GetObsoleteAttributeOrNull(string)"/>
private static string? GetObsoleteAttributeOrNull(Quantity quantity) => GetObsoleteAttributeOrNull(quantity.ObsoleteText);

private static string? GetObsoleteAttributeOrNull(string? obsoleteText) =>
string.IsNullOrWhiteSpace(obsoleteText) ?
null :
Expand Down
2 changes: 2 additions & 0 deletions Common/UnitDefinitions/ApparentEnergy.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
"Name": "ApparentEnergy",
"BaseUnit": "VoltampereHour",
"XmlDocSummary": "A unit for expressing the integral of apparent power over time, equal to the product of 1 volt-ampere and 1 hour, or to 3600 joules.",
"XmlDocRemarks": "<c>ApparentEnergy</c> has been renamed to <c>ElectricApparentEnergy</c>, and will be removed in a later major version.",
"ObsoleteText": "ApparentEnergy has been renamed to ElectricApparentEnergy, and will be removed in a later major version.",
"BaseDimensions": {
"L": 2,
"M": 1,
Expand Down
2 changes: 2 additions & 0 deletions Common/UnitDefinitions/ApparentPower.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
"Name": "ApparentPower",
"BaseUnit": "Voltampere",
"XmlDocSummary": "Power engineers measure apparent power as the magnitude of the vector sum of active and reactive power. Apparent power is the product of the root-mean-square of voltage and current.",
"XmlDocRemarks": "<c>ApparentPower</c> has been renamed to <c>ElectricApparentPower</c>, and will be removed in a later major version.",
"ObsoleteText": "ApparentPower has been renamed to ElectricApparentPower, and will be removed in a later major version.",
"BaseDimensions": {
"L": 2,
"M": 1,
Expand Down
3 changes: 2 additions & 1 deletion Common/UnitDefinitions/Capacitance.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
"Name": "Capacitance",
"BaseUnit": "Farad",
"XmlDocSummary": "Capacitance is the ability of a body to store an electric charge.",
"XmlDocRemarks": "https://en.wikipedia.org/wiki/Capacitance",
"XmlDocRemarks": "<c>Capacitance</c> has been renamed to <c>ElectricCapacitance</c>, and will be removed in a later major version.",
"ObsoleteText": "Capacitance has been renamed to ElectricCapacitance, and will be removed in a later major version.",
"BaseDimensions": {
"L": -2,
"M": -1,
Expand Down
120 changes: 120 additions & 0 deletions Common/UnitDefinitions/DoseAreaProduct.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
{
"Name": "DoseAreaProduct",
"BaseUnit": "GraySquareMeter",
"XmlDocSummary": "It is defined as the absorbed dose multiplied by the area irradiated.",
"XmlDocRemarks": "https://en.wikipedia.org/wiki/Dose_area_product",
"BaseDimensions": {
"L": 4,
"T": -2
},
"Units": [
{
"SingularName": "GraySquareMeter",
"PluralName": "GraySquareMeters",
"BaseUnits": {
"L": "Meter",
"T": "Second"
},
"FromUnitToBaseFunc": "{x}",
"FromBaseToUnitFunc": "{x}",
"Prefixes": [
"Micro",
"Milli",
"Centi",
"Deci"
],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [
"Gy·m²"
]
},
{
"Culture": "ru-RU",
"Abbreviations": [
"Гр·м²"
]
}
]
},
{
"SingularName": "GraySquareDecimeter",
"PluralName": "GraySquareDecimeters",
"FromUnitToBaseFunc": "{x} / 100",
"FromBaseToUnitFunc": "{x} * 100",
"Prefixes": [
"Micro",
"Milli",
"Centi",
"Deci"
],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [
"Gy·dm²"
]
},
{
"Culture": "ru-RU",
"Abbreviations": [
"Гр·дм²"
]
}
]
},
{
"SingularName": "GraySquareCentimeter",
"PluralName": "GraySquareCentimeters",
"FromUnitToBaseFunc": "{x} / 10000",
"FromBaseToUnitFunc": "{x} * 10000",
"Prefixes": [
"Micro",
"Milli",
"Centi",
"Deci"
],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [
"Gy·cm²"
]
},
{
"Culture": "ru-RU",
"Abbreviations": [
"Гр·см²"
]
}
]
},
{
"SingularName": "GraySquareMillimeter",
"PluralName": "GraySquareMillimeters",
"FromUnitToBaseFunc": "{x} / 1000000",
"FromBaseToUnitFunc": "{x} * 1000000",
"Prefixes": [
"Micro",
"Milli",
"Centi",
"Deci"
],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [
"Gy·mm²"
]
},
{
"Culture": "ru-RU",
"Abbreviations": [
"Гр·мм²"
]
}
]
}
]
}
19 changes: 17 additions & 2 deletions Common/UnitDefinitions/ElectricAdmittance.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
{
"Name": "ElectricAdmittance",
"BaseUnit": "Siemens",
"XmlDocSummary": "Electric admittance is a measure of how easily a circuit or device will allow a current to flow. It is defined as the inverse of impedance. The SI unit of admittance is the siemens (symbol S).",
"XmlDocSummary": "Electric admittance is a measure of how easily a circuit or device will allow a current to flow by the combined effect of conductance and susceptance in a circuit. It is defined as the inverse of impedance. The SI unit of admittance is the siemens (symbol S).",
"XmlDocRemarks": "https://en.wikipedia.org/wiki/Electrical_admittance",
"ObsoleteText": "Admittance is a complex number, which is not currently supported by UnitsNet. Please use either ElectricConductance or ElectricSusceptance instead.",
"BaseDimensions": {
"L": -2,
"M": -1,
Expand All @@ -14,13 +16,26 @@
"PluralName": "Siemens",
"FromUnitToBaseFunc": "{x}",
"FromBaseToUnitFunc": "{x}",
"Prefixes": [ "Nano", "Micro", "Milli" ],
"Prefixes": [ "Nano", "Micro", "Milli", "Kilo", "Mega", "Giga", "Tera" ],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [ "S" ]
}
]
},
{
"SingularName": "Mho",
"PluralName": "Mhos",
"FromUnitToBaseFunc": "{x}",
"FromBaseToUnitFunc": "{x}",
"Prefixes": [ "Nano", "Micro", "Milli", "Kilo", "Mega", "Giga", "Tera" ],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [ "" ]
}
]
}
]
}
25 changes: 25 additions & 0 deletions Common/UnitDefinitions/ElectricApparentEnergy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"Name": "ElectricApparentEnergy",
"BaseUnit": "VoltampereHour",
"XmlDocSummary": "A unit for expressing the integral of apparent power over time, equal to the product of 1 volt-ampere and 1 hour, or to 3600 joules.",
"BaseDimensions": {
"L": 2,
"M": 1,
"T": -2
},
"Units": [
{
"SingularName": "VoltampereHour",
"PluralName": "VoltampereHours",
"FromUnitToBaseFunc": "{x}",
"FromBaseToUnitFunc": "{x}",
"Prefixes": [ "Kilo", "Mega" ],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [ "VAh" ]
}
]
}
]
}
26 changes: 26 additions & 0 deletions Common/UnitDefinitions/ElectricApparentPower.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"Name": "ElectricApparentPower",
"BaseUnit": "Voltampere",
"XmlDocSummary": "Power engineers measure apparent power as the magnitude of the vector sum of active and reactive power. It is the product of the root mean square voltage (in volts) and the root mean square current (in amperes).",
"XmlDocRemarks": "https://en.wikipedia.org/wiki/AC_power#Active,_reactive,_apparent,_and_complex_power_in_sinusoidal_steady-state",
"BaseDimensions": {
"L": 2,
"M": 1,
"T": -3
},
"Units": [
{
"SingularName": "Voltampere",
"PluralName": "Voltamperes",
"FromUnitToBaseFunc": "{x}",
"FromBaseToUnitFunc": "{x}",
"Prefixes": [ "Micro", "Milli", "Kilo", "Mega", "Giga" ],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [ "VA" ]
}
]
}
]
}
33 changes: 33 additions & 0 deletions Common/UnitDefinitions/ElectricCapacitance.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"Name": "ElectricCapacitance",
"BaseUnit": "Farad",
"XmlDocSummary": "Capacitance is the capacity of a material object or device to store electric charge.",
"XmlDocRemarks": "https://en.wikipedia.org/wiki/Capacitance",
"BaseDimensions": {
"L": -2,
"M": -1,
"T": 4,
"I": 2
},
"Units": [
{
"SingularName": "Farad",
"PluralName": "Farads",
"BaseUnits": {
"L": "Meter",
"M": "Kilogram",
"T": "Second",
"I": "Ampere"
},
"FromUnitToBaseFunc": "{x}",
"FromBaseToUnitFunc": "{x}",
"Prefixes": [ "Pico", "Nano", "Micro", "Milli", "Kilo", "Mega" ],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [ "F" ]
}
]
}
]
}
17 changes: 15 additions & 2 deletions Common/UnitDefinitions/ElectricConductance.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"Name": "ElectricConductance",
"BaseUnit": "Siemens",
"XmlDocSummary": "The electrical conductance of an electrical conductor is a measure of the easeness to pass an electric current through that conductor.",
"XmlDocSummary": "The electrical conductance of an object is a measure of the ease with which an electric current passes. Along with susceptance, it is one of two elements of admittance. Its reciprocal quantity is electrical resistance.",
"XmlDocRemarks": "https://en.wikipedia.org/wiki/Electrical_resistance_and_conductance",
"BaseDimensions": {
"L": -2,
Expand All @@ -15,13 +15,26 @@
"PluralName": "Siemens",
"FromUnitToBaseFunc": "{x}",
"FromBaseToUnitFunc": "{x}",
"Prefixes": [ "Nano", "Micro", "Milli", "Kilo" ],
"Prefixes": [ "Nano", "Micro", "Milli", "Kilo", "Mega", "Giga", "Tera" ],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [ "S" ]
}
]
},
{
"SingularName": "Mho",
"PluralName": "Mhos",
"FromUnitToBaseFunc": "{x}",
"FromBaseToUnitFunc": "{x}",
"Prefixes": [ "Nano", "Micro", "Milli", "Kilo", "Mega", "Giga", "Tera" ],
"Localization": [
{
"Culture": "en-US",
"Abbreviations": [ "" ]
}
]
}
]
}
1 change: 1 addition & 0 deletions Common/UnitDefinitions/ElectricCurrent.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
"Name": "ElectricCurrent",
"BaseUnit": "Ampere",
"XmlDocSummary": "An electric current is a flow of electric charge. In electric circuits this charge is often carried by moving electrons in a wire. It can also be carried by ions in an electrolyte, or by both ions and electrons such as in a plasma.",
"XmlDocRemarks": "If you want to map more parameters into the <c>ElectricCurrent</c> class (amps RMS, phase angle, etc.), create your own wrapper type such as a record or named tuple.",
"BaseDimensions": {
"I": 1
},
Expand Down
Loading

0 comments on commit 108d44a

Please sign in to comment.