redis-ac

Crates.ioredis-ac
lib.rsredis-ac
version0.1.1
sourcesrc
created_at2019-11-16 02:22:38.371968
updated_at2019-11-23 00:32:36.703975
descriptionAsynchronuos commands helper for redis-rs
homepagehttps://github.com/yushiomote/redis-ac
repositoryhttps://github.com/yushiomote/redis-ac
max_upload_size
id181691
size57,765
Yushi OMOTE (YushiOMOTE)

documentation

https://docs.rs/redis-ac

README

redis-ac

Asynchronous version of redis::Commands trait.

Latest version Documentation License Actions Status

Get/set

use futures::prelude::*;
use redis_ac::Commands;

fn main() {
    let client = redis::Client::open("redis://127.0.0.1/").unwrap();

    let f = client
        .get_async_connection()
        .and_then(|con| {
            con.set("key", "value")
                .and_then(|(con, s): (_, String)| {
                    assert_eq!(s, "OK");
                    con.get("key")
                })
                .map(|(_, s): (_, String)| {
                    assert_eq!(s, "value");
                })
        })
        .map_err(|e| panic!("{}", e));

    tokio::run(f);
}

Scan

use futures::prelude::*;
use redis_ac::Commands;

fn main() {
    let client = redis::Client::open("redis://127.0.0.1/").unwrap();

    let f = client
        .get_shared_async_connection()
        .and_then(|con| {
            con.scan_match("key*")
                .map(|(_, v): (_, String)| v)
                .collect()
        })
        .map(|res| {
            println!("{:?}", res);
        })
        .map_err(|e| panic!("{}", e));

    tokio::run(f);
}
Commit count: 29

cargo fmt