diff --git a/poincare/include/poincare/expression_node.h b/poincare/include/poincare/expression_node.h index 6554cdb70..b0613bb25 100644 --- a/poincare/include/poincare/expression_node.h +++ b/poincare/include/poincare/expression_node.h @@ -154,7 +154,7 @@ public: protected: // Private methods used in simplification process - /*!*/ virtual Expression cloneDenominator(Context & context, Preferences::AngleUnit angleUnit) const; + /*!*/ virtual Expression denominator(Context & context, Preferences::AngleUnit angleUnit) const; /* Hierarchy */ ExpressionNode * childAtIndex(int i) const override { return static_cast(TreeNode::childAtIndex(i)); } diff --git a/poincare/include/poincare/multiplication.h b/poincare/include/poincare/multiplication.h index bf6b93c7e..4764a5928 100644 --- a/poincare/include/poincare/multiplication.h +++ b/poincare/include/poincare/multiplication.h @@ -44,7 +44,7 @@ private: void factorizeBase(Expression * e1, Expression * e2, Context & context, Preferences::AngleUnit angleUnit); void factorizeExponent(Expression * e1, Expression * e2, Context & context, Preferences::AngleUnit angleUnit); Expression * distributeOnOperandAtIndex(int index, Context & context, Preferences::AngleUnit angleUnit); - Expression * cloneDenominator(Context & context, Preferences::AngleUnit angleUnit) const override; + Expression * denominator(Context & context, Preferences::AngleUnit angleUnit) const override; void addMissingFactors(Expression * factor, Context & context, Preferences::AngleUnit angleUnit); void factorizeSineAndCosine(Expression * o1, Expression * o2, Context & context, Preferences::AngleUnit angleUnit); static bool HaveSameNonRationalFactors(const Expression * e1, const Expression * e2); diff --git a/poincare/include/poincare/power.h b/poincare/include/poincare/power.h index 1af93a86f..b551f1b4f 100644 --- a/poincare/include/poincare/power.h +++ b/poincare/include/poincare/power.h @@ -42,7 +42,7 @@ private: int simplificationOrderGreaterType(const Expression * e, bool canBeInterrupted) const override; int simplificationOrderSameType(const ExpressionNode * e, bool canBeInterrupted) const override; Expression * simplifyPowerPower(Power * p, Expression * r, Context & context, Preferences::AngleUnit angleUnit); - Expression * cloneDenominator(Context & context, Preferences::AngleUnit angleUnit) const override; + Expression * denominator(Context & context, Preferences::AngleUnit angleUnit) const override; Expression * simplifyPowerMultiplication(Multiplication * m, Expression * r, Context & context, Preferences::AngleUnit angleUnit); Expression * simplifyRationalRationalPower(Expression * result, Rational * a, Rational * b, Context & context, Preferences::AngleUnit angleUnit); Expression * removeSquareRootsFromDenominator(Context & context, Preferences::AngleUnit angleUnit); diff --git a/poincare/include/poincare/rational.h b/poincare/include/poincare/rational.h index d145fa0bc..e5739c48b 100644 --- a/poincare/include/poincare/rational.h +++ b/poincare/include/poincare/rational.h @@ -53,7 +53,7 @@ private: int simplificationOrderSameType(const ExpressionNode * e, bool canBeInterrupted) const override; Expression shallowBeautify(Context & context, Preferences::AngleUnit angleUnit) const override; Expression setSign(Sign s, Context & context, Preferences::AngleUnit angleUnit) override; - Expression cloneDenominator(Context & context, Preferences::AngleUnit angleUnit) const override; + Expression denominator(Context & context, Preferences::AngleUnit angleUnit) const override; bool m_negative; size_t m_numberOfDigitsNumerator; size_t m_numberOfDigitsDenominator; @@ -96,7 +96,7 @@ private: /* Simplification */ Expression setSign(ExpressionNode::Sign s); Expression shallowBeautify(Context & context, Preferences::AngleUnit angleUnit) const; - Expression cloneDenominator(Context & context, Preferences::AngleUnit angleUnit) const; + Expression denominator(Context & context, Preferences::AngleUnit angleUnit) const; }; } diff --git a/poincare/src/addition.cpp b/poincare/src/addition.cpp index 515497a76..d8f021b50 100644 --- a/poincare/src/addition.cpp +++ b/poincare/src/addition.cpp @@ -186,7 +186,7 @@ Expression * Addition::factorizeOnCommonDenominator(Context & context, Preferenc // Step 1: We want to compute the common denominator, b*d Multiplication * commonDenominator = new Multiplication(); for (int i = 0; i < numberOfChildren(); i++) { - Expression * denominator = operand(i)->cloneDenominator(context, angleUnit); + Expression * denominator = operand(i)->denominator(context, angleUnit); if (denominator) { // Make commonDenominator = LeastCommonMultiple(commonDenominator, denominator); commonDenominator->addMissingFactors(denominator, context, angleUnit); diff --git a/poincare/src/expression_node.cpp b/poincare/src/expression_node.cpp index 156adb004..ad7b0cc9f 100644 --- a/poincare/src/expression_node.cpp +++ b/poincare/src/expression_node.cpp @@ -112,7 +112,7 @@ bool ExpressionNode::isOfType(Type * types, int length) const { return false; } -Expression ExpressionNode::cloneDenominator(Context & context, Preferences::AngleUnit angleUnit) const { +Expression ExpressionNode::denominator(Context & context, Preferences::AngleUnit angleUnit) const { return Expression(nullptr); } diff --git a/poincare/src/multiplication.cpp b/poincare/src/multiplication.cpp index e4c41e6bd..2712099e1 100644 --- a/poincare/src/multiplication.cpp +++ b/poincare/src/multiplication.cpp @@ -612,14 +612,14 @@ Expression * Multiplication::shallowBeautify(Context & context, Preferences::Ang return this; } -Expression * Multiplication::cloneDenominator(Context & context, Preferences::AngleUnit angleUnit) const { +Expression * Multiplication::denominator(Context & context, Preferences::AngleUnit angleUnit) const { // Merge negative power: a*b^-1*c^(-Pi)*d = a*(b*c^Pi)^-1 // WARNING: we do not want to change the expression but to create a new one. SimplificationRoot root(clone()); Expression * e = ((Multiplication *)root.operand(0))->mergeNegativePower(context, angleUnit); Expression * result = nullptr; if (e->type() == Type::Power) { - result = static_cast(e)->cloneDenominator(context, angleUnit); + result = static_cast(e)->denominator(context, angleUnit); } else { assert(e->type() == Type::Multiplication); for (int i = 0; i < e->numberOfChildren(); i++) { diff --git a/poincare/src/power.cpp b/poincare/src/power.cpp index 07288f45b..a4212a676 100644 --- a/poincare/src/power.cpp +++ b/poincare/src/power.cpp @@ -668,7 +668,7 @@ Expression * Power::CreateNthRootOfUnity(const Rational r) { Expression Power::shallowBeautify(Context& context, Preferences::AngleUnit angleUnit) { // X^-y -> 1/(X->shallowBeautify)^y if (operand(1)->sign() == Sign::Negative) { - Expression * p = cloneDenominator(context, angleUnit); + Expression * p = denominator(context, angleUnit); Division * d = new Division(RationalReference(1), p, false); p->shallowReduce(context, angleUnit); replaceWith(d, true); @@ -694,7 +694,7 @@ Expression Power::shallowBeautify(Context& context, Preferences::AngleUnit angle return this; } -Expression * Power::cloneDenominator(Context & context, Preferences::AngleUnit angleUnit) const { +Expression * Power::denominator(Context & context, Preferences::AngleUnit angleUnit) const { if (operand(1)->sign() == Sign::Negative) { Expression * denominator = clone(); Expression * newExponent = denominator->editableOperand(1)->setSign(Sign::Positive, context, angleUnit);