| 72 | } |
| 73 | |
| 74 | void Merge::executeOnCreatedPattern(PatternCreationInfo& patternCreationInfo, |
| 75 | ExecutionContext* context) { |
| 76 | for (auto i = 0u; i < nodeInsertExecutors.size(); ++i) { |
| 77 | auto& executor = nodeInsertExecutors[i]; |
| 78 | if (info.storeInsertedPatternIDs) { |
| 79 | executor.skipInsert(patternCreationInfo.getPatternID(i), context->clientContext); |
| 80 | } else { |
| 81 | executor.skipInsert(); |
| 82 | } |
| 83 | } |
| 84 | for (auto& executor : relInsertExecutors) { |
| 85 | executor.skipInsert(); |
| 86 | } |
| 87 | for (auto i = 0u; i < onMatchNodeSetExecutors.size(); i++) { |
| 88 | auto& executor = onMatchNodeSetExecutors[i]; |
| 89 | auto nodeIDToSet = patternCreationInfo.getPatternID(i); |
| 90 | executor->setNodeID(nodeIDToSet); |
| 91 | executor->set(context); |
| 92 | } |
| 93 | for (auto i = 0u; i < onMatchRelSetExecutors.size(); i++) { |
| 94 | auto& executor = onMatchRelSetExecutors[i]; |
| 95 | auto relIDToSet = patternCreationInfo.getPatternID(i + onMatchNodeSetExecutors.size()); |
| 96 | executor->setRelID(relIDToSet); |
| 97 | executor->set(context); |
| 98 | } |
| 99 | } |
| 100 | |
| 101 | void Merge::executeOnNewPattern(PatternCreationInfo& patternCreationInfo, |
| 102 | ExecutionContext* context) { |
nothing calls this directly
no test coverage detected