[apps/calculation] Clean code

This commit is contained in:
Léa Saviot
2019-08-27 11:17:39 +02:00
parent 9dac80492b
commit 7e397ac92b

View File

@@ -119,16 +119,18 @@ Calculation::DisplayOutput Calculation::displayOutput(Context * context) {
m_displayOutput = DisplayOutput::ExactOnly;
} else if (input().recursivelyMatches(
[](const Expression e, Context * c) {
constexpr int approximateOnlyTypesCount = 5;
/* If the input contains the following types, we only display the
* approximate output. */
ExpressionNode::Type t = e.type();
return (t == ExpressionNode::Type::Random)
|| (t == ExpressionNode::Type::Round)
|| (t == ExpressionNode::Type::FracPart)
|| (t == ExpressionNode::Type::ConfidenceInterval)
|| (t == ExpressionNode::Type::PredictionInterval);
},
context, true))
ExpressionNode::Type approximateOnlyTypes[approximateOnlyTypesCount] = {
ExpressionNode::Type::Random,
ExpressionNode::Type::Round,
ExpressionNode::Type::FracPart,
ExpressionNode::Type::ConfidenceInterval,
ExpressionNode::Type::PredictionInterval
};
return e.isOfType(approximateOnlyTypes, approximateOnlyTypesCount);
}, context, true))
{
m_displayOutput = DisplayOutput::ApproximateOnly;
} else if (strcmp(exactOutputText(), approximateOutputText()) == 0) {