From afd142aa0042575a37c4a56954b320c68b3466c1 Mon Sep 17 00:00:00 2001 From: Renaud Guezennec Date: Tue, 28 Nov 2017 15:46:55 +0100 Subject: -Management of Dynamic Variable --- diceparser.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'diceparser.cpp') diff --git a/diceparser.cpp b/diceparser.cpp index 178a6cb..08f3110 100644 --- a/diceparser.cpp +++ b/diceparser.cpp @@ -45,6 +45,7 @@ #include "node/stringnode.h" #include "node/splitnode.h" #include "node/groupnode.h" +#include "node/variablenode.h" #define DEFAULT_FACES_NUMBER 10 @@ -1254,12 +1255,17 @@ QString DiceParser::humanReadableError() bool DiceParser::readOperand(QString& str,ExecutionNode* & node) { - qint64 myNumber=1; + qint64 intValue=1; QString resultStr; - if(m_parsingToolbox->readNumber(str,myNumber)) + if(m_parsingToolbox->readDynamicVariable(str,intValue)) + { + VariableNode* variableNode = new VariableNode(); + variableNode->setIndex(intValue); + } + else if(m_parsingToolbox->readNumber(str,intValue)) { NumberNode* numberNode = new NumberNode(); - numberNode->setNumber(myNumber); + numberNode->setNumber(intValue); node = numberNode; return true; -- cgit v1.2.3-70-g09d2