diff options
| author | 2018-12-15 02:15:27 +0100 | |
|---|---|---|
| committer | 2018-12-15 02:18:16 +0100 | |
| commit | 2eaaedebc6750d5984190fd0f87caf771b248ae0 (patch) | |
| tree | 3a45b8bf7406cade153e088cd04a495a4c29e53f /node/parenthesesnode.cpp | |
| parent | 6204fbaab592179f0556eb673c61fa3d3313d2a7 (diff) | |
| download | OneRoll-2eaaedebc6750d5984190fd0f87caf771b248ae0.tar.gz OneRoll-2eaaedebc6750d5984190fd0f87caf771b248ae0.zip | |
WIP
Diffstat (limited to 'node/parenthesesnode.cpp')
| -rw-r--r-- | node/parenthesesnode.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/node/parenthesesnode.cpp b/node/parenthesesnode.cpp index 5e2d0e0..9e6bcec 100644 --- a/node/parenthesesnode.cpp +++ b/node/parenthesesnode.cpp @@ -30,18 +30,28 @@ void ParenthesesNode::setInternelNode(ExecutionNode* node) { m_internalNode = node; } -void ParenthesesNode::run(ExecutionNode* /*previous*/) +void ParenthesesNode::run(ExecutionNode* previous) { - //m_previousNode = previous; + m_previousNode = previous; if(nullptr!=m_internalNode) { - m_internalNode->run(this); - ExecutionNode* temp=m_internalNode; + m_internalNode->run(this); + ExecutionNode* temp=m_internalNode; while(nullptr!=temp->getNextNode()) { temp=temp->getNextNode(); } m_result = temp->getResult(); + //m_result->setPrevious(internalResult); + if(nullptr!=previous) + { + auto previousResult = previous->getResult(); + if(nullptr!=m_internalNode->getResult()) + { + m_internalNode->getResult()->setPrevious(previousResult); + } + } + //m_result = temp->getResult(); } if(nullptr!=m_nextNode) |