3 个不稳定版本
0.2.0 | 2024 年 6 月 5 日 |
---|---|
0.1.1 | 2024 年 6 月 5 日 |
0.1.0 | 2024 年 6 月 5 日 |
#438 在 数据结构
每月 34 次下载
13KB
151 行
🐁 mini_uuid
mini_uuid 是一个 Rust crate,它将 UUID 转换为紧凑的 base64 表示形式,使它们更短、更高效地用于存储和传输!
附言,我在无聊的时候用空闲时间做了这个,不知道我会迭代多少次,除非你了解你正在使用的代码,否则请不要在生产环境中使用
功能
您可以使用此 crate 与 v1
、v4
或 v7
uuids。填充是可选的,使用 padding
功能,您可以通过 url_safe
功能启用 URL 安全性。
使用方法
use mini_uuid::MiniUuid;
fn main() {
// Generate a UUID
let uuid = uuid::Uuid::new_v4();
// Convert to mini UUID (base64)
let mini = MiniUuid::from_uuid(&uuid);
// or just create it without the `uuid` crate
let mini = MiniUuid::new();
println!("Mini UUID: {}", mini.to_string());
// Convert back to UUID
let original_uuid = mini.to_uuid().unwrap();
println!("Original UUID: {}", original_uuid);
}
方法
// Creates a `MiniUuid` from a `uuid::Uuid`
let mini = MiniUuid::from_uuid(uuid::Uuid::new_v4());
// Creates a `MiniUuid` from a string representing `uuid::Uuid`
let mini = MiniUuid::from_uuid_str("67e55044-10b1-426f-9247-bb680e5fe0c8");
// Creates a `MiniUuid` from a string by checking the `padding` and `url_safe` features
let mini = MiniUuid::from_string("/*INSERT MINI UUID*/");
// Creates a `MiniUuid` from a url safe base64 string with padding
let mini = MiniUuid::from_url_base64("Z+VQRBCxQm+SR7toDl/gyA==");
// Creates a `MiniUuid` from a url safe base64 string without padding
let mini = MiniUuid::from_url_base64_no_pad("Z+VQRBCxQm+SR7toDl/gyA");
// Creates a `MiniUuid` from a base64 string with padding
let mini = MiniUuid::from_base64("Z-VQRBCxQm-SR7toDl_gyA==");
// Creates a `MiniUuid` from a base64 string without padding
let mini = MiniUuid::from_base64_no_pad("Z-VQRBCxQm-SR7toDl_gyA");
// Converts `MiniUuid` to `uuid::Uuid`
let uuid = mini.to_uuid();
// Converts `MiniUuid` to a string by checking the `padding` and `url_safe` features
let uuid = mini.to_string();
// Converts `MiniUuid` to url safe base64 string with padding
let uuid = mini.to_url_base64();
// Converts `MiniUuid` to url safe base64 string without padding
let uuid = mini.to_url_base64_no_pad();
// Converts `MiniUuid` to base64 string with padding
let uuid = mini.to_base64();
// Converts `MiniUuid` to base64 string without padding
let uuid = mini.to_base64_no_pad();
安装
将 mini_uuid
添加到您的 Cargo.toml
[dependencies]
mini_uuid = "0.2.0"
贡献
欢迎贡献!请打开一个 issue 或在 GitHub 上提交一个 pull request。
许可
本项目采用 MIT 许可证。有关详细信息,请参阅 LICENSE 文件。
致谢
受 uuid crate 和 short_uuid crate 的启发
由 nanokeshtw 使用 ❤️ 制作
依赖
~515KB