Lines Matching refs:key

151     robj *key;      /* Key name object. */  member
240 …ModuleNotificationFunc) (RedisModuleCtx *ctx, int type, const char *event, RedisModuleString *key);
299 void RM_CloseKey(RedisModuleKey *key);
304 static void zsetKeyReset(RedisModuleKey *key);
418 int moduleCreateEmptyKey(RedisModuleKey *key, int type) { in moduleCreateEmptyKey() argument
422 if (!(key->mode & REDISMODULE_WRITE) || key->value) in moduleCreateEmptyKey()
439 dbAdd(key->db,key->key,obj); in moduleCreateEmptyKey()
440 key->value = obj; in moduleCreateEmptyKey()
454 int moduleDelKeyIfEmpty(RedisModuleKey *key) { in moduleDelKeyIfEmpty() argument
455 if (!(key->mode & REDISMODULE_WRITE) || key->value == NULL) return 0; in moduleDelKeyIfEmpty()
457 robj *o = key->value; in moduleDelKeyIfEmpty()
468 dbDelete(key->db,key->key); in moduleDelKeyIfEmpty()
469 key->value = NULL; in moduleDelKeyIfEmpty()
1535 kp->key = keyname; in RM_OpenKey()
1546 void RM_CloseKey(RedisModuleKey *key) { in RM_CloseKey() argument
1547 if (key == NULL) return; in RM_CloseKey()
1548 if (key->mode & REDISMODULE_WRITE) signalModifiedKey(key->db,key->key); in RM_CloseKey()
1550 RM_ZsetRangeStop(key); in RM_CloseKey()
1551 decrRefCount(key->key); in RM_CloseKey()
1552 autoMemoryFreed(key->ctx,REDISMODULE_AM_KEY,key); in RM_CloseKey()
1553 zfree(key); in RM_CloseKey()
1558 int RM_KeyType(RedisModuleKey *key) { in RM_KeyType() argument
1559 if (key == NULL || key->value == NULL) return REDISMODULE_KEYTYPE_EMPTY; in RM_KeyType()
1562 switch(key->value->type) { in RM_KeyType()
1578 size_t RM_ValueLength(RedisModuleKey *key) { in RM_ValueLength() argument
1579 if (key == NULL || key->value == NULL) return 0; in RM_ValueLength()
1580 switch(key->value->type) { in RM_ValueLength()
1581 case OBJ_STRING: return stringObjectLen(key->value); in RM_ValueLength()
1582 case OBJ_LIST: return listTypeLength(key->value); in RM_ValueLength()
1583 case OBJ_SET: return setTypeSize(key->value); in RM_ValueLength()
1584 case OBJ_ZSET: return zsetLength(key->value); in RM_ValueLength()
1585 case OBJ_HASH: return hashTypeLength(key->value); in RM_ValueLength()
1594 int RM_DeleteKey(RedisModuleKey *key) { in RM_DeleteKey() argument
1595 if (!(key->mode & REDISMODULE_WRITE)) return REDISMODULE_ERR; in RM_DeleteKey()
1596 if (key->value) { in RM_DeleteKey()
1597 dbDelete(key->db,key->key); in RM_DeleteKey()
1598 key->value = NULL; in RM_DeleteKey()
1608 int RM_UnlinkKey(RedisModuleKey *key) { in RM_UnlinkKey() argument
1609 if (!(key->mode & REDISMODULE_WRITE)) return REDISMODULE_ERR; in RM_UnlinkKey()
1610 if (key->value) { in RM_UnlinkKey()
1611 dbAsyncDelete(key->db,key->key); in RM_UnlinkKey()
1612 key->value = NULL; in RM_UnlinkKey()
1620 mstime_t RM_GetExpire(RedisModuleKey *key) { in RM_GetExpire() argument
1621 mstime_t expire = getExpire(key->db,key->key); in RM_GetExpire()
1622 if (expire == -1 || key->value == NULL) return -1; in RM_GetExpire()
1636 int RM_SetExpire(RedisModuleKey *key, mstime_t expire) { in RM_SetExpire() argument
1637 if (!(key->mode & REDISMODULE_WRITE) || key->value == NULL) in RM_SetExpire()
1641 setExpire(key->ctx->client,key->db,key->key,expire); in RM_SetExpire()
1643 removeExpire(key->db,key->key); in RM_SetExpire()
1656 int RM_StringSet(RedisModuleKey *key, RedisModuleString *str) { in RM_StringSet() argument
1657 if (!(key->mode & REDISMODULE_WRITE) || key->iter) return REDISMODULE_ERR; in RM_StringSet()
1658 RM_DeleteKey(key); in RM_StringSet()
1659 setKey(key->db,key->key,str); in RM_StringSet()
1660 key->value = str; in RM_StringSet()
1693 char *RM_StringDMA(RedisModuleKey *key, size_t *len, int mode) { in RM_StringDMA() argument
1699 if (key->value == NULL) { in RM_StringDMA()
1704 if (key->value->type != OBJ_STRING) return NULL; in RM_StringDMA()
1708 if ((mode & REDISMODULE_WRITE) || key->value->encoding != OBJ_ENCODING_RAW) in RM_StringDMA()
1709 key->value = dbUnshareStringValue(key->db, key->key, key->value); in RM_StringDMA()
1711 *len = sdslen(key->value->ptr); in RM_StringDMA()
1712 return key->value->ptr; in RM_StringDMA()
1727 int RM_StringTruncate(RedisModuleKey *key, size_t newlen) { in RM_StringTruncate() argument
1728 if (!(key->mode & REDISMODULE_WRITE)) return REDISMODULE_ERR; in RM_StringTruncate()
1729 if (key->value && key->value->type != OBJ_STRING) return REDISMODULE_ERR; in RM_StringTruncate()
1734 if (key->value == NULL && newlen == 0) return REDISMODULE_OK; in RM_StringTruncate()
1736 if (key->value == NULL) { in RM_StringTruncate()
1739 setKey(key->db,key->key,o); in RM_StringTruncate()
1740 key->value = o; in RM_StringTruncate()
1744 key->value = dbUnshareStringValue(key->db, key->key, key->value); in RM_StringTruncate()
1745 size_t curlen = sdslen(key->value->ptr); in RM_StringTruncate()
1747 key->value->ptr = sdsgrowzero(key->value->ptr,newlen); in RM_StringTruncate()
1749 sdsrange(key->value->ptr,0,newlen-1); in RM_StringTruncate()
1751 if (sdslen(key->value->ptr) < sdsavail(key->value->ptr)) in RM_StringTruncate()
1752 key->value->ptr = sdsRemoveFreeSpace(key->value->ptr); in RM_StringTruncate()
1766 int RM_ListPush(RedisModuleKey *key, int where, RedisModuleString *ele) { in RM_ListPush() argument
1767 if (!(key->mode & REDISMODULE_WRITE)) return REDISMODULE_ERR; in RM_ListPush()
1768 if (key->value && key->value->type != OBJ_LIST) return REDISMODULE_ERR; in RM_ListPush()
1769 if (key->value == NULL) moduleCreateEmptyKey(key,REDISMODULE_KEYTYPE_LIST); in RM_ListPush()
1770 listTypePush(key->value, ele, in RM_ListPush()
1782 RedisModuleString *RM_ListPop(RedisModuleKey *key, int where) { in RM_ListPop() argument
1783 if (!(key->mode & REDISMODULE_WRITE) || in RM_ListPop()
1784 key->value == NULL || in RM_ListPop()
1785 key->value->type != OBJ_LIST) return NULL; in RM_ListPop()
1786 robj *ele = listTypePop(key->value, in RM_ListPop()
1790 moduleDelKeyIfEmpty(key); in RM_ListPop()
1791 autoMemoryAdd(key->ctx,REDISMODULE_AM_STRING,decoded); in RM_ListPop()
1845 int RM_ZsetAdd(RedisModuleKey *key, double score, RedisModuleString *ele, int *flagsptr) { in RM_ZsetAdd() argument
1847 if (!(key->mode & REDISMODULE_WRITE)) return REDISMODULE_ERR; in RM_ZsetAdd()
1848 if (key->value && key->value->type != OBJ_ZSET) return REDISMODULE_ERR; in RM_ZsetAdd()
1849 if (key->value == NULL) moduleCreateEmptyKey(key,REDISMODULE_KEYTYPE_ZSET); in RM_ZsetAdd()
1851 if (zsetAdd(key->value,score,ele->ptr,&flags,NULL) == 0) { in RM_ZsetAdd()
1872 int RM_ZsetIncrby(RedisModuleKey *key, double score, RedisModuleString *ele, int *flagsptr, double … in RM_ZsetIncrby() argument
1874 if (!(key->mode & REDISMODULE_WRITE)) return REDISMODULE_ERR; in RM_ZsetIncrby()
1875 if (key->value && key->value->type != OBJ_ZSET) return REDISMODULE_ERR; in RM_ZsetIncrby()
1876 if (key->value == NULL) moduleCreateEmptyKey(key,REDISMODULE_KEYTYPE_ZSET); in RM_ZsetIncrby()
1879 if (zsetAdd(key->value,score,ele->ptr,&flags,newscore) == 0) { in RM_ZsetIncrby()
1910 int RM_ZsetRem(RedisModuleKey *key, RedisModuleString *ele, int *deleted) { in RM_ZsetRem() argument
1911 if (!(key->mode & REDISMODULE_WRITE)) return REDISMODULE_ERR; in RM_ZsetRem()
1912 if (key->value && key->value->type != OBJ_ZSET) return REDISMODULE_ERR; in RM_ZsetRem()
1913 if (key->value != NULL && zsetDel(key->value,ele->ptr)) { in RM_ZsetRem()
1929 int RM_ZsetScore(RedisModuleKey *key, RedisModuleString *ele, double *score) { in RM_ZsetScore() argument
1930 if (key->value == NULL) return REDISMODULE_ERR; in RM_ZsetScore()
1931 if (key->value->type != OBJ_ZSET) return REDISMODULE_ERR; in RM_ZsetScore()
1932 if (zsetScore(key->value,ele->ptr,score) == C_ERR) return REDISMODULE_ERR; in RM_ZsetScore()
1940 void zsetKeyReset(RedisModuleKey *key) { in zsetKeyReset() argument
1941 key->ztype = REDISMODULE_ZSET_RANGE_NONE; in zsetKeyReset()
1942 key->zcurrent = NULL; in zsetKeyReset()
1943 key->zer = 1; in zsetKeyReset()
1947 void RM_ZsetRangeStop(RedisModuleKey *key) { in RM_ZsetRangeStop() argument
1949 if (key->ztype == REDISMODULE_ZSET_RANGE_LEX) in RM_ZsetRangeStop()
1950 zslFreeLexRange(&key->zlrs); in RM_ZsetRangeStop()
1954 zsetKeyReset(key); in RM_ZsetRangeStop()
1958 int RM_ZsetRangeEndReached(RedisModuleKey *key) { in RM_ZsetRangeEndReached() argument
1959 return key->zer; in RM_ZsetRangeEndReached()
1968 int zsetInitScoreRange(RedisModuleKey *key, double min, double max, int minex, int maxex, int first… in zsetInitScoreRange() argument
1969 if (!key->value || key->value->type != OBJ_ZSET) return REDISMODULE_ERR; in zsetInitScoreRange()
1971 RM_ZsetRangeStop(key); in zsetInitScoreRange()
1972 key->ztype = REDISMODULE_ZSET_RANGE_SCORE; in zsetInitScoreRange()
1973 key->zer = 0; in zsetInitScoreRange()
1977 zrangespec *zrs = &key->zrs; in zsetInitScoreRange()
1983 if (key->value->encoding == OBJ_ENCODING_ZIPLIST) { in zsetInitScoreRange()
1984 key->zcurrent = first ? zzlFirstInRange(key->value->ptr,zrs) : in zsetInitScoreRange()
1985 zzlLastInRange(key->value->ptr,zrs); in zsetInitScoreRange()
1986 } else if (key->value->encoding == OBJ_ENCODING_SKIPLIST) { in zsetInitScoreRange()
1987 zset *zs = key->value->ptr; in zsetInitScoreRange()
1989 key->zcurrent = first ? zslFirstInRange(zsl,zrs) : in zsetInitScoreRange()
1994 if (key->zcurrent == NULL) key->zer = 1; in zsetInitScoreRange()
2013 int RM_ZsetFirstInScoreRange(RedisModuleKey *key, double min, double max, int minex, int maxex) { in RM_ZsetFirstInScoreRange() argument
2014 return zsetInitScoreRange(key,min,max,minex,maxex,1); in RM_ZsetFirstInScoreRange()
2019 int RM_ZsetLastInScoreRange(RedisModuleKey *key, double min, double max, int minex, int maxex) { in RM_ZsetLastInScoreRange() argument
2020 return zsetInitScoreRange(key,min,max,minex,maxex,0); in RM_ZsetLastInScoreRange()
2032 int zsetInitLexRange(RedisModuleKey *key, RedisModuleString *min, RedisModuleString *max, int first… in zsetInitLexRange() argument
2033 if (!key->value || key->value->type != OBJ_ZSET) return REDISMODULE_ERR; in zsetInitLexRange()
2035 RM_ZsetRangeStop(key); in zsetInitLexRange()
2036 key->zer = 0; in zsetInitLexRange()
2040 zlexrangespec *zlrs = &key->zlrs; in zsetInitLexRange()
2045 key->ztype = REDISMODULE_ZSET_RANGE_LEX; in zsetInitLexRange()
2047 if (key->value->encoding == OBJ_ENCODING_ZIPLIST) { in zsetInitLexRange()
2048 key->zcurrent = first ? zzlFirstInLexRange(key->value->ptr,zlrs) : in zsetInitLexRange()
2049 zzlLastInLexRange(key->value->ptr,zlrs); in zsetInitLexRange()
2050 } else if (key->value->encoding == OBJ_ENCODING_SKIPLIST) { in zsetInitLexRange()
2051 zset *zs = key->value->ptr; in zsetInitLexRange()
2053 key->zcurrent = first ? zslFirstInLexRange(zsl,zlrs) : in zsetInitLexRange()
2058 if (key->zcurrent == NULL) key->zer = 1; in zsetInitLexRange()
2075 int RM_ZsetFirstInLexRange(RedisModuleKey *key, RedisModuleString *min, RedisModuleString *max) { in RM_ZsetFirstInLexRange() argument
2076 return zsetInitLexRange(key,min,max,1); in RM_ZsetFirstInLexRange()
2081 int RM_ZsetLastInLexRange(RedisModuleKey *key, RedisModuleString *min, RedisModuleString *max) { in RM_ZsetLastInLexRange() argument
2082 return zsetInitLexRange(key,min,max,0); in RM_ZsetLastInLexRange()
2088 RedisModuleString *RM_ZsetRangeCurrentElement(RedisModuleKey *key, double *score) { in RM_ZsetRangeCurrentElement() argument
2091 if (key->zcurrent == NULL) return NULL; in RM_ZsetRangeCurrentElement()
2092 if (key->value->encoding == OBJ_ENCODING_ZIPLIST) { in RM_ZsetRangeCurrentElement()
2094 eptr = key->zcurrent; in RM_ZsetRangeCurrentElement()
2097 sptr = ziplistNext(key->value->ptr,eptr); in RM_ZsetRangeCurrentElement()
2101 } else if (key->value->encoding == OBJ_ENCODING_SKIPLIST) { in RM_ZsetRangeCurrentElement()
2102 zskiplistNode *ln = key->zcurrent; in RM_ZsetRangeCurrentElement()
2108 autoMemoryAdd(key->ctx,REDISMODULE_AM_STRING,str); in RM_ZsetRangeCurrentElement()
2115 int RM_ZsetRangeNext(RedisModuleKey *key) { in RM_ZsetRangeNext() argument
2116 if (!key->ztype || !key->zcurrent) return 0; /* No active iterator. */ in RM_ZsetRangeNext()
2118 if (key->value->encoding == OBJ_ENCODING_ZIPLIST) { in RM_ZsetRangeNext()
2119 unsigned char *zl = key->value->ptr; in RM_ZsetRangeNext()
2120 unsigned char *eptr = key->zcurrent; in RM_ZsetRangeNext()
2125 key->zer = 1; in RM_ZsetRangeNext()
2129 if (key->ztype == REDISMODULE_ZSET_RANGE_SCORE) { in RM_ZsetRangeNext()
2135 if (!zslValueLteMax(score,&key->zrs)) { in RM_ZsetRangeNext()
2136 key->zer = 1; in RM_ZsetRangeNext()
2140 } else if (key->ztype == REDISMODULE_ZSET_RANGE_LEX) { in RM_ZsetRangeNext()
2141 if (!zzlLexValueLteMax(next,&key->zlrs)) { in RM_ZsetRangeNext()
2142 key->zer = 1; in RM_ZsetRangeNext()
2146 key->zcurrent = next; in RM_ZsetRangeNext()
2149 } else if (key->value->encoding == OBJ_ENCODING_SKIPLIST) { in RM_ZsetRangeNext()
2150 zskiplistNode *ln = key->zcurrent, *next = ln->level[0].forward; in RM_ZsetRangeNext()
2152 key->zer = 1; in RM_ZsetRangeNext()
2156 if (key->ztype == REDISMODULE_ZSET_RANGE_SCORE && in RM_ZsetRangeNext()
2157 !zslValueLteMax(next->score,&key->zrs)) in RM_ZsetRangeNext()
2159 key->zer = 1; in RM_ZsetRangeNext()
2161 } else if (key->ztype == REDISMODULE_ZSET_RANGE_LEX) { in RM_ZsetRangeNext()
2162 if (!zslLexValueLteMax(next->ele,&key->zlrs)) { in RM_ZsetRangeNext()
2163 key->zer = 1; in RM_ZsetRangeNext()
2167 key->zcurrent = next; in RM_ZsetRangeNext()
2178 int RM_ZsetRangePrev(RedisModuleKey *key) { in RM_ZsetRangePrev() argument
2179 if (!key->ztype || !key->zcurrent) return 0; /* No active iterator. */ in RM_ZsetRangePrev()
2181 if (key->value->encoding == OBJ_ENCODING_ZIPLIST) { in RM_ZsetRangePrev()
2182 unsigned char *zl = key->value->ptr; in RM_ZsetRangePrev()
2183 unsigned char *eptr = key->zcurrent; in RM_ZsetRangePrev()
2188 key->zer = 1; in RM_ZsetRangePrev()
2192 if (key->ztype == REDISMODULE_ZSET_RANGE_SCORE) { in RM_ZsetRangePrev()
2198 if (!zslValueGteMin(score,&key->zrs)) { in RM_ZsetRangePrev()
2199 key->zer = 1; in RM_ZsetRangePrev()
2203 } else if (key->ztype == REDISMODULE_ZSET_RANGE_LEX) { in RM_ZsetRangePrev()
2204 if (!zzlLexValueGteMin(prev,&key->zlrs)) { in RM_ZsetRangePrev()
2205 key->zer = 1; in RM_ZsetRangePrev()
2209 key->zcurrent = prev; in RM_ZsetRangePrev()
2212 } else if (key->value->encoding == OBJ_ENCODING_SKIPLIST) { in RM_ZsetRangePrev()
2213 zskiplistNode *ln = key->zcurrent, *prev = ln->backward; in RM_ZsetRangePrev()
2215 key->zer = 1; in RM_ZsetRangePrev()
2219 if (key->ztype == REDISMODULE_ZSET_RANGE_SCORE && in RM_ZsetRangePrev()
2220 !zslValueGteMin(prev->score,&key->zrs)) in RM_ZsetRangePrev()
2222 key->zer = 1; in RM_ZsetRangePrev()
2224 } else if (key->ztype == REDISMODULE_ZSET_RANGE_LEX) { in RM_ZsetRangePrev()
2225 if (!zslLexValueGteMin(prev->ele,&key->zlrs)) { in RM_ZsetRangePrev()
2226 key->zer = 1; in RM_ZsetRangePrev()
2230 key->zcurrent = prev; in RM_ZsetRangePrev()
2294 int RM_HashSet(RedisModuleKey *key, int flags, ...) { in RM_HashSet() argument
2296 if (!(key->mode & REDISMODULE_WRITE)) return 0; in RM_HashSet()
2297 if (key->value && key->value->type != OBJ_HASH) return 0; in RM_HashSet()
2298 if (key->value == NULL) moduleCreateEmptyKey(key,REDISMODULE_KEYTYPE_HASH); in RM_HashSet()
2317 int exists = hashTypeExists(key->value, field->ptr); in RM_HashSet()
2328 updated += hashTypeDelete(key->value, field->ptr); in RM_HashSet()
2341 hashTypeTryConversion(key->value,argv,0,1); in RM_HashSet()
2342 updated += hashTypeSet(key->value, field->ptr, value->ptr, low_flags); in RM_HashSet()
2352 moduleDelKeyIfEmpty(key); in RM_HashSet()
2397 int RM_HashGet(RedisModuleKey *key, int flags, ...) { in RM_HashGet() argument
2399 if (key->value && key->value->type != OBJ_HASH) return REDISMODULE_ERR; in RM_HashGet()
2418 if (key->value) in RM_HashGet()
2419 *existsptr = hashTypeExists(key->value,field->ptr); in RM_HashGet()
2424 if (key->value) { in RM_HashGet()
2425 *valueptr = hashTypeGetValueObject(key->value,field->ptr); in RM_HashGet()
2432 autoMemoryAdd(key->ctx,REDISMODULE_AM_STRING,*valueptr); in RM_HashGet()
3085 int RM_ModuleTypeSetValue(RedisModuleKey *key, moduleType *mt, void *value) { in RM_ModuleTypeSetValue() argument
3086 if (!(key->mode & REDISMODULE_WRITE) || key->iter) return REDISMODULE_ERR; in RM_ModuleTypeSetValue()
3087 RM_DeleteKey(key); in RM_ModuleTypeSetValue()
3089 setKey(key->db,key->key,o); in RM_ModuleTypeSetValue()
3091 key->value = o; in RM_ModuleTypeSetValue()
3100 moduleType *RM_ModuleTypeGetType(RedisModuleKey *key) { in RM_ModuleTypeGetType() argument
3101 if (key == NULL || in RM_ModuleTypeGetType()
3102 key->value == NULL || in RM_ModuleTypeGetType()
3103 RM_KeyType(key) != REDISMODULE_KEYTYPE_MODULE) return NULL; in RM_ModuleTypeGetType()
3104 moduleValue *mv = key->value->ptr; in RM_ModuleTypeGetType()
3114 void *RM_ModuleTypeGetValue(RedisModuleKey *key) { in RM_ModuleTypeGetValue() argument
3115 if (key == NULL || in RM_ModuleTypeGetValue()
3116 key->value == NULL || in RM_ModuleTypeGetValue()
3117 RM_KeyType(key) != REDISMODULE_KEYTYPE_MODULE) return NULL; in RM_ModuleTypeGetValue()
3118 moduleValue *mv = key->value->ptr; in RM_ModuleTypeGetValue()
3476 return io->key; in RM_GetKeyNameFromIO()
3970 void moduleNotifyKeyspaceEvent(int type, const char *event, robj *key, int dbid) { in moduleNotifyKeyspaceEvent() argument
3995 sub->notify_callback(&ctx, type, event, key); in moduleNotifyKeyspaceEvent()
4317 memcpy(&expiretime,ri.key,sizeof(expiretime)); in moduleTimerHandler()
4328 raxRemove(Timers,(unsigned char*)ri.key,ri.key_len,NULL); in moduleTimerHandler()
4352 uint64_t key; in RM_CreateTimer() local
4355 key = htonu64(expiretime); in RM_CreateTimer()
4356 if (raxFind(Timers, (unsigned char*)&key,sizeof(key)) == raxNotFound) { in RM_CreateTimer()
4357 raxInsert(Timers,(unsigned char*)&key,sizeof(key),timer,NULL); in RM_CreateTimer()
4372 if (memcmp(ri.key,&key,sizeof(key)) == 0) { in RM_CreateTimer()
4386 return key; in RM_CreateTimer()
4468 int RM_DictSetC(RedisModuleDict *d, void *key, size_t keylen, void *ptr) { in RM_DictSetC() argument
4469 int retval = raxTryInsert(d->rax,key,keylen,ptr,NULL); in RM_DictSetC()
4475 int RM_DictReplaceC(RedisModuleDict *d, void *key, size_t keylen, void *ptr) { in RM_DictReplaceC() argument
4476 int retval = raxInsert(d->rax,key,keylen,ptr,NULL); in RM_DictReplaceC()
4481 int RM_DictSet(RedisModuleDict *d, RedisModuleString *key, void *ptr) { in RM_DictSet() argument
4482 return RM_DictSetC(d,key->ptr,sdslen(key->ptr),ptr); in RM_DictSet()
4486 int RM_DictReplace(RedisModuleDict *d, RedisModuleString *key, void *ptr) { in RM_DictReplace() argument
4487 return RM_DictReplaceC(d,key->ptr,sdslen(key->ptr),ptr); in RM_DictReplace()
4495 void *RM_DictGetC(RedisModuleDict *d, void *key, size_t keylen, int *nokey) { in RM_DictGetC() argument
4496 void *res = raxFind(d->rax,key,keylen); in RM_DictGetC()
4502 void *RM_DictGet(RedisModuleDict *d, RedisModuleString *key, int *nokey) { in RM_DictGet() argument
4503 return RM_DictGetC(d,key->ptr,sdslen(key->ptr),nokey); in RM_DictGet()
4513 int RM_DictDelC(RedisModuleDict *d, void *key, size_t keylen, void *oldval) { in RM_DictDelC() argument
4514 int retval = raxRemove(d->rax,key,keylen,oldval); in RM_DictDelC()
4519 int RM_DictDel(RedisModuleDict *d, RedisModuleString *key, void *oldval) { in RM_DictDel() argument
4520 return RM_DictDelC(d,key->ptr,sdslen(key->ptr),oldval); in RM_DictDel()
4543 RedisModuleDictIter *RM_DictIteratorStartC(RedisModuleDict *d, const char *op, void *key, size_t ke… in RM_DictIteratorStartC() argument
4547 raxSeek(&di->ri,op,key,keylen); in RM_DictIteratorStartC()
4553 …sModuleDictIter *RM_DictIteratorStart(RedisModuleDict *d, const char *op, RedisModuleString *key) { in RM_DictIteratorStart() argument
4554 return RM_DictIteratorStartC(d,op,key->ptr,sdslen(key->ptr)); in RM_DictIteratorStart()
4571 int RM_DictIteratorReseekC(RedisModuleDictIter *di, const char *op, void *key, size_t keylen) { in RM_DictIteratorReseekC() argument
4572 return raxSeek(&di->ri,op,key,keylen); in RM_DictIteratorReseekC()
4577 int RM_DictIteratorReseek(RedisModuleDictIter *di, const char *op, RedisModuleString *key) { in RM_DictIteratorReseek() argument
4578 return RM_DictIteratorReseekC(di,op,key->ptr,sdslen(key->ptr)); in RM_DictIteratorReseek()
4610 return di->ri.key; in RM_DictNextC()
4620 return di->ri.key; in RM_DictPrevC()
4632 void *key = RM_DictNextC(di,&keylen,dataptr); in RM_DictNext() local
4633 if (key == NULL) return NULL; in RM_DictNext()
4634 return RM_CreateString(ctx,key,keylen); in RM_DictNext()
4642 void *key = RM_DictPrevC(di,&keylen,dataptr); in RM_DictPrev() local
4643 if (key == NULL) return NULL; in RM_DictPrev()
4644 return RM_CreateString(ctx,key,keylen); in RM_DictPrev()
4659 int RM_DictCompareC(RedisModuleDictIter *di, const char *op, void *key, size_t keylen) { in RM_DictCompareC() argument
4661 int res = raxCompare(&di->ri,op,key,keylen); in RM_DictCompareC()
4667 int RM_DictCompare(RedisModuleDictIter *di, const char *op, RedisModuleString *key) { in RM_DictCompare() argument
4669 int res = raxCompare(&di->ri,op,key->ptr,sdslen(key->ptr)); in RM_DictCompare()
5022 uint64_t dictCStringKeyHash(const void *key) { in dictCStringKeyHash() argument
5023 return dictGenHashFunction((unsigned char*)key, strlen((char*)key)); in dictCStringKeyHash()