[poincare/unit] Standard unit methods

Added methods to return the standard format for each dimension,
depending on the chosen unit system.

Change-Id: I3591a806beca315674cc09093b57e8753db5db6a
This commit is contained in:
Gabriel Ozouf
2020-07-21 11:56:50 +02:00
committed by Émilie Feral
parent 9f40e45b20
commit 3ff25fb5c1
2 changed files with 62 additions and 0 deletions

View File

@@ -876,6 +876,7 @@ public:
static Expression BuildImperialDistanceSplit(double inches, Context * context);
static Expression BuildImperialMassSplit(double ounces, Context * context);
static Expression BuildImperialVolumeSplit(double fluidOunces, Context * context);
static double ConvertedValueInUnit(Expression e, Unit unit, Context * context);
static bool IsSI(Expression & e);
static bool IsSISpeed(Expression & e);
@@ -886,6 +887,12 @@ public:
bool isSecond() const;
bool isKilogram() const;
static Expression StandardSpeedConversion(Expression e, Preferences::UnitFormat format, Context * context);
static Expression StandardDistanceConversion(Expression e, Preferences::UnitFormat format, Context * context);
static Expression StandardVolumeConversion(Expression e, Preferences::UnitFormat format, Context * context);
static Expression StandardMassConversion(Expression e, Preferences::UnitFormat format, Context * context);
static Expression StandardSurfaceConversion(Expression e, Preferences::UnitFormat format, Context * context);
// Simplification
Expression shallowReduce(ExpressionNode::ReductionContext reductionContext);
Expression shallowBeautify(ExpressionNode::ReductionContext reductionContext);