2 个版本
0.0.2 | 2020年9月10日 |
---|---|
0.0.1 | 2020年8月26日 |
#172 在 解析工具
每月 下载 28 次
用于 6 个 仓库(2 个直接使用)
10KB
95 行
gnaw
使用此包,您可以方便地从 切片 或 str
中切出小块用于其他地方。
安装
请使用 cargo-edit 添加此库的最新版本
cargo add gnaw
示例
use gnaw::{Drain as _, Pop as _, Unshift as _};
let mut text = "abcdefg";
assert_eq!(text.unshift(), Some('a'));
assert_eq!(text.pop(), Some('g'));
let mut drain = text.drain();
assert_eq!(drain.next(), Some('b'));
assert_eq!(drain.next(), Some('c'));
assert_eq!(drain.next_back(), Some('f'));
assert_eq!(drain.next_back(), Some('e'));
drop(drain);
//TODO: Why isn't the mutable borrow released here?
//assert_eq!(text, "d");
许可证
根据您的要求,许可方式可以是以下两种之一:
- Apache 许可证,版本 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
贡献
除非您明确说明,否则您提交给包含在作品中的任何贡献(根据 Apache-2.0 许可证定义),都应如上双许可,无任何附加条款或条件。
行为准则
更新日志
版本控制
gnaw
严格遵循 语义版本控制 2.0.0,但有以下例外
- 在主要版本变更时,次要版本不会重置为 0(除了 v1)。
将其视为全局功能级别。 - 在主要或次要版本变更时,补丁版本不会重置为 0(除了 v0.1 和 v1)。
将其视为全局补丁级别。
这包括上述指定的 Rust 版本要求。
较早的 Rust 版本可能兼容,但这可能会随着次要或补丁版本而改变。
受功能和补丁影响的版本可以在 CHANGELOG.md 的相应标题中确定。