https://github.com/iddm/listpack-redis
Listpack implementation based on Redis.
https://github.com/iddm/listpack-redis
Last synced: 12 months ago
JSON representation
Listpack implementation based on Redis.
- Host: GitHub
- URL: https://github.com/iddm/listpack-redis
- Owner: iddm
- License: other
- Created: 2024-02-27T14:28:42.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-06-26T08:31:49.000Z (almost 2 years ago)
- Last Synced: 2025-01-20T08:08:57.334Z (over 1 year ago)
- Language: Rust
- Size: 600 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/iddm/listpack-redis/actions/workflows/ci.yml)
[](https://crates.io/crates/listpack-redis)
[](https://docs.rs/listpack-redis)
[](./LICENSE)
# Listpack (based on the Redis implementation)
This crate provides a Rust-idiomatic re-implementation of the "listpack"
data-structure implemented in Redis as a part of Redis.
This implementation is:
1. fully written in Rust.
2. Allows to specify a custom allocator.
3. Allows to store more types than in Redis: `f64`, `u64`, `bool`,
`null` and objects of custom type.
# Description
Please follow the official [description](https://github.com/antirez/listpack/blob/master/listpack.md) of the data structure first.
In order to implement the additional types, the unused data subencodings
are used.
# MSRV (Minimally-Supported Rust Version)
The `MSRV` is `1.70`.
# Building
Simply build using `cargo`:
```sh
cargo build
```
# Examples
Please take a look at the [/examples](./examples) directory, where you
may find a few examples showing the use of the crate.
Additionally, you may check out the unit tests
[/src/listpack.rs](./src/listpack.rs) directory to get familiar with
some more specific use-cases.
# LICENSE
[License](./LICENSE)