文件名称:maybe:C 的选项类型
文件大小:11KB
文件格式:ZIP
更新时间:2024-07-01 22:00:57
C
也许 c 的可能 monad。 用例 通常我们会写这样的函数: ssize_t indexof ( int v, int *vs, size_t len) { size_t idx; for (idx = 0 ;idx < len;++idx) { if (v == vs[idx]) { return idx; } } return - 1 ; } 在这种情况下,我们有一个ssize_t 。 这告诉我们返回类型可能是正值或负值。 这与我们函数索引的定义相矛盾,因为有效索引是非负数。 为了为我们函数的另一个值(错误情况)提供空间,我们需要向 codomain 添加一个新值。 我们真正想要的是一种概括一组值加上一个更多值的想法的方法。 maybe我们可以把它写成: MAYBE ( size_t
【文件预览】:
maybe-master
----test()
--------tests.c(690B)
----include()
--------maybe()
--------maybe.h(4KB)
----LICENSE(18KB)
----README.md(2KB)