| 81 | } |
| 82 | |
| 83 | static void _InitializeUpdates |
| 84 | ( |
| 85 | OpMerge *op, |
| 86 | rax *updates, |
| 87 | raxIterator *it |
| 88 | ) { |
| 89 | // if we have ON MATCH / ON CREATE directives |
| 90 | // set the appropriate record IDs of entities to be updated |
| 91 | raxStart(it, updates); |
| 92 | raxSeek(it, "^", NULL, 0); |
| 93 | // iterate over all expressions |
| 94 | while(raxNext(it)) { |
| 95 | EntityUpdateEvalCtx *ctx = it->data; |
| 96 | // set the record index for every entity modified by this operation |
| 97 | ctx->record_idx = OpBase_Modifies((OpBase *)op, ctx->alias); |
| 98 | } |
| 99 | |
| 100 | } |
| 101 | |
| 102 | // free node and edge pending updates |
| 103 | static inline void _free_pending_updates |
no test coverage detected