#monads #compiler #result

partial

可选 monad 带有虚假变体

10 个不稳定版本 (3 个重大更新)

使用旧的 Rust 2015

0.4.0 2018年7月24日
0.3.0 2018年7月24日
0.2.3 2017年8月30日
0.1.3 2017年3月2日
0.1.0 2016年10月12日

#1232数据结构

Download history 14/week @ 2024-03-13 10/week @ 2024-03-27 19/week @ 2024-04-03 2/week @ 2024-05-15 6/week @ 2024-05-22

每月69 次下载
oak 中使用

Apache-2.0

10KB
227

Partial 库

ptal on Travis CI

类似于 Option<T>,但有一个额外的 Fake 变体,用于累积超过第一个的错误。例如,在编译器中,如果代码分析失败,我们希望继续进一步以获取更多错误。

请参阅文档


lib.rs:

Partial 类似于 Option,其中 Value 替代了 Some,而 Nothing 替代了 None

Value 类似,Fake 包含一个可以进一步使用(例如在 mapand_then 中)的正确类型的值,但这个值是一个用于能够计算剩余部分并检测更多错误的占位值。对于任何方法,我们都有这样的顺序:Value > Fake > Nothing;一个 Fake 值永远不会再次成为 Value。

用例:当编译时,必须报告一个函数中的错误,但不应该阻止第二个函数的编译以检测运行中的更多错误。这种中间状态由 Fake 表示。

没有运行时依赖