diff options
| author | 2016-11-28 00:36:15 +0100 | |
|---|---|---|
| committer | 2016-11-28 00:36:15 +0100 | |
| commit | 13e297604b00615d47352538e3c82ea1ac700d4c (patch) | |
| tree | 567efe03594d261831897f03a7821c4c6eeac59b /node/scalaroperatornode.cpp | |
| parent | cdd1716bd1aa8d9bbd0137aa98ff24867b6b3a0e (diff) | |
| download | OneRoll-13e297604b00615d47352538e3c82ea1ac700d4c.tar.gz OneRoll-13e297604b00615d47352538e3c82ea1ac700d4c.zip | |
-Add API for copying a branch of execution node.
-Allow to use if node several times.
Diffstat (limited to 'node/scalaroperatornode.cpp')
| -rw-r--r-- | node/scalaroperatornode.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/node/scalaroperatornode.cpp b/node/scalaroperatornode.cpp index 692b09f..1d004cb 100644 --- a/node/scalaroperatornode.cpp +++ b/node/scalaroperatornode.cpp @@ -221,17 +221,28 @@ QMap<ExecutionNode::DICE_ERROR_CODE,QString> ScalarOperatorNode::getExecutionErr { if(NULL!=m_internalNode) { - foreach (ExecutionNode::DICE_ERROR_CODE key, m_internalNode->getExecutionErrorMap().keys()) + for (ExecutionNode::DICE_ERROR_CODE key: m_internalNode->getExecutionErrorMap().keys()) { m_errors.insert(key,m_internalNode->getExecutionErrorMap().value(key)); } } if(NULL!=m_nextNode) { - foreach (ExecutionNode::DICE_ERROR_CODE key, m_nextNode->getExecutionErrorMap().keys()) + for (ExecutionNode::DICE_ERROR_CODE key: m_nextNode->getExecutionErrorMap().keys()) { m_errors.insert(key,m_nextNode->getExecutionErrorMap().value(key)); } } return m_errors; } +ExecutionNode* ScalarOperatorNode::getCopy() const +{ + ScalarOperatorNode* node = new ScalarOperatorNode(); + node->setInternalNode(m_internalNode->getCopy()); + node->setArithmeticOperator(m_arithmeticOperator); + if(NULL!=m_nextNode) + { + node->setNextNode(m_nextNode->getCopy()); + } + return node; +} |