summary refs log tree commit diff stats
path: root/lib/pure/redis.nim
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pure/redis.nim')
-rw-r--r--lib/pure/redis.nim13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/pure/redis.nim b/lib/pure/redis.nim
index 40e275906..434378b04 100644
--- a/lib/pure/redis.nim
+++ b/lib/pure/redis.nim
@@ -846,6 +846,19 @@ proc slaveof*(r: TRedis, host: string, port: string) =
   r.sendCommand("SLAVEOF", host, port)
   raiseNoOK(r.parseStatus())
 
+iterator hPairs*(r: TRedis, key: string): tuple[key, value: string] =
+  ## Iterator for keys and values in a hash.
+  var 
+    contents = r.hGetAll(key)
+    k = ""
+  for i in items(contents):
+    if k == "":
+      k = i
+    else:
+      yield (k, i)
+      k = ""
+      
+
 when false:
   # sorry, deactivated for the test suite
   var r = open()