diff options
| author | LLLL Colonq <llll@colonq> | 2024-02-23 19:30:52 -0500 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2024-02-23 19:31:11 -0500 |
| commit | 4a23754fc6515c947e0bbac38cd0e558b701fe2f (patch) | |
| tree | 75c487c3ee77c3aef58eb33f3ff9018d4bd6dcdc /fig-frontend/src/Fig/Frontend/DB.hs | |
| parent | 6942ffa61fe93dc6872f97d1a0b7683614e8c7e4 (diff) | |
Add poke API
Diffstat (limited to 'fig-frontend/src/Fig/Frontend/DB.hs')
| -rw-r--r-- | fig-frontend/src/Fig/Frontend/DB.hs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/fig-frontend/src/Fig/Frontend/DB.hs b/fig-frontend/src/Fig/Frontend/DB.hs index d0641de..5ca8772 100644 --- a/fig-frontend/src/Fig/Frontend/DB.hs +++ b/fig-frontend/src/Fig/Frontend/DB.hs @@ -24,3 +24,23 @@ hget c key hkey = liftIO $ Redis.runRedis c do hvals :: MonadIO m => Redis.Connection -> ByteString -> m (Maybe [ByteString]) hvals c key = liftIO $ Redis.runRedis c do hush <$> Redis.hvals key + +sadd :: MonadIO m => Redis.Connection -> ByteString -> [ByteString] -> m () +sadd c key skeys = liftIO $ Redis.runRedis c do + _ <- Redis.sadd key skeys + pure () + +srem :: MonadIO m => Redis.Connection -> ByteString -> [ByteString] -> m () +srem c key skeys = liftIO $ Redis.runRedis c do + _ <- Redis.srem key skeys + pure () + +smembers :: MonadIO m => Redis.Connection -> ByteString -> m (Maybe [ByteString]) +smembers c key = liftIO $ Redis.runRedis c do + hush <$> Redis.smembers key + +sismember :: MonadIO m => Redis.Connection -> ByteString -> ByteString -> m Bool +sismember c key skey = liftIO $ Redis.runRedis c do + Redis.sismember key skey >>= hush >>> \case + Just x -> pure x + Nothing -> pure False |
