MCPcopy Create free account
hub / github.com/Snapchat/KeyDB / moduleScanCallback

Function moduleScanCallback

src/module.cpp:7786–7800  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

7784}RedisModuleScanCursor;
7785
7786static void moduleScanCallback(void *privdata, const dictEntry *de) {
7787 ScanCBData *data = (ScanCBData*)privdata;
7788 sds key = (sds)dictGetKey(de);
7789 robj* val = (robj*)dictGetVal(de);
7790 RedisModuleString *keyname = createObject(OBJ_STRING,sdsdup(key));
7791
7792 /* Setup the key handle. */
7793 RedisModuleKey kp = {0};
7794 moduleInitKey(&kp, data->ctx, keyname, val, REDISMODULE_READ);
7795
7796 data->fn(data->ctx, keyname, &kp, data->user_data);
7797
7798 moduleCloseKey(&kp);
7799 decrRefCount(keyname);
7800}
7801
7802/* Create a new cursor to be used with RedisModule_Scan */
7803RedisModuleScanCursor *RM_ScanCursorCreate() {

Callers

nothing calls this directly

Calls 5

createObjectFunction · 0.85
sdsdupFunction · 0.85
moduleInitKeyFunction · 0.85
moduleCloseKeyFunction · 0.85
decrRefCountFunction · 0.85

Tested by

no test coverage detected