#helper #macro #extension-traits

random_stuff

一堆随机辅助工具、宏、扩展特性……我不愿为它们单独编写一个包。可能和 rand 包没有关系。

1 个不稳定版本

0.1.0 2021 年 1 月 23 日

#2595Rust 模式

WTFPL 许可协议

27KB
405

各种 Rust 工具

这个包包含一堆随机辅助工具、宏、扩展特性……我不愿为它们单独编写一个包。可能和 rand 包没有关系。

虽然我会遵循 semver,但我也不会尽力避免破坏性更改。这个包将永远不稳定。

在生产环境中使用此包很可能是个坏主意。但您可以自由地复制这里找到的任何内容。甚至更好的是,对其进行润色并创建一个单独的包。如果您这样做,请通知我。

我可能会偶尔将某些内容从这里移到单独的包中。如果我有这样的行为,或者我得知其他人也这样做了,我会尽量找到时间在这个包中弃用等效功能并在以后删除它。

当前包含的内容

  • 显示 Error 类型辅助工具。
  • 显示和记录 Result 错误的辅助工具
  • 对整数类型进行校验操作,返回 Result(与 Option 相反 - 更好的错误消息)

不稳定性策略

即使它更改了 API,不稳定的代码也将被修复(即使它更改了 API)。最好是破坏您的编译而不是让您的代码存在漏洞。(您反正不在生产中使用它,对吧?!)

非目标

  • 玩笑代码(但如果有误导性,请不要开玩笑)
  • 糟糕的代码
  • 不稳定的代码
  • 效率低下、明显、易于修复的代码
  • 让程序员或其创作作品的用户感到沮丧的代码

MSRV

Debian 稳定版中可用的内容(目前为 1.41)。可能在未来引入需要更新版的功能。

贡献

您可以自由地提交修复、改进和新内容的 PR!虽然这不是一个高质量的包,但我有一些基本要求

  • 您同意使用相同的许可协议发布
  • 所有非显而易见的函数都必须有文档(例如,如果您的类型应像切片一样行为,则不需要文档其 len() 方法)
  • 函数名称 绝对不能撒谎
  • 错误类型必须产生有意义的错误消息,并且 绝对不能撒谎
  • 您同意我有时可能根据我个人的主观猜测要求您更改某些内容。当然,我会尽量做到合理,但我可能不同意您的意见。
  • 遵守MSRV(或如果不遵守则使用功能标志);功能标志可能以所需的Rust版本命名

许可证

WTFPL

但如果您是政府代理人、雇员或承包商,那么我不喜欢您。(当然,我是指强制性的政府,我喜欢自愿的假政府。)

依赖项

~245–760KB
~18K SLoC