kr

Crates.iokr
lib.rskr
version0.6.1
created_at2025-03-13 11:47:40.413033+00
updated_at2025-11-10 02:12:34.372392+00
descriptionThe Rust Development Toolkit
homepage
repositoryhttps://github.com/noble-gase/kr
max_upload_size
id1590773
size42,858
noble-gase (noble-gase)

documentation

https://docs.rs/kr

README

氪-Kr

crates.io MIT

[氪-Kr] Rust开发工具包

安装

cargo add kr --features macros

kr-core

功能

  • AES
    • CBC
    • ECB
    • GCM
  • Hash
  • 时间格式化
  • 基于Redis的分布式锁
  • 基于 bb8 的Redis异步Manager

⚠️ aes 相关功能依赖 openssl

kr-macros

派生宏:Model

  • 使用
#[derive(Model)]
#[partial(UserLite !(email, phone))] // 排除字段
#[partial(UserBrief (id, name), derive(Copy, Debug))] // 包含字段
pub struct User {
    pub id: i64,

    #[sqlx(rename = "username")]
    pub name: String,

    pub email: String,
    pub phone: String,
    pub created_at: String,
    pub updated_at: String,
}
  • 生成代码
#[derive(sqlx::FromRow)]
pub struct UserLite {
    pub id: i64,

    #[sqlx(rename = "username")]
    pub name: String,

    pub created_at: String,
    pub updated_at: String,
}

#[derive(sqlx::FromRow, Copy, Debug)]
pub struct UserBrief {
    pub id: i64,

    #[sqlx(rename = "username")]
    pub name: String,
}

👉 具体使用可以参考 rnx

Enjoy 😊

Commit count: 9

cargo fmt