如何解决有关OCaml标准库功能可能引起哪个错误的文档 1.3错误处理
标题已经说完了-几乎:)
我尤其对模块Sys
和Unix
中的功能感兴趣。
“ OCaml中的Unix系统编程”一书(available here)指出:
1.3错误处理
除非另有说明,否则Unix模块中的所有函数在发生错误的情况下都会引发异常
Unix_error
。
exception Unix_error of error * string * string
[...]
最后,异常的第一个参数是指示错误性质的错误代码。它属于变量类型错误:
type error = E2BIG | EACCES | EAGAIN | ... | EUNKNOWNERR of int
到目前为止,还不错,但是 ... 哪个函数可以引发哪个 error
?
例如,哪些人可以加注Unix_error(EAGAIN,_,_)
,而哪些人不能加注?
我是否必须研究实施情况?是否有现成的清单?
解决方法
OCaml刚刚传递了Unix错误。每个操作的可能错误在Unix文档中。实际上,在我使用的类Unix系统上,它的记录相当合理。例如,您可以从命令行尝试man 2 chmod
。
但是,根据我的经验,并没有很好地(或根本没有)记录每个错误(逆关系)的可能原因。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。