| 92 | } |
| 93 | |
| 94 | int Marshaller::mergeMaps(int leftIndex, int rightIndex) { |
| 95 | auto newMapIndex = pushMap(0); |
| 96 | |
| 97 | copyMap(leftIndex, newMapIndex); |
| 98 | if (!_exceptionTracker) { |
| 99 | return 0; |
| 100 | } |
| 101 | |
| 102 | copyMap(rightIndex, newMapIndex); |
| 103 | if (!_exceptionTracker) { |
| 104 | return 0; |
| 105 | } |
| 106 | |
| 107 | return newMapIndex; |
| 108 | } |
| 109 | |
| 110 | void Marshaller::copyMap(int mapIndex, int intoMapIndex) { |
| 111 | auto iterator = pushMapIterator(mapIndex); |