diff --git a/CodeGen/Generators/UnitsNetGen/QuantityGenerator.cs b/CodeGen/Generators/UnitsNetGen/QuantityGenerator.cs index dfaa53af3d..09bf734e78 100644 --- a/CodeGen/Generators/UnitsNetGen/QuantityGenerator.cs +++ b/CodeGen/Generators/UnitsNetGen/QuantityGenerator.cs @@ -60,10 +60,10 @@ namespace UnitsNet /// "); Writer.WLIfText(1, GetObsoleteAttributeOrNull(_quantity)); - Writer.WL(@$" + Writer.W(@$" [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct {_quantity.Name} :"); + public readonly partial struct {_quantity.Name}"); GenerateInterfaceExtensions(); Writer.WL($@" @@ -103,33 +103,26 @@ namespace UnitsNet private void GenerateInterfaceExtensions() { - // generate the base interface (either IVectorQuantity, IAffineQuantity or ILogarithmicQuantity) + Writer.W($" : IQuantity<{_quantity.Name}, {_unitEnumName}>, "); + + // generate ILogarithmicQuantity, IAffineQuantity or ILinearQuantity if (_quantity.Logarithmic) { - Writer.WL(@$" - ILogarithmicQuantity<{_quantity.Name}, {_unitEnumName}>,"); + Writer.WL($"ILogarithmicQuantity<{_quantity.Name}>"); } else if (!string.IsNullOrEmpty(_quantity.AffineOffsetType)) { - Writer.WL(@$" - IAffineQuantity<{_quantity.Name}, {_unitEnumName}, {_quantity.AffineOffsetType}>,"); + Writer.WL($"IAffineQuantity<{_quantity.Name}, {_quantity.AffineOffsetType}>"); } - else // the default quantity type implements the IVectorQuantity interface + else // the default quantity type implements the ILinearQuantity interface { - Writer.WL(@$" - IArithmeticQuantity<{_quantity.Name}, {_unitEnumName}>,"); - } - - Writer.WL(@" -#if NET7_0_OR_GREATER"); - if (!_quantity.IsAffine) - { - Writer.WL($@" - IDivisionOperators<{_quantity.Name}, {_quantity.Name}, double>,"); + Writer.WL($"ILinearQuantity<{_quantity.Name}>"); } if (_quantity.Relations.Any(r => r.Operator is "*" or "/")) { + Writer.WL(@" +#if NET7_0_OR_GREATER"); foreach (QuantityRelation relation in _quantity.Relations) { if (relation.LeftQuantity != _quantity) continue; @@ -137,28 +130,20 @@ private void GenerateInterfaceExtensions() { case "*": Writer.W(@" - IMultiplyOperators"); + , IMultiplyOperators"); break; case "/": Writer.W(@" - IDivisionOperators"); + , IDivisionOperators"); break; default: continue; } - - Writer.WL($"<{relation.LeftQuantity.Name}, {relation.RightQuantity.Name}, {relation.ResultQuantity.Name}>,"); + Writer.WL($"<{relation.LeftQuantity.Name}, {relation.RightQuantity.Name}, {relation.ResultQuantity.Name}>"); } + Writer.WL(@$" +#endif"); } - - Writer.WL(@$" - IComparisonOperators<{_quantity.Name}, {_quantity.Name}, bool>, - IParsable<{_quantity.Name}>, -#endif - IComparable, - IComparable<{_quantity.Name}>, - IEquatable<{_quantity.Name}>, - IFormattable"); } private void GenerateQuantityInfo() diff --git a/UnitsNet.Tests/CustomQuantities/HowMuch.cs b/UnitsNet.Tests/CustomQuantities/HowMuch.cs index 7a59f20a8d..c6485a65d9 100644 --- a/UnitsNet.Tests/CustomQuantities/HowMuch.cs +++ b/UnitsNet.Tests/CustomQuantities/HowMuch.cs @@ -1,4 +1,5 @@ using System; +using System.Diagnostics.CodeAnalysis; using UnitsNet.Units; namespace UnitsNet.Tests.CustomQuantities @@ -100,6 +101,118 @@ QuantityInfo IQuantity.QuantityInfo Enum IQuantity.Unit => Unit; #endif + + #endregion + + + #region Equality / IComparable + + /// Returns true if less or equal to. + public static bool operator <=(HowMuch left, HowMuch right) + { + return left.Value <= right.ToUnit(left.Unit).Value; + } + + /// Returns true if greater than or equal to. + public static bool operator >=(HowMuch left, HowMuch right) + { + return left.Value >= right.ToUnit(left.Unit).Value; + } + + /// Returns true if less than. + public static bool operator <(HowMuch left, HowMuch right) + { + return left.Value < right.ToUnit(left.Unit).Value; + } + + /// Returns true if greater than. + public static bool operator >(HowMuch left, HowMuch right) + { + return left.Value > right.ToUnit(left.Unit).Value; + } + + // We use obsolete attribute to communicate the preferred equality members to use. + // CS0809: Obsolete member 'memberA' overrides non-obsolete member 'memberB'. +#pragma warning disable CS0809 + + /// Indicates strict equality of two quantities, where both and are exactly equal. + [Obsolete( + "For null checks, use `x is null` syntax to not invoke overloads. For equality checks, use Equals(HowMuch other, HowMuch tolerance) instead, to check equality across units and to specify the max tolerance for rounding errors due to floating-point arithmetic when converting between units.")] + public static bool operator ==(HowMuch left, HowMuch right) + { + return left.Equals(right); + } + + /// Indicates strict inequality of two quantities, where both and are exactly equal. + [Obsolete( + "For null checks, use `x is null` syntax to not invoke overloads. For equality checks, use Equals(HowMuch other, HowMuch tolerance) instead, to check equality across units and to specify the max tolerance for rounding errors due to floating-point arithmetic when converting between units.")] + public static bool operator !=(HowMuch left, HowMuch right) + { + return !(left == right); + } + + /// + /// Indicates strict equality of two quantities, where both and are exactly equal. + [Obsolete( + "Use Equals(HowMuch other, HowMuch tolerance) instead, to check equality across units and to specify the max tolerance for rounding errors due to floating-point arithmetic when converting between units.")] + public override bool Equals(object? obj) + { + if (obj is null || !(obj is HowMuch otherQuantity)) + return false; + + return Equals(otherQuantity); + } + + /// + /// Indicates strict equality of two quantities, where both and are exactly equal. + [Obsolete( + "Use Equals(HowMuch other, HowMuch tolerance) instead, to check equality across units and to specify the max tolerance for rounding errors due to floating-point arithmetic when converting between units.")] + public bool Equals(HowMuch other) + { + return new { Value, Unit }.Equals(new { other.Value, other.Unit }); + } + +#pragma warning restore CS0809 + + public override int GetHashCode() + { + return Comparison.GetHashCode(Unit, Value); + } + + public int CompareTo(object? obj) + { + if (obj is null) throw new ArgumentNullException(nameof(obj)); + if (!(obj is HowMuch otherQuantity)) throw new ArgumentException("Expected type HowMuch.", nameof(obj)); + + return CompareTo(otherQuantity); + } + + public int CompareTo(HowMuch other) + { + return Value.CompareTo(other.ToUnit(Unit).Value); + } + + #endregion + + #region IParsable + + public static HowMuch Parse(string str, IFormatProvider? provider) + { + return UnitsNetSetup.Default.QuantityParser.Parse( + str, + provider, + From); + } + + public static bool TryParse([NotNullWhen(true)] string? str, IFormatProvider? provider, out HowMuch result) + { + return UnitsNetSetup.Default.QuantityParser.TryParse( + str, + provider, + From, + out result); + } + #endregion } } diff --git a/UnitsNet/Extensions/LogarithmicQuantityExtensions.cs b/UnitsNet/Extensions/LogarithmicQuantityExtensions.cs index 7f28720e05..af0f90853c 100644 --- a/UnitsNet/Extensions/LogarithmicQuantityExtensions.cs +++ b/UnitsNet/Extensions/LogarithmicQuantityExtensions.cs @@ -176,7 +176,7 @@ public static TQuantity Sum(this IEnumerable source /// logarithmic space. /// public static TQuantity Sum(this IEnumerable quantities, TUnit targetUnit) - where TQuantity : ILogarithmicQuantity + where TQuantity : ILogarithmicQuantity, IQuantity where TUnit : struct, Enum { if (quantities is null) @@ -224,7 +224,7 @@ public static TQuantity Sum(this IEnumerable quanti /// logarithmic space. /// public static TQuantity Sum(this IEnumerable source, Func selector, TUnit targetUnit) - where TQuantity : ILogarithmicQuantity + where TQuantity : ILogarithmicQuantity, IQuantity where TUnit : struct, Enum { return source.Select(selector).Sum(targetUnit); @@ -312,7 +312,7 @@ public static TQuantity ArithmeticMean(this IEnumerable public static TQuantity ArithmeticMean(this IEnumerable quantities, TUnit unit) - where TQuantity : ILogarithmicQuantity + where TQuantity : ILogarithmicQuantity, IQuantity where TUnit : struct, Enum { if (quantities is null) @@ -363,7 +363,7 @@ public static TQuantity ArithmeticMean(this IEnumerable public static TQuantity ArithmeticMean(this IEnumerable source, Func selector, TUnit targetUnit) - where TQuantity : ILogarithmicQuantity + where TQuantity : ILogarithmicQuantity, IQuantity where TUnit : struct, Enum { return ArithmeticMean(source.Select(selector), targetUnit); @@ -448,7 +448,7 @@ public static TQuantity GeometricMean(this IEnumerable public static TQuantity GeometricMean(this IEnumerable quantities, TUnit targetUnit) - where TQuantity : ILogarithmicQuantity + where TQuantity : ILogarithmicQuantity, IQuantity where TUnit : struct, Enum { if (quantities is null) @@ -494,7 +494,7 @@ public static TQuantity GeometricMean(this IEnumerable public static TQuantity GeometricMean(this IEnumerable source, Func selector, TUnit targetUnit) - where TQuantity : ILogarithmicQuantity + where TQuantity : ILogarithmicQuantity, IQuantity where TUnit : struct, Enum { return source.Select(selector).GeometricMean(targetUnit); diff --git a/UnitsNet/GeneratedCode/Quantities/AbsorbedDoseOfIonizingRadiation.g.cs b/UnitsNet/GeneratedCode/Quantities/AbsorbedDoseOfIonizingRadiation.g.cs index d9f4ac2066..521cf9d4ee 100644 --- a/UnitsNet/GeneratedCode/Quantities/AbsorbedDoseOfIonizingRadiation.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/AbsorbedDoseOfIonizingRadiation.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct AbsorbedDoseOfIonizingRadiation : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct AbsorbedDoseOfIonizingRadiation : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Acceleration.g.cs b/UnitsNet/GeneratedCode/Quantities/Acceleration.g.cs index 83b6c6add3..c6449c20ca 100644 --- a/UnitsNet/GeneratedCode/Quantities/Acceleration.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Acceleration.g.cs @@ -36,22 +36,14 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Acceleration : - IArithmeticQuantity, + public readonly partial struct Acceleration : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/AmountOfSubstance.g.cs b/UnitsNet/GeneratedCode/Quantities/AmountOfSubstance.g.cs index 939a52084e..ba82b3828a 100644 --- a/UnitsNet/GeneratedCode/Quantities/AmountOfSubstance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/AmountOfSubstance.g.cs @@ -36,23 +36,15 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct AmountOfSubstance : - IArithmeticQuantity, + public readonly partial struct AmountOfSubstance : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/AmplitudeRatio.g.cs b/UnitsNet/GeneratedCode/Quantities/AmplitudeRatio.g.cs index 0db3066f16..e8a32d0748 100644 --- a/UnitsNet/GeneratedCode/Quantities/AmplitudeRatio.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/AmplitudeRatio.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct AmplitudeRatio : - ILogarithmicQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct AmplitudeRatio : IQuantity, ILogarithmicQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Angle.g.cs b/UnitsNet/GeneratedCode/Quantities/Angle.g.cs index bb2822e031..4b17cc43f3 100644 --- a/UnitsNet/GeneratedCode/Quantities/Angle.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Angle.g.cs @@ -36,20 +36,12 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Angle : - IArithmeticQuantity, + public readonly partial struct Angle : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Area.g.cs b/UnitsNet/GeneratedCode/Quantities/Area.g.cs index 971074a1b1..bd07281614 100644 --- a/UnitsNet/GeneratedCode/Quantities/Area.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Area.g.cs @@ -36,33 +36,25 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Area : - IArithmeticQuantity, + public readonly partial struct Area : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/AreaDensity.g.cs b/UnitsNet/GeneratedCode/Quantities/AreaDensity.g.cs index 2b662909c4..760f8151b6 100644 --- a/UnitsNet/GeneratedCode/Quantities/AreaDensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/AreaDensity.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct AreaDensity : - IArithmeticQuantity, + public readonly partial struct AreaDensity : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/AreaMomentOfInertia.g.cs b/UnitsNet/GeneratedCode/Quantities/AreaMomentOfInertia.g.cs index 77fd67fa9f..f2d526aa0a 100644 --- a/UnitsNet/GeneratedCode/Quantities/AreaMomentOfInertia.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/AreaMomentOfInertia.g.cs @@ -36,19 +36,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct AreaMomentOfInertia : - IArithmeticQuantity, + public readonly partial struct AreaMomentOfInertia : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/BitRate.g.cs b/UnitsNet/GeneratedCode/Quantities/BitRate.g.cs index ef08cdfb3d..b14102381e 100644 --- a/UnitsNet/GeneratedCode/Quantities/BitRate.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/BitRate.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct BitRate : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct BitRate : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/BrakeSpecificFuelConsumption.g.cs b/UnitsNet/GeneratedCode/Quantities/BrakeSpecificFuelConsumption.g.cs index fc7b253fa6..79d072afca 100644 --- a/UnitsNet/GeneratedCode/Quantities/BrakeSpecificFuelConsumption.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/BrakeSpecificFuelConsumption.g.cs @@ -36,19 +36,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct BrakeSpecificFuelConsumption : - IArithmeticQuantity, + public readonly partial struct BrakeSpecificFuelConsumption : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/CoefficientOfThermalExpansion.g.cs b/UnitsNet/GeneratedCode/Quantities/CoefficientOfThermalExpansion.g.cs index 25671ba248..3fc937a95c 100644 --- a/UnitsNet/GeneratedCode/Quantities/CoefficientOfThermalExpansion.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/CoefficientOfThermalExpansion.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct CoefficientOfThermalExpansion : - IArithmeticQuantity, + public readonly partial struct CoefficientOfThermalExpansion : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Compressibility.g.cs b/UnitsNet/GeneratedCode/Quantities/Compressibility.g.cs index 6aafee49bf..e816f03eaf 100644 --- a/UnitsNet/GeneratedCode/Quantities/Compressibility.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Compressibility.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Compressibility : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Compressibility : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Density.g.cs b/UnitsNet/GeneratedCode/Quantities/Density.g.cs index 43aa68b621..bbe670f0e9 100644 --- a/UnitsNet/GeneratedCode/Quantities/Density.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Density.g.cs @@ -39,24 +39,16 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Density : - IArithmeticQuantity, + public readonly partial struct Density : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/DoseAreaProduct.g.cs b/UnitsNet/GeneratedCode/Quantities/DoseAreaProduct.g.cs index d2ee657131..84fefaf708 100644 --- a/UnitsNet/GeneratedCode/Quantities/DoseAreaProduct.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/DoseAreaProduct.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct DoseAreaProduct : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct DoseAreaProduct : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Duration.g.cs b/UnitsNet/GeneratedCode/Quantities/Duration.g.cs index 53509ba4eb..baa75f13f6 100644 --- a/UnitsNet/GeneratedCode/Quantities/Duration.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Duration.g.cs @@ -36,32 +36,24 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Duration : - IArithmeticQuantity, + public readonly partial struct Duration : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/DynamicViscosity.g.cs b/UnitsNet/GeneratedCode/Quantities/DynamicViscosity.g.cs index 7f0bc8028f..c5e6b6c601 100644 --- a/UnitsNet/GeneratedCode/Quantities/DynamicViscosity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/DynamicViscosity.g.cs @@ -39,19 +39,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct DynamicViscosity : - IArithmeticQuantity, + public readonly partial struct DynamicViscosity : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricAdmittance.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricAdmittance.g.cs index a0f4670b56..940f1ae267 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricAdmittance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricAdmittance.g.cs @@ -40,17 +40,7 @@ namespace UnitsNet [Obsolete("Admittance is a complex number, which is not currently supported by UnitsNet. Please use either ElectricConductance or ElectricSusceptance instead.")] [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricAdmittance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricAdmittance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricApparentEnergy.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricApparentEnergy.g.cs index 299daa8292..953a509a13 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricApparentEnergy.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricApparentEnergy.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricApparentEnergy : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricApparentEnergy : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricApparentPower.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricApparentPower.g.cs index 9eaa4f4fd6..50a60ffd31 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricApparentPower.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricApparentPower.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricApparentPower : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricApparentPower : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricCapacitance.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricCapacitance.g.cs index bb23cae42d..595170f823 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricCapacitance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricCapacitance.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricCapacitance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricCapacitance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricCharge.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricCharge.g.cs index 1a42c24f6c..54b6b9aac5 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricCharge.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricCharge.g.cs @@ -39,20 +39,12 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricCharge : - IArithmeticQuantity, + public readonly partial struct ElectricCharge : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricChargeDensity.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricChargeDensity.g.cs index 7c358b5237..b8bfc02a69 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricChargeDensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricChargeDensity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricChargeDensity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricChargeDensity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricConductance.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricConductance.g.cs index f7a94f512f..20bb4ed77a 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricConductance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricConductance.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricConductance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricConductance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricConductivity.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricConductivity.g.cs index 42a8281ef0..8a3accd3de 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricConductivity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricConductivity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricConductivity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricConductivity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricCurrent.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricCurrent.g.cs index 1328d94480..faa3d52679 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricCurrent.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricCurrent.g.cs @@ -39,22 +39,14 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricCurrent : - IArithmeticQuantity, + public readonly partial struct ElectricCurrent : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricCurrentDensity.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricCurrentDensity.g.cs index 6952796ae2..c0edd918ed 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricCurrentDensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricCurrentDensity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricCurrentDensity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricCurrentDensity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricCurrentGradient.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricCurrentGradient.g.cs index 328c852d27..2065acd06f 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricCurrentGradient.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricCurrentGradient.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricCurrentGradient : - IArithmeticQuantity, + public readonly partial struct ElectricCurrentGradient : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricField.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricField.g.cs index 0cffdfb99a..26176744d9 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricField.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricField.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricField : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricField : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricImpedance.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricImpedance.g.cs index 0664d9e4e5..7a76d68a95 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricImpedance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricImpedance.g.cs @@ -40,17 +40,7 @@ namespace UnitsNet [Obsolete("Impedance is a complex number, which is not currently supported by UnitsNet. Please use either ElectricResistance or ElectricReactance instead.")] [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricImpedance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricImpedance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricInductance.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricInductance.g.cs index b23b44fce0..f17762b15c 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricInductance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricInductance.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricInductance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricInductance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricPotential.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricPotential.g.cs index 82a074d2a1..2ca25698f0 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricPotential.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricPotential.g.cs @@ -39,21 +39,13 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricPotential : - IArithmeticQuantity, + public readonly partial struct ElectricPotential : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricPotentialChangeRate.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricPotentialChangeRate.g.cs index 1ab1aff852..853a8ba64b 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricPotentialChangeRate.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricPotentialChangeRate.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricPotentialChangeRate : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricPotentialChangeRate : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricReactance.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricReactance.g.cs index 0876ea916a..bf59e7f0b8 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricReactance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricReactance.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricReactance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricReactance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricReactiveEnergy.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricReactiveEnergy.g.cs index dde516150d..22ca97a53b 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricReactiveEnergy.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricReactiveEnergy.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricReactiveEnergy : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricReactiveEnergy : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricReactivePower.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricReactivePower.g.cs index 6bd91d9da5..42f52f8fa6 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricReactivePower.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricReactivePower.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricReactivePower : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricReactivePower : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricResistance.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricResistance.g.cs index 1b483957e0..c5baaa959b 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricResistance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricResistance.g.cs @@ -39,18 +39,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricResistance : - IArithmeticQuantity, + public readonly partial struct ElectricResistance : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricResistivity.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricResistivity.g.cs index 0a20865a27..7582e95bf2 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricResistivity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricResistivity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricResistivity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricResistivity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricSurfaceChargeDensity.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricSurfaceChargeDensity.g.cs index 35f23bb0ff..0b89b4d6f3 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricSurfaceChargeDensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricSurfaceChargeDensity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricSurfaceChargeDensity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricSurfaceChargeDensity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ElectricSusceptance.g.cs b/UnitsNet/GeneratedCode/Quantities/ElectricSusceptance.g.cs index c6f5ca9ef8..f789e92196 100644 --- a/UnitsNet/GeneratedCode/Quantities/ElectricSusceptance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ElectricSusceptance.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ElectricSusceptance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ElectricSusceptance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Energy.g.cs b/UnitsNet/GeneratedCode/Quantities/Energy.g.cs index 982a1785f2..6a6cb4fcf7 100644 --- a/UnitsNet/GeneratedCode/Quantities/Energy.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Energy.g.cs @@ -36,30 +36,22 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Energy : - IArithmeticQuantity, + public readonly partial struct Energy : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/EnergyDensity.g.cs b/UnitsNet/GeneratedCode/Quantities/EnergyDensity.g.cs index 3766c54268..c698be2ca0 100644 --- a/UnitsNet/GeneratedCode/Quantities/EnergyDensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/EnergyDensity.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct EnergyDensity : - IArithmeticQuantity, + public readonly partial struct EnergyDensity : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Entropy.g.cs b/UnitsNet/GeneratedCode/Quantities/Entropy.g.cs index 0f6fe8c8d9..876e66447c 100644 --- a/UnitsNet/GeneratedCode/Quantities/Entropy.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Entropy.g.cs @@ -36,20 +36,12 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Entropy : - IArithmeticQuantity, + public readonly partial struct Entropy : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/FluidResistance.g.cs b/UnitsNet/GeneratedCode/Quantities/FluidResistance.g.cs index d92219473d..7299172a2f 100644 --- a/UnitsNet/GeneratedCode/Quantities/FluidResistance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/FluidResistance.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct FluidResistance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct FluidResistance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Force.g.cs b/UnitsNet/GeneratedCode/Quantities/Force.g.cs index 3e6e0cf3e2..06064b4386 100644 --- a/UnitsNet/GeneratedCode/Quantities/Force.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Force.g.cs @@ -36,29 +36,21 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Force : - IArithmeticQuantity, + public readonly partial struct Force : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ForceChangeRate.g.cs b/UnitsNet/GeneratedCode/Quantities/ForceChangeRate.g.cs index 031760cc0e..5f70a6a282 100644 --- a/UnitsNet/GeneratedCode/Quantities/ForceChangeRate.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ForceChangeRate.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ForceChangeRate : - IArithmeticQuantity, + public readonly partial struct ForceChangeRate : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ForcePerLength.g.cs b/UnitsNet/GeneratedCode/Quantities/ForcePerLength.g.cs index af311d6eb2..bc6f65ae4b 100644 --- a/UnitsNet/GeneratedCode/Quantities/ForcePerLength.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ForcePerLength.g.cs @@ -36,26 +36,18 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ForcePerLength : - IArithmeticQuantity, + public readonly partial struct ForcePerLength : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Frequency.g.cs b/UnitsNet/GeneratedCode/Quantities/Frequency.g.cs index fa5f67b223..80207eb7ad 100644 --- a/UnitsNet/GeneratedCode/Quantities/Frequency.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Frequency.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Frequency : - IArithmeticQuantity, + public readonly partial struct Frequency : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/FuelEfficiency.g.cs b/UnitsNet/GeneratedCode/Quantities/FuelEfficiency.g.cs index 36feac40b9..a6a8e6c24c 100644 --- a/UnitsNet/GeneratedCode/Quantities/FuelEfficiency.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/FuelEfficiency.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct FuelEfficiency : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct FuelEfficiency : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/HeatFlux.g.cs b/UnitsNet/GeneratedCode/Quantities/HeatFlux.g.cs index f04aa3dc7c..d6071a719a 100644 --- a/UnitsNet/GeneratedCode/Quantities/HeatFlux.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/HeatFlux.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct HeatFlux : - IArithmeticQuantity, + public readonly partial struct HeatFlux : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/HeatTransferCoefficient.g.cs b/UnitsNet/GeneratedCode/Quantities/HeatTransferCoefficient.g.cs index ded5a527e7..97a7489f0a 100644 --- a/UnitsNet/GeneratedCode/Quantities/HeatTransferCoefficient.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/HeatTransferCoefficient.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct HeatTransferCoefficient : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct HeatTransferCoefficient : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Illuminance.g.cs b/UnitsNet/GeneratedCode/Quantities/Illuminance.g.cs index 097895cf58..6e6d2927a2 100644 --- a/UnitsNet/GeneratedCode/Quantities/Illuminance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Illuminance.g.cs @@ -39,18 +39,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Illuminance : - IArithmeticQuantity, + public readonly partial struct Illuminance : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Impulse.g.cs b/UnitsNet/GeneratedCode/Quantities/Impulse.g.cs index e627a492d4..859212a5d1 100644 --- a/UnitsNet/GeneratedCode/Quantities/Impulse.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Impulse.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Impulse : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Impulse : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Information.g.cs b/UnitsNet/GeneratedCode/Quantities/Information.g.cs index 37fc7a4f44..b66a5cbd0e 100644 --- a/UnitsNet/GeneratedCode/Quantities/Information.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Information.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Information : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Information : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Irradiance.g.cs b/UnitsNet/GeneratedCode/Quantities/Irradiance.g.cs index 2807557480..d7af785d38 100644 --- a/UnitsNet/GeneratedCode/Quantities/Irradiance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Irradiance.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Irradiance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Irradiance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Irradiation.g.cs b/UnitsNet/GeneratedCode/Quantities/Irradiation.g.cs index d16db7fef3..e4da975bb2 100644 --- a/UnitsNet/GeneratedCode/Quantities/Irradiation.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Irradiation.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Irradiation : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Irradiation : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Jerk.g.cs b/UnitsNet/GeneratedCode/Quantities/Jerk.g.cs index ac104b30b8..d6e55c2143 100644 --- a/UnitsNet/GeneratedCode/Quantities/Jerk.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Jerk.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Jerk : - IArithmeticQuantity, + public readonly partial struct Jerk : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/KinematicViscosity.g.cs b/UnitsNet/GeneratedCode/Quantities/KinematicViscosity.g.cs index e7828f6640..8ca5ec8dbe 100644 --- a/UnitsNet/GeneratedCode/Quantities/KinematicViscosity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/KinematicViscosity.g.cs @@ -39,21 +39,13 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct KinematicViscosity : - IArithmeticQuantity, + public readonly partial struct KinematicViscosity : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/LeakRate.g.cs b/UnitsNet/GeneratedCode/Quantities/LeakRate.g.cs index b19b295670..b133933cd0 100644 --- a/UnitsNet/GeneratedCode/Quantities/LeakRate.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/LeakRate.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct LeakRate : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct LeakRate : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Length.g.cs b/UnitsNet/GeneratedCode/Quantities/Length.g.cs index 9974ed8191..b7e2d781d1 100644 --- a/UnitsNet/GeneratedCode/Quantities/Length.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Length.g.cs @@ -36,35 +36,27 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Length : - IArithmeticQuantity, + public readonly partial struct Length : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Level.g.cs b/UnitsNet/GeneratedCode/Quantities/Level.g.cs index e7bb8464fc..967e031ad9 100644 --- a/UnitsNet/GeneratedCode/Quantities/Level.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Level.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Level : - ILogarithmicQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Level : IQuantity, ILogarithmicQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/LinearDensity.g.cs b/UnitsNet/GeneratedCode/Quantities/LinearDensity.g.cs index a6d4bcc7e7..3985ab74fb 100644 --- a/UnitsNet/GeneratedCode/Quantities/LinearDensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/LinearDensity.g.cs @@ -39,20 +39,12 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct LinearDensity : - IArithmeticQuantity, + public readonly partial struct LinearDensity : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/LinearPowerDensity.g.cs b/UnitsNet/GeneratedCode/Quantities/LinearPowerDensity.g.cs index b395fa2690..17483f02de 100644 --- a/UnitsNet/GeneratedCode/Quantities/LinearPowerDensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/LinearPowerDensity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct LinearPowerDensity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct LinearPowerDensity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Luminance.g.cs b/UnitsNet/GeneratedCode/Quantities/Luminance.g.cs index 6fced29fcb..67e38344c5 100644 --- a/UnitsNet/GeneratedCode/Quantities/Luminance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Luminance.g.cs @@ -39,18 +39,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Luminance : - IArithmeticQuantity, + public readonly partial struct Luminance : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Luminosity.g.cs b/UnitsNet/GeneratedCode/Quantities/Luminosity.g.cs index 8781a3c8c0..78cbb393c7 100644 --- a/UnitsNet/GeneratedCode/Quantities/Luminosity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Luminosity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Luminosity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Luminosity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/LuminousFlux.g.cs b/UnitsNet/GeneratedCode/Quantities/LuminousFlux.g.cs index 37a00f6f4d..c9dac8a2ea 100644 --- a/UnitsNet/GeneratedCode/Quantities/LuminousFlux.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/LuminousFlux.g.cs @@ -39,19 +39,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct LuminousFlux : - IArithmeticQuantity, + public readonly partial struct LuminousFlux : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/LuminousIntensity.g.cs b/UnitsNet/GeneratedCode/Quantities/LuminousIntensity.g.cs index 151f67d3d5..21c55659de 100644 --- a/UnitsNet/GeneratedCode/Quantities/LuminousIntensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/LuminousIntensity.g.cs @@ -39,19 +39,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct LuminousIntensity : - IArithmeticQuantity, + public readonly partial struct LuminousIntensity : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MagneticField.g.cs b/UnitsNet/GeneratedCode/Quantities/MagneticField.g.cs index 157f308cc9..9c696c9b63 100644 --- a/UnitsNet/GeneratedCode/Quantities/MagneticField.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MagneticField.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MagneticField : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct MagneticField : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MagneticFlux.g.cs b/UnitsNet/GeneratedCode/Quantities/MagneticFlux.g.cs index bfe7b01062..e898612c08 100644 --- a/UnitsNet/GeneratedCode/Quantities/MagneticFlux.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MagneticFlux.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MagneticFlux : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct MagneticFlux : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Magnetization.g.cs b/UnitsNet/GeneratedCode/Quantities/Magnetization.g.cs index 0147a53206..fcdebdc7c3 100644 --- a/UnitsNet/GeneratedCode/Quantities/Magnetization.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Magnetization.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Magnetization : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Magnetization : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Mass.g.cs b/UnitsNet/GeneratedCode/Quantities/Mass.g.cs index d8cc7d7126..d838377d2c 100644 --- a/UnitsNet/GeneratedCode/Quantities/Mass.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Mass.g.cs @@ -36,33 +36,25 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Mass : - IArithmeticQuantity, + public readonly partial struct Mass : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MassConcentration.g.cs b/UnitsNet/GeneratedCode/Quantities/MassConcentration.g.cs index b58c5046af..608cc702a7 100644 --- a/UnitsNet/GeneratedCode/Quantities/MassConcentration.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MassConcentration.g.cs @@ -39,22 +39,14 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MassConcentration : - IArithmeticQuantity, + public readonly partial struct MassConcentration : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MassFlow.g.cs b/UnitsNet/GeneratedCode/Quantities/MassFlow.g.cs index 72cc1c5344..c844315428 100644 --- a/UnitsNet/GeneratedCode/Quantities/MassFlow.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MassFlow.g.cs @@ -36,27 +36,19 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MassFlow : - IArithmeticQuantity, + public readonly partial struct MassFlow : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MassFlux.g.cs b/UnitsNet/GeneratedCode/Quantities/MassFlux.g.cs index f2e84a2d0c..19726466e0 100644 --- a/UnitsNet/GeneratedCode/Quantities/MassFlux.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MassFlux.g.cs @@ -36,20 +36,12 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MassFlux : - IArithmeticQuantity, + public readonly partial struct MassFlux : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MassFraction.g.cs b/UnitsNet/GeneratedCode/Quantities/MassFraction.g.cs index 5a3a2755f9..3868e07649 100644 --- a/UnitsNet/GeneratedCode/Quantities/MassFraction.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MassFraction.g.cs @@ -39,18 +39,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MassFraction : - IArithmeticQuantity, + public readonly partial struct MassFraction : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MassMomentOfInertia.g.cs b/UnitsNet/GeneratedCode/Quantities/MassMomentOfInertia.g.cs index 1cd21a64a7..119a17eb97 100644 --- a/UnitsNet/GeneratedCode/Quantities/MassMomentOfInertia.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MassMomentOfInertia.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MassMomentOfInertia : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct MassMomentOfInertia : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Molality.g.cs b/UnitsNet/GeneratedCode/Quantities/Molality.g.cs index 63837b108d..bc8463a2ce 100644 --- a/UnitsNet/GeneratedCode/Quantities/Molality.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Molality.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Molality : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Molality : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MolarEnergy.g.cs b/UnitsNet/GeneratedCode/Quantities/MolarEnergy.g.cs index d1427d6250..d150d634bc 100644 --- a/UnitsNet/GeneratedCode/Quantities/MolarEnergy.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MolarEnergy.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MolarEnergy : - IArithmeticQuantity, + public readonly partial struct MolarEnergy : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MolarEntropy.g.cs b/UnitsNet/GeneratedCode/Quantities/MolarEntropy.g.cs index df7026eb59..98b5627232 100644 --- a/UnitsNet/GeneratedCode/Quantities/MolarEntropy.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MolarEntropy.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MolarEntropy : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct MolarEntropy : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MolarFlow.g.cs b/UnitsNet/GeneratedCode/Quantities/MolarFlow.g.cs index cfaf99aa5f..73e87bf737 100644 --- a/UnitsNet/GeneratedCode/Quantities/MolarFlow.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MolarFlow.g.cs @@ -36,21 +36,13 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MolarFlow : - IArithmeticQuantity, + public readonly partial struct MolarFlow : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/MolarMass.g.cs b/UnitsNet/GeneratedCode/Quantities/MolarMass.g.cs index d20e489b04..301f73a817 100644 --- a/UnitsNet/GeneratedCode/Quantities/MolarMass.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/MolarMass.g.cs @@ -36,20 +36,12 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct MolarMass : - IArithmeticQuantity, + public readonly partial struct MolarMass : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Molarity.g.cs b/UnitsNet/GeneratedCode/Quantities/Molarity.g.cs index 83c4ff33fb..f38b44b2d7 100644 --- a/UnitsNet/GeneratedCode/Quantities/Molarity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Molarity.g.cs @@ -39,22 +39,14 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Molarity : - IArithmeticQuantity, + public readonly partial struct Molarity : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Permeability.g.cs b/UnitsNet/GeneratedCode/Quantities/Permeability.g.cs index 25987bbc99..e91b827d63 100644 --- a/UnitsNet/GeneratedCode/Quantities/Permeability.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Permeability.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Permeability : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Permeability : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Permittivity.g.cs b/UnitsNet/GeneratedCode/Quantities/Permittivity.g.cs index 35b62f63d6..22f422396c 100644 --- a/UnitsNet/GeneratedCode/Quantities/Permittivity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Permittivity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Permittivity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Permittivity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/PorousMediumPermeability.g.cs b/UnitsNet/GeneratedCode/Quantities/PorousMediumPermeability.g.cs index 3d228d91f6..e45dff84c7 100644 --- a/UnitsNet/GeneratedCode/Quantities/PorousMediumPermeability.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/PorousMediumPermeability.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct PorousMediumPermeability : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct PorousMediumPermeability : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Power.g.cs b/UnitsNet/GeneratedCode/Quantities/Power.g.cs index 2f49d5080e..b77d4434d1 100644 --- a/UnitsNet/GeneratedCode/Quantities/Power.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Power.g.cs @@ -36,31 +36,23 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Power : - IArithmeticQuantity, + public readonly partial struct Power : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/PowerDensity.g.cs b/UnitsNet/GeneratedCode/Quantities/PowerDensity.g.cs index 24c67a9352..63057d556b 100644 --- a/UnitsNet/GeneratedCode/Quantities/PowerDensity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/PowerDensity.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct PowerDensity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct PowerDensity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/PowerRatio.g.cs b/UnitsNet/GeneratedCode/Quantities/PowerRatio.g.cs index eee3ae332b..e06a842103 100644 --- a/UnitsNet/GeneratedCode/Quantities/PowerRatio.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/PowerRatio.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct PowerRatio : - ILogarithmicQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct PowerRatio : IQuantity, ILogarithmicQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Pressure.g.cs b/UnitsNet/GeneratedCode/Quantities/Pressure.g.cs index 2a91befa59..658a35c36f 100644 --- a/UnitsNet/GeneratedCode/Quantities/Pressure.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Pressure.g.cs @@ -36,27 +36,19 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Pressure : - IArithmeticQuantity, + public readonly partial struct Pressure : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/PressureChangeRate.g.cs b/UnitsNet/GeneratedCode/Quantities/PressureChangeRate.g.cs index 2d54c32e54..b7df37699c 100644 --- a/UnitsNet/GeneratedCode/Quantities/PressureChangeRate.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/PressureChangeRate.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct PressureChangeRate : - IArithmeticQuantity, + public readonly partial struct PressureChangeRate : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDose.g.cs b/UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDose.g.cs index 66133892c4..b1b0813bb4 100644 --- a/UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDose.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDose.g.cs @@ -36,19 +36,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RadiationEquivalentDose : - IArithmeticQuantity, + public readonly partial struct RadiationEquivalentDose : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDoseRate.g.cs b/UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDoseRate.g.cs index d3e02da4f9..bd3317dbe3 100644 --- a/UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDoseRate.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RadiationEquivalentDoseRate.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RadiationEquivalentDoseRate : - IArithmeticQuantity, + public readonly partial struct RadiationEquivalentDoseRate : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RadiationExposure.g.cs b/UnitsNet/GeneratedCode/Quantities/RadiationExposure.g.cs index 812da76551..dcb6b71088 100644 --- a/UnitsNet/GeneratedCode/Quantities/RadiationExposure.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RadiationExposure.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RadiationExposure : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct RadiationExposure : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Radioactivity.g.cs b/UnitsNet/GeneratedCode/Quantities/Radioactivity.g.cs index a96a95c519..5ba53498df 100644 --- a/UnitsNet/GeneratedCode/Quantities/Radioactivity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Radioactivity.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Radioactivity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Radioactivity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Ratio.g.cs b/UnitsNet/GeneratedCode/Quantities/Ratio.g.cs index 6512dc48b9..50f8a43c7b 100644 --- a/UnitsNet/GeneratedCode/Quantities/Ratio.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Ratio.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Ratio : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Ratio : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RatioChangeRate.g.cs b/UnitsNet/GeneratedCode/Quantities/RatioChangeRate.g.cs index 82ae527d99..57e71d05d7 100644 --- a/UnitsNet/GeneratedCode/Quantities/RatioChangeRate.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RatioChangeRate.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RatioChangeRate : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct RatioChangeRate : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ReciprocalArea.g.cs b/UnitsNet/GeneratedCode/Quantities/ReciprocalArea.g.cs index fa16223844..16ceea00ab 100644 --- a/UnitsNet/GeneratedCode/Quantities/ReciprocalArea.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ReciprocalArea.g.cs @@ -39,22 +39,14 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ReciprocalArea : - IArithmeticQuantity, + public readonly partial struct ReciprocalArea : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ReciprocalLength.g.cs b/UnitsNet/GeneratedCode/Quantities/ReciprocalLength.g.cs index 0750dace25..037ff711d8 100644 --- a/UnitsNet/GeneratedCode/Quantities/ReciprocalLength.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ReciprocalLength.g.cs @@ -39,24 +39,16 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ReciprocalLength : - IArithmeticQuantity, + public readonly partial struct ReciprocalLength : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RelativeHumidity.g.cs b/UnitsNet/GeneratedCode/Quantities/RelativeHumidity.g.cs index 6c12b06e53..922236a077 100644 --- a/UnitsNet/GeneratedCode/Quantities/RelativeHumidity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RelativeHumidity.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RelativeHumidity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct RelativeHumidity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RotationalAcceleration.g.cs b/UnitsNet/GeneratedCode/Quantities/RotationalAcceleration.g.cs index ed0f6dde57..1735222b20 100644 --- a/UnitsNet/GeneratedCode/Quantities/RotationalAcceleration.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RotationalAcceleration.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RotationalAcceleration : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct RotationalAcceleration : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RotationalSpeed.g.cs b/UnitsNet/GeneratedCode/Quantities/RotationalSpeed.g.cs index 7262bc7e78..783b734b78 100644 --- a/UnitsNet/GeneratedCode/Quantities/RotationalSpeed.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RotationalSpeed.g.cs @@ -36,19 +36,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RotationalSpeed : - IArithmeticQuantity, + public readonly partial struct RotationalSpeed : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RotationalStiffness.g.cs b/UnitsNet/GeneratedCode/Quantities/RotationalStiffness.g.cs index f2994ea8fd..8eb3f44599 100644 --- a/UnitsNet/GeneratedCode/Quantities/RotationalStiffness.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RotationalStiffness.g.cs @@ -36,20 +36,12 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RotationalStiffness : - IArithmeticQuantity, + public readonly partial struct RotationalStiffness : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/RotationalStiffnessPerLength.g.cs b/UnitsNet/GeneratedCode/Quantities/RotationalStiffnessPerLength.g.cs index f8eb0afebf..9952dcf713 100644 --- a/UnitsNet/GeneratedCode/Quantities/RotationalStiffnessPerLength.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/RotationalStiffnessPerLength.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct RotationalStiffnessPerLength : - IArithmeticQuantity, + public readonly partial struct RotationalStiffnessPerLength : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Scalar.g.cs b/UnitsNet/GeneratedCode/Quantities/Scalar.g.cs index abc9a24426..25a19e6f00 100644 --- a/UnitsNet/GeneratedCode/Quantities/Scalar.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Scalar.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Scalar : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Scalar : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/SolidAngle.g.cs b/UnitsNet/GeneratedCode/Quantities/SolidAngle.g.cs index 2a0570adc9..e5d8fcb751 100644 --- a/UnitsNet/GeneratedCode/Quantities/SolidAngle.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/SolidAngle.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct SolidAngle : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct SolidAngle : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/SpecificEnergy.g.cs b/UnitsNet/GeneratedCode/Quantities/SpecificEnergy.g.cs index 26e37a9e26..e3ee123f92 100644 --- a/UnitsNet/GeneratedCode/Quantities/SpecificEnergy.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/SpecificEnergy.g.cs @@ -39,23 +39,15 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct SpecificEnergy : - IArithmeticQuantity, + public readonly partial struct SpecificEnergy : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/SpecificEntropy.g.cs b/UnitsNet/GeneratedCode/Quantities/SpecificEntropy.g.cs index 97c2ee7c4c..8cba65d3d7 100644 --- a/UnitsNet/GeneratedCode/Quantities/SpecificEntropy.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/SpecificEntropy.g.cs @@ -36,19 +36,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct SpecificEntropy : - IArithmeticQuantity, + public readonly partial struct SpecificEntropy : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/SpecificFuelConsumption.g.cs b/UnitsNet/GeneratedCode/Quantities/SpecificFuelConsumption.g.cs index 0bbf00f424..972cd0e096 100644 --- a/UnitsNet/GeneratedCode/Quantities/SpecificFuelConsumption.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/SpecificFuelConsumption.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct SpecificFuelConsumption : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct SpecificFuelConsumption : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/SpecificVolume.g.cs b/UnitsNet/GeneratedCode/Quantities/SpecificVolume.g.cs index 7ef2f228ec..d8d3897b79 100644 --- a/UnitsNet/GeneratedCode/Quantities/SpecificVolume.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/SpecificVolume.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct SpecificVolume : - IArithmeticQuantity, + public readonly partial struct SpecificVolume : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/SpecificWeight.g.cs b/UnitsNet/GeneratedCode/Quantities/SpecificWeight.g.cs index 5903a099c5..dd5ae33f9d 100644 --- a/UnitsNet/GeneratedCode/Quantities/SpecificWeight.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/SpecificWeight.g.cs @@ -39,21 +39,13 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct SpecificWeight : - IArithmeticQuantity, + public readonly partial struct SpecificWeight : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Speed.g.cs b/UnitsNet/GeneratedCode/Quantities/Speed.g.cs index 35a005752d..efd84dc90a 100644 --- a/UnitsNet/GeneratedCode/Quantities/Speed.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Speed.g.cs @@ -36,25 +36,17 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Speed : - IArithmeticQuantity, + public readonly partial struct Speed : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/StandardVolumeFlow.g.cs b/UnitsNet/GeneratedCode/Quantities/StandardVolumeFlow.g.cs index 34a3c09609..f187baca26 100644 --- a/UnitsNet/GeneratedCode/Quantities/StandardVolumeFlow.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/StandardVolumeFlow.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct StandardVolumeFlow : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct StandardVolumeFlow : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Temperature.g.cs b/UnitsNet/GeneratedCode/Quantities/Temperature.g.cs index 94e66aff64..33882d3ca7 100644 --- a/UnitsNet/GeneratedCode/Quantities/Temperature.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Temperature.g.cs @@ -36,16 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Temperature : - IAffineQuantity, -#if NET7_0_OR_GREATER - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Temperature : IQuantity, IAffineQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/TemperatureChangeRate.g.cs b/UnitsNet/GeneratedCode/Quantities/TemperatureChangeRate.g.cs index 1fac793995..76725227cd 100644 --- a/UnitsNet/GeneratedCode/Quantities/TemperatureChangeRate.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/TemperatureChangeRate.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct TemperatureChangeRate : - IArithmeticQuantity, + public readonly partial struct TemperatureChangeRate : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/TemperatureDelta.g.cs b/UnitsNet/GeneratedCode/Quantities/TemperatureDelta.g.cs index 6951bd5d09..79a933c636 100644 --- a/UnitsNet/GeneratedCode/Quantities/TemperatureDelta.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/TemperatureDelta.g.cs @@ -36,24 +36,16 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct TemperatureDelta : - IArithmeticQuantity, + public readonly partial struct TemperatureDelta : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/TemperatureGradient.g.cs b/UnitsNet/GeneratedCode/Quantities/TemperatureGradient.g.cs index f215eb31ca..16baea4113 100644 --- a/UnitsNet/GeneratedCode/Quantities/TemperatureGradient.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/TemperatureGradient.g.cs @@ -36,18 +36,10 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct TemperatureGradient : - IArithmeticQuantity, + public readonly partial struct TemperatureGradient : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ThermalConductivity.g.cs b/UnitsNet/GeneratedCode/Quantities/ThermalConductivity.g.cs index 3821de1292..28d35890ab 100644 --- a/UnitsNet/GeneratedCode/Quantities/ThermalConductivity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ThermalConductivity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ThermalConductivity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ThermalConductivity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ThermalInsulance.g.cs b/UnitsNet/GeneratedCode/Quantities/ThermalInsulance.g.cs index 3c08dc9c5a..ea9597c73a 100644 --- a/UnitsNet/GeneratedCode/Quantities/ThermalInsulance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ThermalInsulance.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ThermalInsulance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ThermalInsulance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/ThermalResistance.g.cs b/UnitsNet/GeneratedCode/Quantities/ThermalResistance.g.cs index 11693deb43..f89c344a49 100644 --- a/UnitsNet/GeneratedCode/Quantities/ThermalResistance.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/ThermalResistance.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct ThermalResistance : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct ThermalResistance : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Torque.g.cs b/UnitsNet/GeneratedCode/Quantities/Torque.g.cs index 8a260baeef..b26e16436a 100644 --- a/UnitsNet/GeneratedCode/Quantities/Torque.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Torque.g.cs @@ -36,24 +36,16 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Torque : - IArithmeticQuantity, + public readonly partial struct Torque : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Turbidity.g.cs b/UnitsNet/GeneratedCode/Quantities/Turbidity.g.cs index 483b6c6be3..2cd96f9654 100644 --- a/UnitsNet/GeneratedCode/Quantities/Turbidity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Turbidity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Turbidity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct Turbidity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/VitaminA.g.cs b/UnitsNet/GeneratedCode/Quantities/VitaminA.g.cs index 1528ba9318..01af6ae7c0 100644 --- a/UnitsNet/GeneratedCode/Quantities/VitaminA.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/VitaminA.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct VitaminA : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct VitaminA : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/Volume.g.cs b/UnitsNet/GeneratedCode/Quantities/Volume.g.cs index 223437b961..c82b027571 100644 --- a/UnitsNet/GeneratedCode/Quantities/Volume.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Volume.g.cs @@ -36,30 +36,22 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct Volume : - IArithmeticQuantity, + public readonly partial struct Volume : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IDivisionOperators, - IDivisionOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IDivisionOperators + , IDivisionOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/VolumeConcentration.g.cs b/UnitsNet/GeneratedCode/Quantities/VolumeConcentration.g.cs index 2b33114983..dfc2040541 100644 --- a/UnitsNet/GeneratedCode/Quantities/VolumeConcentration.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/VolumeConcentration.g.cs @@ -39,19 +39,11 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct VolumeConcentration : - IArithmeticQuantity, + public readonly partial struct VolumeConcentration : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IMultiplyOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/VolumeFlow.g.cs b/UnitsNet/GeneratedCode/Quantities/VolumeFlow.g.cs index 95ab4f9d45..8503a98ba6 100644 --- a/UnitsNet/GeneratedCode/Quantities/VolumeFlow.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/VolumeFlow.g.cs @@ -36,22 +36,14 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct VolumeFlow : - IArithmeticQuantity, + public readonly partial struct VolumeFlow : IQuantity, ILinearQuantity #if NET7_0_OR_GREATER - IDivisionOperators, - IDivisionOperators, - IMultiplyOperators, - IMultiplyOperators, - IDivisionOperators, - IMultiplyOperators, - IComparisonOperators, - IParsable, + , IDivisionOperators + , IMultiplyOperators + , IMultiplyOperators + , IDivisionOperators + , IMultiplyOperators #endif - IComparable, - IComparable, - IEquatable, - IFormattable { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/VolumeFlowPerArea.g.cs b/UnitsNet/GeneratedCode/Quantities/VolumeFlowPerArea.g.cs index e184bb5cd8..02a222645c 100644 --- a/UnitsNet/GeneratedCode/Quantities/VolumeFlowPerArea.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/VolumeFlowPerArea.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct VolumeFlowPerArea : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct VolumeFlowPerArea : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/VolumePerLength.g.cs b/UnitsNet/GeneratedCode/Quantities/VolumePerLength.g.cs index ce3022be10..d819563a30 100644 --- a/UnitsNet/GeneratedCode/Quantities/VolumePerLength.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/VolumePerLength.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct VolumePerLength : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct VolumePerLength : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/VolumetricHeatCapacity.g.cs b/UnitsNet/GeneratedCode/Quantities/VolumetricHeatCapacity.g.cs index 650743addb..6363be1a85 100644 --- a/UnitsNet/GeneratedCode/Quantities/VolumetricHeatCapacity.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/VolumetricHeatCapacity.g.cs @@ -39,17 +39,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct VolumetricHeatCapacity : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct VolumetricHeatCapacity : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/GeneratedCode/Quantities/WarpingMomentOfInertia.g.cs b/UnitsNet/GeneratedCode/Quantities/WarpingMomentOfInertia.g.cs index bd87fe23e2..eaff5ee15f 100644 --- a/UnitsNet/GeneratedCode/Quantities/WarpingMomentOfInertia.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/WarpingMomentOfInertia.g.cs @@ -36,17 +36,7 @@ namespace UnitsNet /// [DataContract] [DebuggerTypeProxy(typeof(QuantityDisplay))] - public readonly partial struct WarpingMomentOfInertia : - IArithmeticQuantity, -#if NET7_0_OR_GREATER - IDivisionOperators, - IComparisonOperators, - IParsable, -#endif - IComparable, - IComparable, - IEquatable, - IFormattable + public readonly partial struct WarpingMomentOfInertia : IQuantity, ILinearQuantity { /// /// The numeric value this quantity was constructed with. diff --git a/UnitsNet/IAffineQuantity.cs b/UnitsNet/IAffineQuantity.cs index 0a8028f784..7820473e19 100644 --- a/UnitsNet/IAffineQuantity.cs +++ b/UnitsNet/IAffineQuantity.cs @@ -7,23 +7,6 @@ namespace UnitsNet; -/// -/// An that (in .NET 7+) implements generic math interfaces for arithmetic operations. -/// -/// The type itself, for the CRT pattern. -/// The underlying unit enum type. -/// -public interface IAffineQuantity : IQuantity, IAffineQuantity -#if NET7_0_OR_GREATER - , IAdditionOperators - , ISubtractionOperators - where TOffset : IAdditiveIdentity -#endif - where TSelf : IAffineQuantity - where TUnitType : struct, Enum -{ -} - /// /// An that (in .NET 7+) implements generic math interfaces for arithmetic operations. /// @@ -32,6 +15,8 @@ public interface IAffineQuantity : IQuantity : IQuantityOfType #if NET7_0_OR_GREATER , IAdditiveIdentity + , IAdditionOperators + , ISubtractionOperators where TOffset : IAdditiveIdentity #endif where TSelf : IAffineQuantity diff --git a/UnitsNet/IArithmeticQuantity.cs b/UnitsNet/IArithmeticQuantity.cs index d9d075d19e..86615a4c5a 100644 --- a/UnitsNet/IArithmeticQuantity.cs +++ b/UnitsNet/IArithmeticQuantity.cs @@ -7,60 +7,19 @@ namespace UnitsNet; -/// -/// Represents a quantity that has both magnitude and direction, supporting various arithmetic operations and -/// comparisons. -/// -/// -/// This interface defines standard linear arithmetic operations such as addition, subtraction, multiplication, and -/// division. -/// These types of quantities naturally support comparison operations with either absolute or relative tolerance, which -/// is useful for determining equality within a certain margin of error. -/// -/// For more information, see the Wikipedia page on -/// -/// Dimensional -/// Analysis -/// -/// . -/// -/// -/// The type that implements this interface. -public interface ILinearQuantity : IQuantityOfType -#if NET7_0_OR_GREATER - , IAdditiveIdentity -#endif - where TSelf : ILinearQuantity -{ -#if NET7_0_OR_GREATER - /// - /// The zero value of this quantity. - /// - static abstract TSelf Zero { get; } - - static TSelf IAdditiveIdentity.AdditiveIdentity - { - get => TSelf.Zero; - } - -#endif -} - /// /// An that (in .NET 7+) implements generic math interfaces for arithmetic /// operations. /// /// The type itself, for the CRT pattern. -/// The underlying unit enum type. -public interface IArithmeticQuantity : IQuantity, ILinearQuantity +public interface IArithmeticQuantity #if NET7_0_OR_GREATER - , IAdditionOperators + : IAdditionOperators , ISubtractionOperators , IMultiplyOperators , IDivisionOperators , IUnaryNegationOperators #endif - where TSelf : IArithmeticQuantity - where TUnitType : struct, Enum + where TSelf : IArithmeticQuantity { } diff --git a/UnitsNet/ILinearQuantity.cs b/UnitsNet/ILinearQuantity.cs new file mode 100644 index 0000000000..d7d3bb4e05 --- /dev/null +++ b/UnitsNet/ILinearQuantity.cs @@ -0,0 +1,47 @@ +// Licensed under MIT No Attribution, see LICENSE file at the root. +// Copyright 2013 Andreas Gullberg Larsen (andreas.larsen84@gmail.com). Maintained at https://github.com/angularsen/UnitsNet. + +#if NET +using System.Numerics; +#endif + +namespace UnitsNet; + +/// +/// Represents a quantity that has both magnitude and direction, supporting various arithmetic operations and +/// comparisons. +/// +/// +/// This interface defines standard linear arithmetic operations such as addition, subtraction, multiplication, and +/// division. +/// These types of quantities naturally support comparison operations with either absolute or relative tolerance, which +/// is useful for determining equality within a certain margin of error. +/// +/// For more information, see the Wikipedia page on +/// +/// Dimensional +/// Analysis +/// +/// . +/// +/// +/// The type that implements this interface. +public interface ILinearQuantity : IQuantityOfType, IArithmeticQuantity +#if NET7_0_OR_GREATER + , IAdditiveIdentity +#endif + where TSelf : ILinearQuantity +{ +#if NET7_0_OR_GREATER + /// + /// The zero value of this quantity. + /// + static abstract TSelf Zero { get; } + + static TSelf IAdditiveIdentity.AdditiveIdentity + { + get => TSelf.Zero; + } + +#endif +} diff --git a/UnitsNet/ILogarithmicQuantity.cs b/UnitsNet/ILogarithmicQuantity.cs index eb35775ac1..425f7abccc 100644 --- a/UnitsNet/ILogarithmicQuantity.cs +++ b/UnitsNet/ILogarithmicQuantity.cs @@ -7,22 +7,6 @@ namespace UnitsNet; -/// -/// The type itself, for the CRT pattern. -/// The underlying unit enum type. -public interface ILogarithmicQuantity : IQuantity, ILogarithmicQuantity -#if NET7_0_OR_GREATER - , IAdditionOperators - , ISubtractionOperators - , IMultiplyOperators - , IDivisionOperators - , IUnaryNegationOperators -#endif - where TSelf : ILogarithmicQuantity - where TUnitType : struct, Enum -{ -} - /// /// Represents a logarithmic quantity that supports arithmetic operations and implements generic math interfaces /// (in .NET 7+). This interface is designed for quantities that are logarithmic in nature, such as decibels. @@ -34,7 +18,7 @@ public interface ILogarithmicQuantity : IQuantity -public interface ILogarithmicQuantity : IQuantityOfType +public interface ILogarithmicQuantity : IQuantityOfType, IArithmeticQuantity #if NET7_0_OR_GREATER , IMultiplicativeIdentity #endif diff --git a/UnitsNet/IQuantity.cs b/UnitsNet/IQuantity.cs index 149b3f9dd0..4d1e0af4dc 100644 --- a/UnitsNet/IQuantity.cs +++ b/UnitsNet/IQuantity.cs @@ -1,12 +1,14 @@ // Licensed under MIT No Attribution, see LICENSE file at the root. // Copyright 2013 Andreas Gullberg Larsen (andreas.larsen84@gmail.com). Maintained at https://github.com/angularsen/UnitsNet. +using System.Numerics; + namespace UnitsNet { /// /// Represents a quantity. /// - public interface IQuantity : IFormattable + public interface IQuantity : IComparable, IFormattable { /// /// Information about the quantity type, such as unit values and names. @@ -117,8 +119,18 @@ Enum IQuantity.Unit /// methods, without having to include the unit type as additional generic parameter. /// /// - public interface IQuantityOfType : IQuantity + public interface IQuantityOfType : IQuantity +#if NET7_0_OR_GREATER + , IComparisonOperators + , IParsable +#endif + , IComparable + , IEquatable where TQuantity : IQuantity +#if NET7_0_OR_GREATER + , IComparisonOperators + , IParsable +#endif { #if NET ///