[poincare] Change call to Expression::shallowReduce to

Expression::defaultShallowReduce to avoid infinite loop
This commit is contained in:
Émilie Feral
2018-08-17 12:10:37 +02:00
parent 766efc21a8
commit f06fe953ce
49 changed files with 51 additions and 51 deletions

View File

@@ -28,7 +28,7 @@ LayoutRef AbsoluteValue::createLayout(Preferences::PrintFloatMode floatDisplayMo
}
Expression AbsoluteValue::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -18,7 +18,7 @@ Expression * ArcCosine::clone() const {
}
Expression ArcCosine::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -18,7 +18,7 @@ Expression * ArcSine::clone() const {
}
Expression ArcSine::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -18,7 +18,7 @@ Expression * ArcTangent::clone() const {
}
Expression ArcTangent::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -21,7 +21,7 @@ Expression * BinomialCoefficient::clone() const {
}
Expression BinomialCoefficient::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -21,7 +21,7 @@ Expression * Ceiling::clone() const {
}
Expression Ceiling::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -17,7 +17,7 @@ Expression * ComplexArgument::clone() const {
}
Expression ComplexArgument::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -25,7 +25,7 @@ int ConfidenceInterval::polynomialDegree(char symbolName) const {
}
Expression ConfidenceInterval::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -20,7 +20,7 @@ LayoutRef Conjugate::createLayout(Preferences::PrintFloatMode floatDisplayMode,
}
Expression Conjugate::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -33,7 +33,7 @@ std::complex<T> Cosine::computeOnComplex(const std::complex<T> c, Preferences::A
}
Expression Cosine::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -274,7 +274,7 @@ Decimal::Decimal(size_t size, Integer m, int e) : Number(TreePool::sharedPool()-
}
Expression Decimal::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) const {
Expression e = Expression::shallowReduce(context, angleUnit);
Expression e = Expression::defaultShallowReduce(context, angleUnit);
if (e.isUndefinedOrAllocationFailure()) {
return e;
}

View File

@@ -30,7 +30,7 @@ int Derivative::polynomialDegree(char symbolName) const {
}
Expression Derivative::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -17,7 +17,7 @@ Expression * Determinant::clone() const {
}
Expression Determinant::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -65,7 +65,7 @@ template<typename T> MatrixComplex<T> DivisionNode::computeOnMatrices(const Matr
// Division
Expression Division::shallowReduce(Context & context, Preferences::AngleUnit angleUnit) const {
Expression result = Expression::shallowReduce(context, angleUnit);
Expression result = Expression::defaultShallowReduce(context, angleUnit);
if (result.isUndefinedOrAllocationFailure()) {
return result;
}

View File

@@ -19,7 +19,7 @@ Expression * DivisionQuotient::clone() const {
}
Expression DivisionQuotient::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -19,7 +19,7 @@ Expression * DivisionRemainder::clone() const {
}
Expression DivisionRemainder::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -39,7 +39,7 @@ Expression * Equal::standardEquation(Context & context, Preferences::AngleUnit a
}
Expression Equal::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -37,7 +37,7 @@ bool Factorial::needsParenthesesWithParent(const SerializationHelperInterface *
/* Simplification */
Expression Factorial::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -21,7 +21,7 @@ Expression * Floor::clone() const {
}
Expression Floor::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -18,7 +18,7 @@ Expression * FracPart::clone() const {
}
Expression FracPart::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -20,7 +20,7 @@ Expression * GreatCommonDivisor::clone() const {
}
Expression GreatCommonDivisor::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -18,7 +18,7 @@ Expression * HyperbolicArcCosine::clone() const {
}
Expression HyperbolicArcCosine::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -18,7 +18,7 @@ Expression * HyperbolicArcSine::clone() const {
}
Expression HyperbolicArcSine::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -18,7 +18,7 @@ Expression * HyperbolicArcTangent::clone() const {
}
Expression HyperbolicArcTangent::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -22,7 +22,7 @@ Expression * HyperbolicCosine::clone() const {
}
Expression HyperbolicCosine::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -22,7 +22,7 @@ Expression * HyperbolicSine::clone() const {
}
Expression HyperbolicSine::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -21,7 +21,7 @@ Expression * HyperbolicTangent::clone() const {
}
Expression HyperbolicTangent::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -19,7 +19,7 @@ Expression * ImaginaryPart::clone() const {
Expression ImaginaryPart::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -32,7 +32,7 @@ int Integral::polynomialDegree(char symbolName) const {
}
Expression Integral::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -20,7 +20,7 @@ Expression * LeastCommonMultiple::clone() const {
}
Expression LeastCommonMultiple::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -60,7 +60,7 @@ Expression * Logarithm::simpleShallowReduce(Context & context, Preferences::Angl
}
Expression Logarithm::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -17,7 +17,7 @@ Expression * MatrixDimension::clone() const {
}
Expression MatrixDimension::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -20,7 +20,7 @@ Expression * MatrixInverse::clone() const {
}
Expression MatrixInverse::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -19,7 +19,7 @@ Expression * MatrixTrace::clone() const {
}
Expression MatrixTrace::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -18,7 +18,7 @@ Expression * MatrixTranspose::clone() const {
}
Expression MatrixTranspose::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -190,10 +190,10 @@ Expression Multiplication::shallowReduce(Context& context, Preferences::AngleUni
}
Expression Multiplication::privateShallowReduce(Context & context, Preferences::AngleUnit angleUnit, bool shouldExpand, bool canBeInterrupted) const {
return Expression::shallowReduce(context, angleUnit);;
return Expression::defaultShallowReduce(context, angleUnit);;
//TODO
#if 0
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -21,7 +21,7 @@ Expression * NaperianLogarithm::clone() const {
}
Expression NaperianLogarithm::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -20,7 +20,7 @@ Expression * NthRoot::clone() const {
}
Expression NthRoot::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -69,8 +69,8 @@ Expression OppositeNode::shallowReduce(Context& context, Preferences::AngleUnit
/* Simplification */
Expression Opposite::shallowReduce(Context & context, Preferences::AngleUnit angleUnit) {
Expression result = Expression::shallowReduce(context, angleUnit);
Expression Opposite::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression result = Expression::defaultShallowReduce(context, angleUnit);
if (result.isUndefinedOrAllocationFailure()) {
return result;
}

View File

@@ -32,7 +32,7 @@ Evaluation<T> ParenthesisNode::templatedApproximate(Context& context, Preference
}
Expression Parenthesis::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) const {
Expression e = Expression::shallowReduce(context, angleUnit);
Expression e = Expression::defaultShallowReduce(context, angleUnit);
if (e.isUndefinedOrAllocationFailure()) {
return e;
}

View File

@@ -19,7 +19,7 @@ Expression * PermuteCoefficient::clone() const {
}
Expression PermuteCoefficient::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -254,7 +254,7 @@ Expression Power::shallowReduce(Context& context, Preferences::AngleUnit angleUn
return result;
//TODO
#if 0
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -26,7 +26,7 @@ int PredictionInterval::polynomialDegree(char symbolName) const {
}
Expression PredictionInterval::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -17,7 +17,7 @@ Expression * RealPart::clone() const {
}
Expression RealPart::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -20,7 +20,7 @@ Expression * Round::clone() const {
}
Expression Round::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -33,7 +33,7 @@ std::complex<T> Sine::computeOnComplex(const std::complex<T> c, Preferences::Ang
}
Expression Sine::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -37,7 +37,7 @@ std::complex<T> SquareRoot::computeOnComplex(const std::complex<T> c, Preference
}
Expression SquareRoot::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}

View File

@@ -58,7 +58,7 @@ Expression SubtractionNode::shallowReduce(Context& context, Preferences::AngleUn
}
Expression Subtraction::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) const {
Expression e = Expression::shallowReduce(context, angleUnit);
Expression e = Expression::defaultShallowReduce(context, angleUnit);
if (e.type() == ExpressionNode::Type::AllocationFailure || e.type() == ExpressionNode::Type::Undefined ) { //TODO use Expression method to make the ||
return e;
}

View File

@@ -34,7 +34,7 @@ std::complex<T> Tangent::computeOnComplex(const std::complex<T> c, Preferences::
}
Expression Tangent::shallowReduce(Context& context, Preferences::AngleUnit angleUnit) {
Expression * e = Expression::shallowReduce(context, angleUnit);
Expression * e = Expression::defaultShallowReduce(context, angleUnit);
if (e != this) {
return e;
}