From f2bfc7ec9baf9b1dceabc52c86632cf1ea8c7fd3 Mon Sep 17 00:00:00 2001 From: Ruben Dashyan Date: Fri, 20 Mar 2020 15:47:06 +0100 Subject: [PATCH] [poincare/expression] Remove redundancies in getUnit --- poincare/src/multiplication.cpp | 7 ++----- poincare/src/power.cpp | 3 --- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/poincare/src/multiplication.cpp b/poincare/src/multiplication.cpp index fc8aa8922..c482edb56 100644 --- a/poincare/src/multiplication.cpp +++ b/poincare/src/multiplication.cpp @@ -256,12 +256,9 @@ int Multiplication::getPolynomialCoefficients(Context * context, const char * sy } Expression Multiplication::getUnit() const { - const int childrenCount = numberOfChildren(); - if (childrenCount == 1) { - return childAtIndex(0).getUnit(); - } Multiplication result = Multiplication::Builder(); int resultChildrenCount = 0; + const int childrenCount = numberOfChildren(); for (int i = 0; i < childrenCount; i++) { Expression currentUnit = childAtIndex(i).getUnit(); if (!currentUnit.isUninitialized()) { @@ -272,7 +269,7 @@ Expression Multiplication::getUnit() const { if (resultChildrenCount == 0) { return Expression(); } - return std::move(result); + return result.squashUnaryHierarchyInPlace(); } template diff --git a/poincare/src/power.cpp b/poincare/src/power.cpp index f5a04957c..b8f096678 100644 --- a/poincare/src/power.cpp +++ b/poincare/src/power.cpp @@ -986,9 +986,6 @@ Expression Power::shallowBeautify(ExpressionNode::ReductionContext reductionCont } Expression Power::getUnit() const { - if (childAtIndex(0).type() == ExpressionNode::Type::Unit) { - return clone(); - } Expression baseUnit = childAtIndex(0).getUnit(); if (baseUnit.isUninitialized()) { return baseUnit;