diff --git a/Common/UnitDefinitions/Volume.json b/Common/UnitDefinitions/Volume.json
index c3d49d5e6c..9b68dfd7e8 100644
--- a/Common/UnitDefinitions/Volume.json
+++ b/Common/UnitDefinitions/Volume.json
@@ -459,6 +459,21 @@
"Abbreviations": [ "ac-ft", "acre-foot", "acre-feet" ]
}
]
+ },
+ {
+ "SingularName": "ImperialPint",
+ "PluralName": "ImperialPints",
+ "BaseUnits": {
+ "L": "Decimeter"
+ },
+ "FromUnitToBaseFunc": "x * 5.6826125e-4",
+ "FromBaseToUnitFunc": "x / 5.6826125e-4",
+ "Localization": [
+ {
+ "Culture": "en-US",
+ "Abbreviations": [ "pt (imp.)", "UK pt", "pt", "p" ]
+ }
+ ]
}
]
}
diff --git a/UnitsNet.Tests/CustomCode/VolumeTests.cs b/UnitsNet.Tests/CustomCode/VolumeTests.cs
index ddeffadd55..0924a4e1a1 100644
--- a/UnitsNet.Tests/CustomCode/VolumeTests.cs
+++ b/UnitsNet.Tests/CustomCode/VolumeTests.cs
@@ -90,7 +90,9 @@ public class VolumeTests : VolumeTestsBase
protected override double MegalitersInOneCubicMeter => 0.001;
- [Fact]
+ protected override double ImperialPintsInOneCubicMeter => 1.7597539863927023e3;
+
+ [ Fact]
public void VolumeDividedByAreaEqualsLength()
{
Length length = Volume.FromCubicMeters(15)/Area.FromSquareMeters(5);
diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Volume.WindowsRuntimeComponent.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Volume.WindowsRuntimeComponent.g.cs
index 6677d563e8..d5952d6772 100644
--- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Volume.WindowsRuntimeComponent.g.cs
+++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Volume.WindowsRuntimeComponent.g.cs
@@ -255,6 +255,11 @@ private Volume(double numericValue, VolumeUnit unit)
///
public double ImperialOunces => As(VolumeUnit.ImperialOunce);
+ ///
+ /// Get Volume in ImperialPints.
+ ///
+ public double ImperialPints => As(VolumeUnit.ImperialPint);
+
///
/// Get Volume in KilocubicFeet.
///
@@ -611,6 +616,16 @@ public static Volume FromImperialOunces(double imperialounces)
return new Volume(value, VolumeUnit.ImperialOunce);
}
///
+ /// Get Volume from ImperialPints.
+ ///
+ /// If value is NaN or Infinity.
+ [Windows.Foundation.Metadata.DefaultOverload]
+ public static Volume FromImperialPints(double imperialpints)
+ {
+ double value = (double) imperialpints;
+ return new Volume(value, VolumeUnit.ImperialPint);
+ }
+ ///
/// Get Volume from KilocubicFeet.
///
/// If value is NaN or Infinity.
@@ -1171,6 +1186,7 @@ private double AsBaseUnit()
case VolumeUnit.ImperialBeerBarrel: return _value*0.16365924;
case VolumeUnit.ImperialGallon: return _value*0.00454609000000181429905810072407;
case VolumeUnit.ImperialOunce: return _value*2.8413062499962901241875439064617e-5;
+ case VolumeUnit.ImperialPint: return _value * 5.6826125e-4;
case VolumeUnit.KilocubicFoot: return (_value*0.0283168) * 1e3d;
case VolumeUnit.KilocubicMeter: return (_value) * 1e3d;
case VolumeUnit.KiloimperialGallon: return (_value*0.00454609000000181429905810072407) * 1e3d;
@@ -1230,6 +1246,7 @@ private double AsBaseNumericType(VolumeUnit unit)
case VolumeUnit.ImperialBeerBarrel: return baseUnitValue/0.16365924;
case VolumeUnit.ImperialGallon: return baseUnitValue/0.00454609000000181429905810072407;
case VolumeUnit.ImperialOunce: return baseUnitValue/2.8413062499962901241875439064617e-5;
+ case VolumeUnit.ImperialPint: return baseUnitValue / 5.6826125e-4;
case VolumeUnit.KilocubicFoot: return (baseUnitValue/0.0283168) / 1e3d;
case VolumeUnit.KilocubicMeter: return (baseUnitValue) / 1e3d;
case VolumeUnit.KiloimperialGallon: return (baseUnitValue/0.00454609000000181429905810072407) / 1e3d;
diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs
index 8133129dc3..61415be69e 100644
--- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs
+++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs
@@ -1036,6 +1036,7 @@ private static readonly (string CultureName, Type UnitType, int UnitValue, strin
("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.ImperialGallon, new string[]{"Английский галлон"}),
("en-US", typeof(VolumeUnit), (int)VolumeUnit.ImperialOunce, new string[]{"oz (imp.)"}),
("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.ImperialOunce, new string[]{"Английская унция"}),
+ ("en-US", typeof(VolumeUnit), (int)VolumeUnit.ImperialPint, new string[]{"pt (imp.)", "UK pt", "pt", "p"}),
("en-US", typeof(VolumeUnit), (int)VolumeUnit.KilocubicFoot, new string[]{"kft³"}),
("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.KilocubicFoot, new string[]{"kфут³"}),
("en-US", typeof(VolumeUnit), (int)VolumeUnit.KilocubicMeter, new string[]{"km³"}),
diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/VolumeUnit.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/VolumeUnit.g.cs
index 604d50a5a4..475f97db80 100644
--- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/VolumeUnit.g.cs
+++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/VolumeUnit.g.cs
@@ -46,6 +46,7 @@ public enum VolumeUnit
ImperialBeerBarrel,
ImperialGallon,
ImperialOunce,
+ ImperialPint,
KilocubicFoot,
KilocubicMeter,
KiloimperialGallon,
diff --git a/UnitsNet/GeneratedCode/Quantities/Volume.NetFramework.g.cs b/UnitsNet/GeneratedCode/Quantities/Volume.NetFramework.g.cs
index d824a5a61c..a9acad92c9 100644
--- a/UnitsNet/GeneratedCode/Quantities/Volume.NetFramework.g.cs
+++ b/UnitsNet/GeneratedCode/Quantities/Volume.NetFramework.g.cs
@@ -70,6 +70,7 @@ static Volume()
new UnitInfo(VolumeUnit.ImperialBeerBarrel, BaseUnits.Undefined),
new UnitInfo(VolumeUnit.ImperialGallon, BaseUnits.Undefined),
new UnitInfo(VolumeUnit.ImperialOunce, BaseUnits.Undefined),
+ new UnitInfo(VolumeUnit.ImperialPint, new BaseUnits(length: LengthUnit.Decimeter)),
new UnitInfo(VolumeUnit.KilocubicFoot, BaseUnits.Undefined),
new UnitInfo(VolumeUnit.KilocubicMeter, BaseUnits.Undefined),
new UnitInfo(VolumeUnit.KiloimperialGallon, BaseUnits.Undefined),
@@ -304,6 +305,11 @@ public Volume(double numericValue, UnitSystem unitSystem)
///
public double ImperialOunces => As(VolumeUnit.ImperialOunce);
+ ///
+ /// Get Volume in ImperialPints.
+ ///
+ public double ImperialPints => As(VolumeUnit.ImperialPint);
+
///
/// Get Volume in KilocubicFeet.
///
@@ -639,6 +645,15 @@ public static Volume FromImperialOunces(QuantityValue imperialounces)
return new Volume(value, VolumeUnit.ImperialOunce);
}
///
+ /// Get Volume from ImperialPints.
+ ///
+ /// If value is NaN or Infinity.
+ public static Volume FromImperialPints(QuantityValue imperialpints)
+ {
+ double value = (double) imperialpints;
+ return new Volume(value, VolumeUnit.ImperialPint);
+ }
+ ///
/// Get Volume from KilocubicFeet.
///
/// If value is NaN or Infinity.
@@ -1302,6 +1317,7 @@ private double GetValueInBaseUnit()
case VolumeUnit.ImperialBeerBarrel: return _value*0.16365924;
case VolumeUnit.ImperialGallon: return _value*0.00454609000000181429905810072407;
case VolumeUnit.ImperialOunce: return _value*2.8413062499962901241875439064617e-5;
+ case VolumeUnit.ImperialPint: return _value * 5.6826125e-4;
case VolumeUnit.KilocubicFoot: return (_value*0.0283168) * 1e3d;
case VolumeUnit.KilocubicMeter: return (_value) * 1e3d;
case VolumeUnit.KiloimperialGallon: return (_value*0.00454609000000181429905810072407) * 1e3d;
@@ -1361,6 +1377,7 @@ private double GetValueAs(VolumeUnit unit)
case VolumeUnit.ImperialBeerBarrel: return baseUnitValue/0.16365924;
case VolumeUnit.ImperialGallon: return baseUnitValue/0.00454609000000181429905810072407;
case VolumeUnit.ImperialOunce: return baseUnitValue/2.8413062499962901241875439064617e-5;
+ case VolumeUnit.ImperialPint: return baseUnitValue / 5.6826125e-4;
case VolumeUnit.KilocubicFoot: return (baseUnitValue/0.0283168) / 1e3d;
case VolumeUnit.KilocubicMeter: return (baseUnitValue) / 1e3d;
case VolumeUnit.KiloimperialGallon: return (baseUnitValue/0.00454609000000181429905810072407) / 1e3d;
diff --git a/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs b/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs
index 9018fb5310..f3044b9fd9 100644
--- a/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs
+++ b/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs
@@ -1036,6 +1036,7 @@ private static readonly (string CultureName, Type UnitType, int UnitValue, strin
("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.ImperialGallon, new string[]{"Английский галлон"}),
("en-US", typeof(VolumeUnit), (int)VolumeUnit.ImperialOunce, new string[]{"oz (imp.)"}),
("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.ImperialOunce, new string[]{"Английская унция"}),
+ ("en-US", typeof(VolumeUnit), (int)VolumeUnit.ImperialPint, new string[]{"pt (imp.)", "UK pt", "pt", "p"}),
("en-US", typeof(VolumeUnit), (int)VolumeUnit.KilocubicFoot, new string[]{"kft³"}),
("ru-RU", typeof(VolumeUnit), (int)VolumeUnit.KilocubicFoot, new string[]{"kфут³"}),
("en-US", typeof(VolumeUnit), (int)VolumeUnit.KilocubicMeter, new string[]{"km³"}),
diff --git a/UnitsNet/GeneratedCode/Units/VolumeUnit.g.cs b/UnitsNet/GeneratedCode/Units/VolumeUnit.g.cs
index 604d50a5a4..475f97db80 100644
--- a/UnitsNet/GeneratedCode/Units/VolumeUnit.g.cs
+++ b/UnitsNet/GeneratedCode/Units/VolumeUnit.g.cs
@@ -46,6 +46,7 @@ public enum VolumeUnit
ImperialBeerBarrel,
ImperialGallon,
ImperialOunce,
+ ImperialPint,
KilocubicFoot,
KilocubicMeter,
KiloimperialGallon,