10个版本
0.1.9 | 2024年1月17日 |
---|---|
0.1.8 | 2024年1月17日 |
0.1.5 | 2023年11月13日 |
0.1.2 | 2023年10月18日 |
#1313 in 数据库接口
24KB
701 行
lexi-rs
lexidb的Rust客户端,一个内存数据结构数据库。
入门
安装此包
$ cargo add lexi-rs
基本用法
目前,设置的值必须实现Into。实现此特质的类型包括
- &str
- String,
- i8, u8, i16, u16, i32, u32, i64, f32, f64
use lexi;
use anyhow;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let mut client = Client::new(<address>)?;
client.connect.await?;
let set_res = client.set("key", "value").await?;
assert_eq!(set_res, lexi::LexiType::Simple(SimpleString::Ok));
let get_res = client.get("key").await?;
assert_eq!(get_res, lexi::LexiType::BulkString("value".to_owned()));
let del_res = client.del("key").await?;
assert_eq!(del_res, lexi::LexiType::Simple(SimpleString::Ok));
Ok(())
}
栈
let push_res = client.push("vince").await?;
assert_eq!(push_res, LexiType::Simple(SimpleString::Ok));
let pop_res = client.pop().await?;
assert_eq!(pop_res, LexiType::BulkString("vince".to_owned());
队列
let enque_res = client.enque("vince").await?;
assert_eq!(enque_res, LexiType::Simple(SimpleString::Ok));
let deque_res = client.deque().await?;
assert_eq!(deque_res, LexiType::BulkString("vince".to_owned());
依赖项
~3–12MB
~116K SLoC