kv_iterator_next()
#include <kvstore.h>
kv_error_t
kv_iterator_next(kv_iterator_t *iterator,
const kv_key_t **key,
const kv_value_t **value)
イテレータの次のレコードを返します。別のレコードが存在する場合、この関数はKV_SUCCESS
を返し、keyおよびvalueパラメータが移入されます。レコードがなくなると、戻り値はKV_NO_SUCH_OBJECT
になります。戻り値がKV_SUCCESS
またはKV_NO_SUCH_OBJECT
以外の場合は、操作は失敗しています。
パラメータ
-
iterator
iteratorパラメータは、イテレータへのハンドルです。これは、ストアの複数の読取りを実行する関数(kv_multi_get()など)のいずれかを使用して割り当てられます。これは、kv_release_iterator()を使用して解放されます。
-
key
keyパラメータは、次のキーへのポインタのコピー先であるメモリーを参照します。
このキー構造は解放しないでください。ここで使用されるリソースは、イテレータが解放されるときに解放されます。
-
value
valueパラメータは、次の値へのポインタのコピー先であるメモリーを参照します。
この値構造は解放しないでください。ここで使用されるリソースは、イテレータが解放されるときに解放されます。
関連項目