Redian新闻
>
Go 1.20将支持wrapping multiple errors

Go 1.20将支持wrapping multiple errors

公众号新闻
出品 | OSC开源社区(ID:oschina2013)
Go 近日接受了名为「add support for wrapping multiple errors」的提案。
该项提案对错误处理进行了优化,与 Go 1.13 为错误处理提供的新功能有关:Error Wrapping。引入 Error Wrapping 后,Go 同时为errors包添加了 3 个工具函数,分别是UnwrapIsAs
对于「add support for wrapping multiple errors」提案,顾名思义就是一个错误可以包裹多个错误。
Unwrap() []error
提出该提案的开发者表示,重用 Unwrap 避免了与现有 Unwrap 方法产生歧义,从 Unwrap 中返回一个长度为 0 的列表意味着错误没有包裹任何内容。调用方不得修改由 Unwrap 返回的列表,Unwrap 返回的列表不得包含任何 nil 错误。
他还对 errors.Is 和 errors.As 函数进行了更新,实现对 multiple errors 进行 Unwrap 操作。
errors.Join 函数提供了 multierr 的简单实现:
// Join returns an error that wraps the given errors.
// Any nil error values are discarded.
// The error formats as the text of the given errors, separated by newlines.
// Join returns nil if errs contains no non-nil values.
func Join(errs ...error) error
目前该提案已被接受,作者表示将在 Go 1.20 中提供:
详情查看 https://github.com/golang/go/issues/53435

你参与开源吗?

点击下方小程序

抽开源中国周边啦~

往期推荐



Forest + IDEA = 双倍快乐! ForestX 隆重登场

Linus强势催更

“俄罗斯的谷歌”弃俄



这里有最新开源资讯、软件更新、技术干货等内容

点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦~

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
Chrome 109发布,最后一个支持Windows 7/8的版本增加Matplotlib画图教程!MLNLP社区Paper Picture Writing Code项目最新更新!娱乐消费更贵了,苹果将在加拿大提高 Apple Music 和 Apple TV Plus 的价格EulerMaker:构建 openEuler 全场景生态 | Linux 中国OBS Studio即将支持WebRTC,采用Rust实现苹果上线全新笔记 App/Apple Music 涨价/坂本龙一年底直播独奏会Corsair HX1000 1000W 80 Plus Platinum Modular Power Supply丰田汽车广告词“let’s go places”语法错了吗?为啥不是 go to places?马化腾称视频号基本上是全公司的希望;BOSS 直聘在港交所完成双重主要上市;小米13 Pro支持Wi-Fi 7……China Bans Celebs From Endorsing Tutoring, Tobacco, and OthersIKEA x OBEGRÄNSAD联名!宜家22年最受瞩目系列开售!内资会计所 | RSM 2023 Technology Risk Consulting Intern,持续热招中雨,不停地下 -- 飓风过时碎碎念三国的真相:蜀国法西斯,魏国走正道China Golden Rooster & Hundred Flowers Film Festival wraps up平价买到高级感!IKEA全新 OBEGRÄNSAD系列,全系列都好看![干货] “错时共享”不是 wrong time sharing...Elon Musk 声称 Apple 威胁要把 Twitter 从 Apple Store 下架《最后的诗歌》:1: 西面Kotlin Multiplatform Mobile 进入 Beta 测试[腕表] JAEGER-LECOULTRE Master ControlCHERRY MX 新轴体 Clear-Top 与 Ergo Clear 中文名确定:“墨轴”和“玉轴”Unity 7.7桌面环境将推出支持Wayland的UnityX风味版本[掌设] 该来的还是会来,Apple Watch Ultra 开箱简评,多图杀猫Wu Zetian and the Quest for Feminism in All the Wrong Places微软Edge 109发布,内置文本预测、即将停止支持Windows 7/8董车日报|特斯拉车机支持 Apple Music / 新款蔚来 ES6 申报图公布江城子:山水秀,小溪淙。Apple Watch 选购指南:从 SE 到 Ultra,选购手表,一篇就够了丨有用功Apple Watch Ultra:伪户外永远比真户外有市场。Fedora Workstation引入原生支持Wayland 的 Blender人生自古誰無死?玩得辛苦玩得大[干货] simple 的比较级是 simpler 还是 more simple?EverythingToolbar 1.0发布,支持Windows 11
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。