void HelloTypeReleaseObject(struct HelloTypeObject *o) { struct HelloTypeNode *cur, *next; cur = o->head; while(cur) { next = cur->next; RedisModule_Free(cur); cur = next; } RedisModule_Free(o); }
void *UniqueTypeRdbLoad(RedisModuleIO *rdb, int encver) { if (encver != 0) { /* RedisModule_Log("warning","Can't load data with version %d", encver);*/ return NULL; } uint64_t elements = RedisModule_LoadUnsigned(rdb); unique *unique = uniqueCreate(); char *pkey, *pval; size_t lkey, lval; sds key, val; while(elements--) { pkey = RedisModule_LoadStringBuffer(rdb, &lkey); pval = RedisModule_LoadStringBuffer(rdb, &lval); key = sdsnewlen(pkey, lkey); val = sdsnewlen(pval, lval); RedisModule_Free(pkey); RedisModule_Free(pval); uniquePush(unique, key, val, retain_new); } return unique; }
/* Timer callback. */ void timerHandler(RedisModuleCtx *ctx, void *data) { REDISMODULE_NOT_USED(ctx); printf("Fired %s!\n", data); RedisModule_Free(data); }