Lines Matching refs:li
85 listTypeIterator *li = zmalloc(sizeof(listTypeIterator)); in listTypeInitIterator() local
86 li->subject = subject; in listTypeInitIterator()
87 li->encoding = subject->encoding; in listTypeInitIterator()
88 li->direction = direction; in listTypeInitIterator()
89 li->iter = NULL; in listTypeInitIterator()
94 if (li->encoding == OBJ_ENCODING_QUICKLIST) { in listTypeInitIterator()
95 li->iter = quicklistGetIteratorAtIdx(li->subject->ptr, in listTypeInitIterator()
100 return li; in listTypeInitIterator()
104 void listTypeReleaseIterator(listTypeIterator *li) { in listTypeReleaseIterator() argument
105 zfree(li->iter); in listTypeReleaseIterator()
106 zfree(li); in listTypeReleaseIterator()
112 int listTypeNext(listTypeIterator *li, listTypeEntry *entry) { in listTypeNext() argument
114 serverAssert(li->subject->encoding == li->encoding); in listTypeNext()
116 entry->li = li; in listTypeNext()
117 if (li->encoding == OBJ_ENCODING_QUICKLIST) { in listTypeNext()
118 return quicklistNext(li->iter, &entry->entry); in listTypeNext()
128 if (entry->li->encoding == OBJ_ENCODING_QUICKLIST) { in listTypeGet()
142 if (entry->li->encoding == OBJ_ENCODING_QUICKLIST) { in listTypeInsert()
161 if (entry->li->encoding == OBJ_ENCODING_QUICKLIST) { in listTypeEqual()
171 if (entry->li->encoding == OBJ_ENCODING_QUICKLIST) { in listTypeDelete()
493 listTypeIterator *li; in lremCommand() local
496 li = listTypeInitIterator(subject,-1,LIST_HEAD); in lremCommand()
498 li = listTypeInitIterator(subject,0,LIST_TAIL); in lremCommand()
502 while (listTypeNext(li,&entry)) { in lremCommand()
504 listTypeDelete(li, &entry); in lremCommand()
510 listTypeReleaseIterator(li); in lremCommand()