#![allow(non_snake_case, clippy::wrong_self_convention)]
use super::codec_redis::{Request, Response};
use super::errors::CommandError;
mod auth;
mod connection;
mod hashes;
mod keys;
mod lists;
mod strings;
mod utils;
pub use self::auth::Auth;
pub use self::connection::{Ping, Select};
pub use self::hashes::{HDel, HGet, HGetAll, HIncrBy, HLen, HSet};
pub use self::keys::{Del, Exists, Expire, ExpireAt, Ttl, TtlResult};
pub use self::lists::{LIndex, LPop, LPush, RPop, RPush};
pub use self::strings::{Get, IncrBy, Set};
pub trait Command {
type Output;
fn to_request(self) -> Request;
fn to_output(val: Response) -> Result<Self::Output, CommandError>;
}
pub mod commands {
pub use super::auth::AuthCommand;
pub use super::hashes::{HDelCommand, HGetAllCommand, HSetCommand};
pub use super::keys::{KeysCommand, TtlCommand};
pub use super::lists::LPushCommand;
pub use super::strings::SetCommand;
pub use super::utils::{BulkOutputCommand, IntOutputCommand};
}