std.opt
tier: core · since: std-0.2 stability: experimental
Option/Result 组合子补齐(前奏 map/or/expect 之外的链式缺口)
口径:与 ?/or 语义对齐(§4.4/§5.3);命名无同义别名(运算符宪法精神)
pub fn
| Signature | Returns | Description |
|---|---|---|
opt_and_then[T, U](o: Option[T], f: fn(T) -> Option[U]) |
Option[U] |
单子绑定:Some(v) → f(v);None → None |
opt_or_else[T](o: Option[T], f: fn() -> Option[T]) |
Option[T] |
惰性取默认:None 时才调用 f |
opt_map2[T, U, V](a: Option[T], b: Option[U], f: fn(T, U) -> V) |
Option[V] |
双 lift:任一 None → None |
opt_to_result[T](o: Option[T], msg: Str) |
Result[T, Str] |
Option → Result(None 附消息) |
opt_get_i(o: Option[I32], dft: I32) |
I32 |
发射面安全 Option 助手(match 形;C13a) |
opt_some_i(o: Option[I32]) |
Bool |
Option[I32] 是否 Some(发射面 C13 判别形助手) |