#default-value #default #traits #empty #uninitialized #macro-derive

无 std partial-default

提供类似 Default 但保证更少的 trait

1 个不稳定版本

0.1.0 2023年10月25日

#1402 in Rust 模式

Download history 1275/week @ 2024-03-14 1444/week @ 2024-03-21 1330/week @ 2024-03-28 722/week @ 2024-04-04 1372/week @ 2024-04-11 1192/week @ 2024-04-18 1250/week @ 2024-04-25 1099/week @ 2024-05-02 749/week @ 2024-05-09 1654/week @ 2024-05-16 1097/week @ 2024-05-23 1002/week @ 2024-05-30 1102/week @ 2024-06-06 890/week @ 2024-06-13 1912/week @ 2024-06-20 1220/week @ 2024-06-27

每月 5,205 次下载

仅 AGPL-3.0

16KB

PartialDefault 是一个给类型赋予非有用默认值的 trait。

标准 Default trait 将其目的记录为提供“有用”的默认值。然而,某些类型(如凭证)没有有意义的默认值,但仍需要已初始化的已知值。

PartialDefault 满足这个细分市场。实现了 PartialDefault 的类型可以提供一个安全删除或重新分配的值,但对于该值的其他方面不做任何保证。它提供了一个 derive 宏(可选,具有 derive 功能)并且是 no_std 兼容的。

许可和贡献

PartialDefault 是为了支持 libsignal 而制作的,但根据 AGPLv3 许可证可供通用使用。然而,这个包是低维护的;不要期望积极的支持或功能请求的进展。

Signal 接受对这个项目的外部贡献;但是,所有贡献都需要签署 CLA(贡献者许可协议)

版权 2023 Signal Messenger, LLC。

partial-default-derive 包包含来自 rust-smart-default 包的代码,版权所有 (c) 2017 Idan Arye,在 MIT 许可证 下。

依赖关系

~110KB