Go 近日接受了名為「add support for wrapping multiple errors」的提案。 該項(xiàng)提案對(duì)錯(cuò)誤處理進(jìn)行了優(yōu)化,與 Go 1.13 為錯(cuò)誤處理提供的新功能有關(guān):Error Wrapping。引入 Error Wrapping 后,Go 同時(shí)為errors包添加了 3 個(gè)工具函數(shù),分別是Unwrap、Is和As。 對(duì)于「add support for wrapping multiple errors」提案,顧名思義就是一個(gè)錯(cuò)誤可以包裹多個(gè)錯(cuò)誤。
Unwrap() []error提出該提案的開發(fā)者表示,重用Unwrap避免了與現(xiàn)有 Unwrap 方法產(chǎn)生歧義,從Unwrap中返回一個(gè)長(zhǎng)度為 0 的列表意味著錯(cuò)誤沒有包裹任何內(nèi)容。調(diào)用方不得修改由Unwrap返回的列表,Unwrap返回的列表不得包含任何nil錯(cuò)誤。 他還對(duì)errors.Is和errors.As函數(shù)進(jìn)行了更新,實(shí)現(xiàn)對(duì) multiple errors 進(jìn)行Unwrap操作。 errors.Join函數(shù)提供了 multierr 的簡(jiǎn)單實(shí)現(xiàn):
// 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 中提供:
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
函數(shù)
+關(guān)注
關(guān)注
3文章
4417瀏覽量
67502
原文標(biāo)題:Go 1.20將支持wrapping multiple errors
文章出處:【微信號(hào):OSC開源社區(qū),微信公眾號(hào):OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
Go 語言高并發(fā)服務(wù)設(shè)計(jì)與性能調(diào)優(yōu)實(shí)戰(zhàn):從萬級(jí)到百萬級(jí)并發(fā)的演進(jìn)之路
在2026年的今天,Go 語言已成為高并發(fā)后端服務(wù)的首選語言。根據(jù) Stack Overflow 最新開發(fā)者調(diào)查:
指標(biāo)
數(shù)據(jù)
Go 語言采用率
后端服務(wù)中占比 42%
平均并發(fā)能力
單節(jié)點(diǎn)
發(fā)表于 02-18 19:19
技嘉全新 27 寸 WOLED 電競(jìng)顯示器 GO27Q24G 正式上市
240Hz 高刷新率,并支持 NVIDIA? G-SYNC? Compatible 與 AMD FreeSync? Premium 技術(shù),為競(jìng)技類游戲提供無撕裂、極速反應(yīng)的流暢體驗(yàn)。GO27Q24G 采用
XENSIV? DPS310/368 Pressure Sensor 2Go Kit :高精度壓力傳感解決方案
XENSIV? DPS310/368 Pressure Sensor 2Go Kit :高精度壓力傳感解決方案 一、引言 在電子設(shè)備設(shè)計(jì)中,壓力傳感器是一個(gè)至關(guān)重要的元件,廣泛應(yīng)用于氣象監(jiān)測(cè)
低成本TLI4971/TLE4971電流傳感器評(píng)估套件——MS2Go與S2Go
低成本TLI4971/TLE4971電流傳感器評(píng)估套件——MS2Go與S2Go 在電子工程師的日常工作中,電流傳感器的評(píng)估和應(yīng)用是一個(gè)重要的環(huán)節(jié)。今天我們要介紹的是英飛凌(Infineon
XENSIV? PAS CO2 Sensor2Go評(píng)估套件快速上手指南
XENSIV? PAS CO2 Sensor2Go評(píng)估套件快速上手指南 在電子工程領(lǐng)域,對(duì)于二氧化碳($CO_2$)傳感器的評(píng)估和應(yīng)用是一個(gè)重要的研究方向。英飛凌的XENSIV? PAS CO2
XENSIV? TLE4973電流傳感器2GO套件:低成本評(píng)估解決方案
XENSIV? TLE4973電流傳感器2GO套件:低成本評(píng)估解決方案 在電子工程師的日常工作中,快速且低成本地評(píng)估新的傳感器是一項(xiàng)重要需求。英飛凌的XENSIV? TLE4973電流傳感器2GO
KIT_XMC14_2GO開發(fā)板:功能特性與硬件解析
KIT_XMC14_2GO開發(fā)板:功能特性與硬件解析 在電子開發(fā)領(lǐng)域,一款性能出色且功能豐富的開發(fā)板對(duì)于工程師來說至關(guān)重要。今天,我們就來詳細(xì)探討一下KIT_XMC14_2GO開發(fā)板,它配備了英飛凌
探索TLE493D-P3XX-MS2GO 3D 2Go套件:開啟3D磁傳感器評(píng)估之旅
探索TLE493D-P3XX-MS2GO 3D 2Go套件:開啟3D磁傳感器評(píng)估之旅 在電子工程師的日常工作中,評(píng)估和開發(fā)磁傳感器是一項(xiàng)常見且重要的任務(wù)。英飛凌(Infineon
房產(chǎn)數(shù)據(jù)平臺(tái)安家go獲取地區(qū)列表數(shù)據(jù)的API接口
? 在房產(chǎn)數(shù)據(jù)平臺(tái)“安家go”中,獲取地區(qū)列表數(shù)據(jù)是一個(gè)常見需求,它允許開發(fā)者訪問全國(guó)或特定區(qū)域的行政區(qū)劃信息,如省、市、區(qū)縣等。這對(duì)于構(gòu)建房產(chǎn)搜索、數(shù)據(jù)分析或地圖應(yīng)用至關(guān)重要。本文將詳細(xì)介紹
一個(gè)帶有CYPD3177的自定義COOLDIM_PRG_BOARD,當(dāng)它翻轉(zhuǎn)時(shí),則沒有POWER_DRILL2GO,為什么?
我有一個(gè)帶有 CYPD3177 的自定義COOLDIM_PRG_BOARD 。 當(dāng)插入時(shí),它僅從POWER_DRILL2GO電源接收POWER_DRILL2GO信號(hào),并且 USB 電纜處于一個(gè)方向
發(fā)表于 05-26 07:24
通過XRES引腳POWER_DRILL2GO保持ic復(fù)位是否會(huì)降低ic的最終輸出?
我正在使用 CYPAS111A1 PAG1S 設(shè)計(jì) 65W USB C 型充電器。 我想通過控制器切斷 USB 輸出。 通過 XRES 引腳POWER_DRILL2GO保持 ic 復(fù)位是否會(huì)降低 ic 的最終輸出? 請(qǐng)予以支持。
發(fā)表于 05-26 06:44
如果 PD 合約不匹配,BCR 是否仍會(huì)打開 SINK_FET_EN POWER_DRILL2GO路徑?
BCR 具有 SINK_FET_EN 和 SAFE_PWR_EN 引腳來控制POWER_DRILL2GO消耗路徑。
如果 PD 合約不匹配,BCR 是否仍會(huì)打開 SINK_FET_EN POWER_DRILL2GO路徑?或者只打開 SAFE_PWR_EN POWER_DR
發(fā)表于 05-23 08:01
如何將CCG3上的“啟用固件更新”部分設(shè)置為“是”?
/Common-Errors-while-Programming-CCG3PA-usi...
如果我遇到這種情況,我應(yīng)該將“啟用固件更新”部分設(shè)置為“是”。
但是 CCG3 配置表沒有“啟用固件更新”部分。
我應(yīng)該如何將 CCG
發(fā)表于 05-12 07:52
從 Java 到 Go:面向?qū)ο蟮木奕伺c云原生的輕騎兵
Go 語言在 2009 年被 Google 推出,在創(chuàng)建之初便明確提出了“少即是多(Less is more)”的設(shè)計(jì)原則,強(qiáng)調(diào)“以工程效率為核心,用極簡(jiǎn)規(guī)則解決復(fù)雜問題”。它與 Java 語言生態(tài)
43KB-10系列固定衰減器Anritsu
GHz或40 GHz的頻率范圍。
低駐波比(SWR):典型值在1.15:1到1.50:1之間。
高精度衰減:衰減精度在±0.5 dB到±0.9 dB之間。
兼容性:支持SMA和3.5毫米連接器
發(fā)表于 03-11 09:40
Go 1.20將支持wrapping multiple errors
評(píng)論