首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >区分Pony中不同类型的错误?

区分Pony中不同类型的错误?
EN

Stack Overflow用户
提问于 2017-03-17 05:55:26
回答 1查看 253关注 0票数 3

Pony有一个未参数化的异常值。

不幸的是,我经常有想要抛出不同类型异常的代码,我需要知道它们是什么以便正确地处理它们-例如,当停止程序时,给用户正确的错误消息是很重要的!

那么在Pony中做这件事的惯用方式是什么呢?

EN

回答 1

Stack Overflow用户

发布于 2017-03-17 09:25:36

目前惯用的方式是不使用错误,而是使用正常返回类型和错误原因的联合类型。例如,如果您有一个返回ReturnType的函数,并且在使用Error1Error2时可能出错,则函数签名可以是

代码语言:javascript
复制
fun foo(): (ReturnType | Error1 | Error2)

然后,调用者函数必须在联合上执行match,才能查看发生了什么。

如果你想要一些真实的例子,标准库的files包广泛地使用了这个习惯用法。

此外,为了完整性,目前正在讨论关于添加类型化错误的RFC

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42845484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档