MCPcopy Create free account
hub / github.com/DeusData/codebase-memory-mcp / merge_remap_edges

Function merge_remap_edges

src/graph_buffer/graph_buffer.c:1347–1371  ·  view source on GitHub ↗

Remap edge IDs using the collision remap table and insert into dst. */

Source from the content-addressed store, hash-verified

1345
1346/* Remap edge IDs using the collision remap table and insert into dst. */
1347static void merge_remap_edges(cbm_gbuf_t *dst, cbm_gbuf_t *src, CBMHashTable *remap) {
1348 for (int i = 0; i < src->edges.count; i++) {
1349 cbm_gbuf_edge_t *se = src->edges.items[i];
1350
1351 int64_t new_src = se->source_id;
1352 int64_t new_tgt = se->target_id;
1353
1354 if (remap) {
1355 char key[CBM_SZ_32];
1356 make_id_key(key, sizeof(key), se->source_id);
1357 int64_t *remapped = cbm_ht_get(remap, key);
1358 if (remapped) {
1359 new_src = *remapped;
1360 }
1361
1362 make_id_key(key, sizeof(key), se->target_id);
1363 remapped = cbm_ht_get(remap, key);
1364 if (remapped) {
1365 new_tgt = *remapped;
1366 }
1367 }
1368
1369 cbm_gbuf_insert_edge(dst, new_src, new_tgt, se->type, se->properties_json);
1370 }
1371}
1372
1373int cbm_gbuf_merge(cbm_gbuf_t *dst, cbm_gbuf_t *src) {
1374 if (!dst || !src) {

Callers 1

cbm_gbuf_mergeFunction · 0.85

Calls 3

make_id_keyFunction · 0.85
cbm_ht_getFunction · 0.85
cbm_gbuf_insert_edgeFunction · 0.85

Tested by

no test coverage detected