#iterator #once #only

已废弃 无 std single

Itertools::at_most_one 的简陋版本已被废弃

6 个版本 (2 个稳定版)

使用旧的 Rust 2015

1.0.1 2022年7月8日
1.0.0 2018年8月21日
0.3.0 2017年12月16日
0.2.1 2017年6月11日
0.1.0 2017年6月8日

#75#once

Download history 364/week @ 2024-03-31 231/week @ 2024-04-07 333/week @ 2024-04-14 313/week @ 2024-04-21 153/week @ 2024-04-28 166/week @ 2024-05-05 200/week @ 2024-05-12 162/week @ 2024-05-19 168/week @ 2024-05-26 163/week @ 2024-06-02 131/week @ 2024-06-09 200/week @ 2024-06-16 174/week @ 2024-06-23 83/week @ 2024-06-30 144/week @ 2024-07-07 201/week @ 2024-07-14

625 每月下载量
用于 6 个包 (3 个直接使用)

MIT/Apache

7KB
66

此包已废弃。

请使用 Itertools::at_most_one 代替,它以更好的方式提供等效功能。


Single

Build Status crates.io downloads version downloads issues open

此包为从单元素迭代器中提取元素提供了 Single 特性。

许可证

您可以根据自己的意愿在此许可证下使用此包,即 MIT 许可证或 Apache 许可证 2.0。

单::单 特性

pub trait Single: Iterator {
    fn single(self) -> Result<Self::Item, Error>;
}

所需方法

fn single(self) -> Result<Self::Item, Error>

从单元素迭代器中获取单个元素。

示例

assert_eq!(iter::empty::<i32>().single(), Err(single::Error::NoElements));
assert_eq!(iter::once(0).single(), Ok(0));
assert_eq!(iter::repeat(0).single(), Err(single::Error::MultipleElements));

实现者

impl<I: Iterator> Single for I {}

依赖关系

~1.4–2.2MB
~50K SLoC