#options #语法糖 #map

drop_some

.drop_someOption 的语法糖。它替代了 .map(|_|()).

2 个稳定版本

1.0.1 2020年8月10日

Rust 模式 中排名 2746

每月下载量 27
用于 web-sugars

MIT 许可证

4KB

drop_some

  • 这个crate定义了DropSome trait并为Option实现了impl
  • DropSome trait 有一个 .drop_some(self) -> Option<()> 函数。
  • 这是一个 .map(|_|()) 的语法糖。

使用场景

fn some_function() -> Option<()>
{
 match switcher
 {
  pattern_a => some_task1().drop_some()?
  pattern_b => some_task2().drop_some()?
  pattern_c => some_task3()?
  pattern_d => some_task4()
  _ => ()
 }
}

fn some_task1()     -> Option<i8     > { /* abbr */ }
fn some_task2<'a>() -> Option<&'a str> { /* abbr */ }
fn some_task3()     -> Option<()     > { /* abbr */ }
fn some_task4() { /* abbr */ }
  • 参见:<tests/test.rs>

注意

"我不需要它,因为 ..."

  • 是的,你是对的。
    • 但是,我尝试输入/看到 .map(|_|())。所以我很高兴使用.drop_some()

许可证

作者

无运行时依赖