diff options
| author | 2018-08-27 01:03:08 +0200 | |
|---|---|---|
| committer | 2018-08-27 01:03:08 +0200 | |
| commit | 64e9988ba715e6e196b84e4a69c871c761562bbd (patch) | |
| tree | 4159ff6831ac34c01069604bebf6b99aad99954a /operationcondition.cpp | |
| parent | 45d618b710483ee1ae42cbdfcaa0406f1132f384 (diff) | |
| download | OneRoll-64e9988ba715e6e196b84e4a69c871c761562bbd.tar.gz OneRoll-64e9988ba715e6e196b84e4a69c871c761562bbd.zip | |
-New API for validating validor.
Prevent endless loop in R operator.
Diffstat (limited to 'operationcondition.cpp')
| -rw-r--r-- | operationcondition.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/operationcondition.cpp b/operationcondition.cpp index 86c013a..2a83fec 100644 --- a/operationcondition.cpp +++ b/operationcondition.cpp @@ -21,7 +21,7 @@ #include "operationcondition.h" OperationCondition::OperationCondition() - : m_operator(Modulo),m_boolean(nullptr),m_value(0) + : m_operator(Modulo),m_boolean(nullptr),m_value(nullptr) { } @@ -103,17 +103,22 @@ QString OperationCondition::toString() switch (m_operator) { case Modulo: - str.append(QStringLiteral("\%")); + str.append(QStringLiteral("\\%")); break; } return QStringLiteral("[%1%2%3]").arg(str).arg(valueToScalar()).arg(m_boolean->toString()); } -quint64 OperationCondition::getValidRangeSize(quint64 faces) const +bool OperationCondition::isValidRangeSize(std::pair<qint64,qint64> range) const { auto value = valueToScalar(); + bool valid = true; + if(value==0) - return 0; - return faces/value; + valid = false; + /* else if(nullptr != m_boolean) + valid = m_boolean->isValidRangeSize(range);*/ + + return valid; } Validator* OperationCondition::getCopy() const |