| 148 | |
| 149 | template <typename T> |
| 150 | ASTNode* Map( T callback ) |
| 151 | { |
| 152 | ASTNode* newNode = callback( this ); |
| 153 | for( size_t i = 0; i < newNode->m_children.size(); ++i ) |
| 154 | { |
| 155 | if( newNode->m_children[i] ) |
| 156 | { |
| 157 | newNode->m_children[i] = newNode->m_children[i]->Map( callback ); |
| 158 | } |
| 159 | } |
| 160 | return newNode; |
| 161 | } |
| 162 | |
| 163 | private: |
| 164 | ASTNodeType m_nodeType; |
no test coverage detected