aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bin/cli/main.cpp7
-rw-r--r--src/bin/gui/mainwindow.h2
-rw-r--r--src/bin/mobile/maincontroller.cpp24
-rw-r--r--src/bin/webserver/diceserver.cpp4
-rw-r--r--src/libparser/compositevalidator.cpp10
-rw-r--r--src/libparser/dicealias.cpp14
-rw-r--r--src/libparser/diceroller.cpp25
-rw-r--r--src/libparser/die.h1
-rw-r--r--src/libparser/include/diceparser/dicealias.h9
-rw-r--r--src/libparser/node/allsamenode.h2
-rw-r--r--src/libparser/node/executionnode.h2
-rw-r--r--src/libparser/node/filternode.cpp2
-rw-r--r--src/libparser/node/filternode.h1
-rw-r--r--src/libparser/node/groupnode.h1
-rw-r--r--src/libparser/node/jumpbackwardnode.h1
-rw-r--r--src/libparser/node/keepdiceexecnode.h4
-rw-r--r--src/libparser/node/roundnode.h7
-rw-r--r--src/libparser/node/scalaroperatornode.h1
-rw-r--r--src/libparser/node/uniquenode.h3
-rw-r--r--src/libparser/node/valueslistnode.h2
-rw-r--r--src/libparser/parsingtoolbox.cpp48
-rw-r--r--src/libparser/result/diceresult.cpp4
-rw-r--r--src/libparser/validator.cpp32
-rw-r--r--src/libparser/validatorlist.cpp2
-rw-r--r--src/tests/dice/tst_dice.cpp8
25 files changed, 114 insertions, 102 deletions
diff --git a/src/bin/cli/main.cpp b/src/bin/cli/main.cpp
index 91fa1ef..a63f0ab 100644
--- a/src/bin/cli/main.cpp
+++ b/src/bin/cli/main.cpp
@@ -304,6 +304,7 @@ int startDiceParsing(QStringList& cmds, bool withColor, QString baseColor, EXPOR
DiceParser parser;
parser.insertAlias(new DiceAlias("L5R5R", QStringLiteral("L[-,⨀,⨀⬢,❂⬢,❁,❁⬢]")), 0);
parser.insertAlias(new DiceAlias("L5R5S", QStringLiteral("L[-,-,⨀,⨀,⨀❁,⨀⬢,⨀⬢,❂,❂⬢,❁,❁,❁]")), 1);
+ // parser.setVariableDictionary({{"air", "3"}});
int i= 2;
for(auto alias : array)
{
@@ -467,7 +468,7 @@ int main(int argc, char* argv[])
#endif
QStringList commands;
- QString cmd;
+ QString cmd, charactersheet;
QString dotFileStr;
bool colorb= true;
QSettings settings("rolisteam", "diceparser");
@@ -564,6 +565,10 @@ int main(int argc, char* argv[])
{
dotFileStr= optionParser.value(dotFile);
}
+ else if(optionParser.isSet(character))
+ {
+ charactersheet= optionParser.value(character);
+ }
if(optionParser.isSet(markdown))
{
format= MARKDOWN;
diff --git a/src/bin/gui/mainwindow.h b/src/bin/gui/mainwindow.h
index bd19b34..081d085 100644
--- a/src/bin/gui/mainwindow.h
+++ b/src/bin/gui/mainwindow.h
@@ -6,7 +6,7 @@
class DiceParser;
namespace Ui
{
- class MainWindow;
+class MainWindow;
}
class MainWindow : public QMainWindow
diff --git a/src/bin/mobile/maincontroller.cpp b/src/bin/mobile/maincontroller.cpp
index 6f301ff..c131436 100644
--- a/src/bin/mobile/maincontroller.cpp
+++ b/src/bin/mobile/maincontroller.cpp
@@ -7,17 +7,19 @@ MainControler::MainControler(QObject* parent) : QObject(parent)
{
m_diceParser= new DiceParser();
- qmlRegisterSingletonType("DiceParser", 1, 0, "Model", [](QQmlEngine* engine, QJSEngine* scriptEngine) -> QObject* {
- Q_UNUSED(engine)
- static CommandModel model;
- static bool initialized= false;
- if(!initialized)
- {
- model.insertCmd("L5R", "8D10e10k4");
- initialized= true;
- }
- return &model;
- });
+ qmlRegisterSingletonType("DiceParser", 1, 0, "Model",
+ [](QQmlEngine* engine, QJSEngine* scriptEngine) -> QObject*
+ {
+ Q_UNUSED(engine)
+ static CommandModel model;
+ static bool initialized= false;
+ if(!initialized)
+ {
+ model.insertCmd("L5R", "8D10e10k4");
+ initialized= true;
+ }
+ return &model;
+ });
}
void MainControler::initEngine(QQmlApplicationEngine* engine)
{
diff --git a/src/bin/webserver/diceserver.cpp b/src/bin/webserver/diceserver.cpp
index a3f094d..1871927 100644
--- a/src/bin/webserver/diceserver.cpp
+++ b/src/bin/webserver/diceserver.cpp
@@ -13,7 +13,9 @@ DiceServer::DiceServer(int port) : QObject(), m_diceParser(new DiceParser())
// using namespace ;
m_server= new qhttp::server::QHttpServer(this);
m_server->listen( // listening on 0.0.0.0:8080
- QHostAddress::Any, port, [=](qhttp::server::QHttpRequest* req, qhttp::server::QHttpResponse* res) {
+ QHostAddress::Any, port,
+ [=](qhttp::server::QHttpRequest* req, qhttp::server::QHttpResponse* res)
+ {
req->collectData(1024);
// qhttp::THeaderHash hash = req->headers();
diff --git a/src/libparser/compositevalidator.cpp b/src/libparser/compositevalidator.cpp
index b0f127d..3b8cdd4 100644
--- a/src/libparser/compositevalidator.cpp
+++ b/src/libparser/compositevalidator.cpp
@@ -81,7 +81,9 @@ QString CompositeValidator::toString()
[](Validator* validator) { return validator->toString(); });
QStringList operatorTextList;
std::transform(
- m_operators.begin(), m_operators.end(), std::back_inserter(operatorTextList), [](LogicOperation validator) {
+ m_operators.begin(), m_operators.end(), std::back_inserter(operatorTextList),
+ [](LogicOperation validator)
+ {
static std::map<LogicOperation, QString> map({{OR, "|"}, {EXCLUSIVE_OR, "^"}, {AND, "&"}, {NONE, ""}});
return map[validator];
});
@@ -136,9 +138,9 @@ Dice::CONDITION_STATE testXOR(Dice::CONDITION_STATE before, Dice::CONDITION_STAT
Dice::CONDITION_STATE CompositeValidator::isValidRangeSize(const std::pair<qint64, qint64>& range) const
{
std::vector<Dice::CONDITION_STATE> vec;
- std::transform(
- m_validatorList.begin(), m_validatorList.end(), std::back_inserter(vec),
- [range](Validator* validator) -> Dice::CONDITION_STATE { return validator->isValidRangeSize(range); });
+ std::transform(m_validatorList.begin(), m_validatorList.end(), std::back_inserter(vec),
+ [range](Validator* validator) -> Dice::CONDITION_STATE
+ { return validator->isValidRangeSize(range); });
auto itError= std::find(vec.begin(), vec.end(), Dice::CONDITION_STATE::ERROR_STATE);
diff --git a/src/libparser/dicealias.cpp b/src/libparser/dicealias.cpp
index 67e3046..736f2ec 100644
--- a/src/libparser/dicealias.cpp
+++ b/src/libparser/dicealias.cpp
@@ -131,7 +131,7 @@ DiceAlias::DiceAlias(QString pattern, QString command, QString comment, bool isR
, m_command(command)
, m_comment(comment)
, m_type(isReplace ? REPLACE : REGEXP)
- , m_isEnable(isEnable)
+ , m_disable(isEnable)
{
}
@@ -145,13 +145,13 @@ DiceAlias::DiceAlias(const DiceAlias& alias)
m_command= alias.command();
m_comment= alias.comment();
m_pattern= alias.pattern();
- m_isEnable= alias.isEnable();
+ m_disable= alias.isDisable();
m_type= alias.isReplace() ? REPLACE : REGEXP;
}
bool DiceAlias::resolved(QString& str)
{
- if(!m_isEnable)
+ if(m_disable)
return false;
if((m_type == REPLACE) && (str.contains(m_pattern)))
@@ -209,14 +209,14 @@ void DiceAlias::setReplace(bool b)
}
}
-bool DiceAlias::isEnable() const
+bool DiceAlias::isDisable() const
{
- return m_isEnable;
+ return m_disable;
}
-void DiceAlias::setEnable(bool b)
+void DiceAlias::setDisable(bool b)
{
- m_isEnable= b;
+ m_disable= b;
}
QString DiceAlias::comment() const
diff --git a/src/libparser/diceroller.cpp b/src/libparser/diceroller.cpp
index 3c315f6..5396ef8 100644
--- a/src/libparser/diceroller.cpp
+++ b/src/libparser/diceroller.cpp
@@ -63,18 +63,21 @@ void DiceRoller::readErrorAndWarning()
void DiceRoller::start()
{
- auto future= QtConcurrent::run([this]() {
- if(m_diceparser.parseLine(m_command))
+ auto future= QtConcurrent::run(
+ [this]()
{
- m_diceparser.start();
- readErrorAndWarning();
- auto jsonstr= m_diceparser.resultAsJSon([](const QString& value, const QString&, bool) { return value; });
- QJsonDocument doc= QJsonDocument::fromJson(jsonstr.toLocal8Bit());
- auto json= doc.object();
- m_result= json["scalar"].toString().toDouble();
- emit resultChanged();
- }
- });
+ if(m_diceparser.parseLine(m_command))
+ {
+ m_diceparser.start();
+ readErrorAndWarning();
+ auto jsonstr
+ = m_diceparser.resultAsJSon([](const QString& value, const QString&, bool) { return value; });
+ QJsonDocument doc= QJsonDocument::fromJson(jsonstr.toLocal8Bit());
+ auto json= doc.object();
+ m_result= json["scalar"].toString().toDouble();
+ emit resultChanged();
+ }
+ });
}
QString DiceRoller::error() const
diff --git a/src/libparser/die.h b/src/libparser/die.h
index 0fe36fd..ea6712e 100644
--- a/src/libparser/die.h
+++ b/src/libparser/die.h
@@ -150,7 +150,6 @@ private:
bool m_highlighted{true};
qint64 m_maxValue{0};
qint64 m_base{0};
- qint64 m_occurence{1};
QString m_color;
Dice::ArithmeticOperator m_op;
diff --git a/src/libparser/include/diceparser/dicealias.h b/src/libparser/include/diceparser/dicealias.h
index 05d5a0b..cd8763e 100644
--- a/src/libparser/include/diceparser/dicealias.h
+++ b/src/libparser/include/diceparser/dicealias.h
@@ -43,7 +43,8 @@ public:
* @param key
* @param isReplace
*/
- DiceAlias(QString pattern, QString command, QString comment= QString{}, bool isReplace= true, bool isEnable= true);
+ DiceAlias(QString pattern, QString command, QString comment= QString{}, bool isReplace= true,
+ bool isDisable= false);
DiceAlias(const DiceAlias& alias);
/**
* @brief ~DiceAlias
@@ -94,12 +95,12 @@ public:
* @brief isEnable
* @return
*/
- bool isEnable() const;
+ bool isDisable() const;
/**
* @brief setEnable
* @param b
*/
- void setEnable(bool b);
+ void setDisable(bool b);
/**
* @brief getComment
* @return
@@ -116,7 +117,7 @@ private:
QString m_command;
QString m_comment;
RESOLUTION_TYPE m_type;
- bool m_isEnable;
+ bool m_disable{false};
};
#endif // DICEALIAS_H
diff --git a/src/libparser/node/allsamenode.h b/src/libparser/node/allsamenode.h
index e5c1dc2..ea67c14 100644
--- a/src/libparser/node/allsamenode.h
+++ b/src/libparser/node/allsamenode.h
@@ -10,7 +10,7 @@ class AllSameNode : public ExecutionNode
{
public:
AllSameNode();
-// virtual ~AllSameNode();
+ // virtual ~AllSameNode();
virtual void run(ExecutionNode* previous);
/**
diff --git a/src/libparser/node/executionnode.h b/src/libparser/node/executionnode.h
index 6dba052..cacd307 100644
--- a/src/libparser/node/executionnode.h
+++ b/src/libparser/node/executionnode.h
@@ -84,7 +84,7 @@ public:
virtual qint64 getScalarResult();
- bool isValid(bool condition, Dice::ERROR_CODE code , const QString& errorTxt, bool error = true);
+ bool isValid(bool condition, Dice::ERROR_CODE code, const QString& errorTxt, bool error= true);
protected:
/**
diff --git a/src/libparser/node/filternode.cpp b/src/libparser/node/filternode.cpp
index af3d166..3274e15 100644
--- a/src/libparser/node/filternode.cpp
+++ b/src/libparser/node/filternode.cpp
@@ -1,7 +1,7 @@
#include "filternode.h"
#include "validatorlist.h"
-FilterNode::FilterNode() : m_diceResult(new DiceResult()), m_eachValue(false)
+FilterNode::FilterNode() : m_diceResult(new DiceResult())
{
m_result= m_diceResult;
}
diff --git a/src/libparser/node/filternode.h b/src/libparser/node/filternode.h
index 7af6fe2..4022aa3 100644
--- a/src/libparser/node/filternode.h
+++ b/src/libparser/node/filternode.h
@@ -34,7 +34,6 @@ public:
private:
DiceResult* m_diceResult;
ValidatorList* m_validatorList;
- bool m_eachValue;
};
#endif // FILTERNODE_H
diff --git a/src/libparser/node/groupnode.h b/src/libparser/node/groupnode.h
index 72e795c..982eb6d 100644
--- a/src/libparser/node/groupnode.h
+++ b/src/libparser/node/groupnode.h
@@ -39,6 +39,7 @@ public:
void setExceptedValue(qint64 exceptedValue);
void sort();
+
private:
qint64 m_exceptedValue= 0;
};
diff --git a/src/libparser/node/jumpbackwardnode.h b/src/libparser/node/jumpbackwardnode.h
index 2e14a00..4de2a05 100644
--- a/src/libparser/node/jumpbackwardnode.h
+++ b/src/libparser/node/jumpbackwardnode.h
@@ -61,6 +61,7 @@ public:
*/
virtual ExecutionNode* getCopy() const override;
virtual void execute(ExecutionNode* previous= nullptr) override;
+
private:
DiceResult* m_diceResult;
ExecutionNode* m_backwardNode;
diff --git a/src/libparser/node/keepdiceexecnode.h b/src/libparser/node/keepdiceexecnode.h
index 0dd6616..e6bd998 100644
--- a/src/libparser/node/keepdiceexecnode.h
+++ b/src/libparser/node/keepdiceexecnode.h
@@ -34,13 +34,13 @@ public:
virtual ~KeepDiceExecNode();
virtual void run(ExecutionNode* previous);
- virtual void setDiceKeepNumber(ExecutionNode* valueNode );
+ virtual void setDiceKeepNumber(ExecutionNode* valueNode);
virtual QString toString(bool) const;
virtual qint64 getPriority() const;
virtual ExecutionNode* getCopy() const;
private:
- ExecutionNode* m_numberOfDiceNode = nullptr;
+ ExecutionNode* m_numberOfDiceNode= nullptr;
DiceResult* m_diceResult;
};
diff --git a/src/libparser/node/roundnode.h b/src/libparser/node/roundnode.h
index 0bf49b7..a16e886 100644
--- a/src/libparser/node/roundnode.h
+++ b/src/libparser/node/roundnode.h
@@ -7,7 +7,8 @@
class RoundNode : public ExecutionNode
{
public:
- enum Mode {
+ enum Mode
+ {
FLOOR,
CEIL,
ROUND
@@ -16,10 +17,10 @@ public:
// ExecutionNode interface
public:
- void run(ExecutionNode *previous);
+ void run(ExecutionNode* previous);
QString toString(bool withLabel) const;
qint64 getPriority() const;
- ExecutionNode *getCopy() const;
+ ExecutionNode* getCopy() const;
void setCommand(ExecutionNode* cmd);
private:
diff --git a/src/libparser/node/scalaroperatornode.h b/src/libparser/node/scalaroperatornode.h
index 73e0bef..fbb30a8 100644
--- a/src/libparser/node/scalaroperatornode.h
+++ b/src/libparser/node/scalaroperatornode.h
@@ -94,7 +94,6 @@ public:
*/
virtual ExecutionNode* getCopy() const override;
-
void setNextNode(ExecutionNode* node) override;
private:
diff --git a/src/libparser/node/uniquenode.h b/src/libparser/node/uniquenode.h
index 039ba11..adab4fc 100644
--- a/src/libparser/node/uniquenode.h
+++ b/src/libparser/node/uniquenode.h
@@ -26,7 +26,8 @@
#include "result/diceresult.h"
/**
- * @brief The UniqueNode class is an ExecutionNode. It is dedicated to unique result of one dice into one dimension array.
+ * @brief The UniqueNode class is an ExecutionNode. It is dedicated to unique result of one dice into one dimension
+ * array.
*/
class UniqueNode : public ExecutionNode
{
diff --git a/src/libparser/node/valueslistnode.h b/src/libparser/node/valueslistnode.h
index 100f275..e37babd 100644
--- a/src/libparser/node/valueslistnode.h
+++ b/src/libparser/node/valueslistnode.h
@@ -18,7 +18,7 @@ public:
private:
std::vector<ExecutionNode*> m_data;
- DiceResult* m_diceResult = nullptr;
+ DiceResult* m_diceResult= nullptr;
};
#endif // VALUESLISTNODE_H
diff --git a/src/libparser/parsingtoolbox.cpp b/src/libparser/parsingtoolbox.cpp
index 23e0cbb..2d9c08d 100644
--- a/src/libparser/parsingtoolbox.cpp
+++ b/src/libparser/parsingtoolbox.cpp
@@ -763,7 +763,6 @@ bool ParsingToolBox::readString(QString& str, QString& strResult)
str= str.remove(0, 1);
int i= 0;
- int j= 0;
bool previousEscape= false;
QString result;
/*&&
@@ -780,7 +779,6 @@ bool ParsingToolBox::readString(QString& str, QString& strResult)
if(previousEscape && str[i] != '\"')
{
result+= '\\';
- ++j;
}
result+= str[i];
previousEscape= false;
@@ -942,20 +940,12 @@ bool ParsingToolBox::readStopAtFirst(QString& str)
Dice::CONDITION_STATE ParsingToolBox::isValidValidator(ExecutionNode* previous, ValidatorList* val)
{
- auto node= getNode<DiceRollerNode>(previous);
- if(node)
- return val->isValidRangeSize(node->getRange());
+ auto res= Dice::CONDITION_STATE::ERROR_STATE;
+ DiceResult* result= dynamic_cast<DiceResult*>(previous->getResult());
+ if(result)
+ res= Dice::CONDITION_STATE::REACHABLE;
- auto listNode= getNode<ValuesListNode>(previous);
-
- if(!listNode)
- return Dice::CONDITION_STATE::ERROR_STATE;
-
- auto dice= dynamic_cast<DiceResult*>(listNode->getResult());
- if(!dice)
- return Dice::CONDITION_STATE::ERROR_STATE;
-
- return Dice::CONDITION_STATE::REACHABLE;
+ return res;
}
template <typename T>
T* ParsingToolBox::getNode(ExecutionNode* previous)
@@ -1081,9 +1071,7 @@ void ParsingToolBox::setStartNodes(std::vector<ExecutionNode*> nodes)
void ParsingToolBox::readProbability(QStringList& str, QList<Range>& ranges)
{
- quint64 totalDistance= 0;
quint64 undefDistance= 0;
- int undefCount= 0;
int maxValue= 0;
int i= 0;
int j= 0;
@@ -1103,7 +1091,7 @@ void ParsingToolBox::readProbability(QStringList& str, QList<Range>& ranges)
Range range;
range.setValue(start, end);
ranges.append(range);
- totalDistance+= static_cast<quint64>(end - start + 1);
+ // totalDistance+= static_cast<quint64>(end - start + 1);
++i;
}
else // percentage
@@ -1112,7 +1100,7 @@ void ParsingToolBox::readProbability(QStringList& str, QList<Range>& ranges)
Range range;
range.setStart(start);
ranges.append(range);
- ++undefCount;
+ //++undefCount;
undefDistance+= static_cast<quint64>(start);
}
if((end > maxValue) || (i == 1))
@@ -1771,12 +1759,14 @@ bool ParsingToolBox::readOption(QString& str, ExecutionNode* previous) //,
if(nullptr != validatorList)
{
auto validity= isValidValidator(previous, validatorList);
+ if(validity != Dice::CONDITION_STATE::ERROR_STATE)
+ {
+ CountExecuteNode* countNode= new CountExecuteNode();
+ countNode->setValidatorList(validatorList);
- CountExecuteNode* countNode= new CountExecuteNode();
- countNode->setValidatorList(validatorList);
-
- previous->setNextNode(countNode);
- found= true;
+ previous->setNextNode(countNode);
+ found= true;
+ }
}
else
{
@@ -2048,6 +2038,8 @@ ExplodeDiceNode* ParsingToolBox::addExplodeDiceNode(qint64 value, ExecutionNode*
auto valList= new ValidatorList();
valList->setValidators(QList<Validator*>() << condition);
auto validity= isValidValidator(previous, valList);
+ Q_ASSERT(validity != Dice::CONDITION_STATE::ERROR_STATE);
+
explodeDiceNode->setValidatorList(valList);
previous->setNextNode(explodeDiceNode);
return explodeDiceNode;
@@ -2276,10 +2268,10 @@ QString ParsingToolBox::convertAlias(QString str)
{
for(auto& cmd : m_aliasList)
{
- if(cmd->isEnable())
- {
- cmd->resolved(str);
- }
+ if(cmd->isDisable())
+ continue;
+
+ cmd->resolved(str);
}
return str;
}
diff --git a/src/libparser/result/diceresult.cpp b/src/libparser/result/diceresult.cpp
index d25c93b..8a66986 100644
--- a/src/libparser/result/diceresult.cpp
+++ b/src/libparser/result/diceresult.cpp
@@ -51,8 +51,8 @@ void DiceResult::setResultList(QList<Die*> list)
m_diceValues.removeAll(it);
/*m_diceValues.erase(
- std::remove_if(m_diceValues.begin(), m_diceValues.end(), [list](Die* die) { return list.contains(die); }),
- m_diceValues.end());*/
+ std::remove_if(m_diceValues.begin(), m_diceValues.end(), [list](Die* die) { return
+ list.contains(die); }), m_diceValues.end());*/
qDeleteAll(m_diceValues.begin(), m_diceValues.end());
m_diceValues.clear();
diff --git a/src/libparser/validator.cpp b/src/libparser/validator.cpp
index 201574b..a001b9e 100644
--- a/src/libparser/validator.cpp
+++ b/src/libparser/validator.cpp
@@ -28,13 +28,15 @@ template <typename Functor>
qint64 Validator::onEach(const std::vector<Die*>& b, bool recursive, bool unlight, Functor functor) const
{
qint64 result= 0;
- std::for_each(b.begin(), b.end(), [this, recursive, unlight, functor, &result](Die* die) {
- if(hasValid(die, recursive, unlight))
- {
- ++result;
- functor(die, recursive, unlight);
- }
- });
+ std::for_each(b.begin(), b.end(),
+ [this, recursive, unlight, functor, &result](Die* die)
+ {
+ if(hasValid(die, recursive, unlight))
+ {
+ ++result;
+ functor(die, recursive, unlight);
+ }
+ });
return result;
}
@@ -42,13 +44,15 @@ template <typename Functor>
qint64 Validator::onEachValue(const std::vector<Die*>& b, bool recursive, bool unlight, Functor functor) const
{
qint64 result= 0;
- std::for_each(b.begin(), b.end(), [this, recursive, unlight, functor, &result](Die* die) {
- if(hasValid(die, recursive, unlight))
- {
- ++result;
- functor(die, recursive, unlight);
- }
- });
+ std::for_each(b.begin(), b.end(),
+ [this, recursive, unlight, functor, &result](Die* die)
+ {
+ if(hasValid(die, recursive, unlight))
+ {
+ ++result;
+ functor(die, recursive, unlight);
+ }
+ });
return result;
}
diff --git a/src/libparser/validatorlist.cpp b/src/libparser/validatorlist.cpp
index 41bc24f..bc8ed21 100644
--- a/src/libparser/validatorlist.cpp
+++ b/src/libparser/validatorlist.cpp
@@ -39,7 +39,7 @@ void mergeResultsAsAND(const ValidatorResult& diceList, ValidatorResult& result)
val.appendValidDice(dice.first, dice.second);
}
result= val;
- result.setAllTrue(diceList.allTrue() & result.allTrue());
+ result.setAllTrue(diceList.allTrue() && result.allTrue());
}
void mergeResultsAsExeclusiveOR(const ValidatorResult& diceList, ValidatorResult& result)
diff --git a/src/tests/dice/tst_dice.cpp b/src/tests/dice/tst_dice.cpp
index eb07e57..308a029 100644
--- a/src/tests/dice/tst_dice.cpp
+++ b/src/tests/dice/tst_dice.cpp
@@ -30,13 +30,13 @@
// node
#include "booleancondition.h"
#include "diceparser/parsingtoolbox.h"
-#include "node/bind.h"
+//#include "node/bind.h"
#include "node/countexecutenode.h"
#include "node/explodedicenode.h"
#include "node/filternode.h"
-#include "node/groupnode.h"
+//#include "node/groupnode.h"
#include "node/ifnode.h"
-#include "node/jumpbackwardnode.h"
+//#include "node/jumpbackwardnode.h"
#include "node/keepdiceexecnode.h"
#include "node/numbernode.h"
#include "node/occurencecountnode.h"
@@ -999,7 +999,7 @@ void TestDice::ifTest_data()
QTest::addColumn<QString>("expectedResult");
int onEach= 0;
- int onEachValue= 1;
+ // int onEachValue= 1;
int oneOfThem= 2;
int allOfThem= 3;
int onScalar= 4;