Description
Wrapper types such as ReferencePressure
are limited in polymorphism functionality. At this point, I'm not sure if there are any other wrapper types, the only other I am aware of is the idea of ReferenceVolumeFlow
in #724. Since ReferencePressure
does not inherit IQuantity
et al., it does not behave as the generated types do. It can not be included in List<IQuantity>
for example.
Extend the functionality of ReferencePressure
to inherit the same implementation as all other IQuantity
types.
For ReferencePressure
, a potential workaround is to return Pressure
as ReferencePressure.Absolute
to use as an IQuantity
, but that allows for mistakes to be made by users of the type as an IQuantity
.
Essentially, extend ReferencePressure
to:
public struct ReferencePressure : IQuantity<PressureUnit>, IEquatable<ReferencePressure>, IComparable, IComparable<ReferencePressure>, IConvertible, IFormattable
Aside from manually implementing all inherited functionality, has anything been done to simplify the resolution of this type of idea? I assume otherwise it would be rather straightforward.