首頁 > 後端開發 > Golang > 主體

如何配置 vscode 以顯示 go 中不必要的(過度指定的)泛型?

PHPz
發布: 2024-02-13 10:50:09
轉載
639 人瀏覽過

如何配置 vscode 以显示 go 中不必要的(过度指定的)泛型?

php小編百草為您介紹如何設定VSCode以顯示Go中不必要的泛型。隨著Go語言的發展,泛型成為了開發者們關注的焦點。然而,在編碼過程中,有時我們會過度指定泛型,導致程式碼冗長且難以維護。為了解決這個問題,VSCode提供了一些設定選項,可以幫助我們在編輯器中顯示不必要的泛型,使程式碼更加簡潔和易讀。以下將為您詳細介紹如何設定VSCode以顯示不必要的泛型,讓您的Go開發更有效率且便利。

問題內容

在下面的程式碼中

package main

import "fmt"

func test[A, B any](a A, b B) {
    fmt.Printf("a: %v, b: %v", a, b)
}

func main() {
    test[string, int]("test", 1)
}

登入後複製

呼叫測試方法時的明確類型規格是不必要的並且過度指定。呼叫 test("test", 1") 就足夠了,因為可以從參數推斷出類型。

是否可以配置 VSCode 來指示這一點?或是有沒有一個 linter 可以回報這個問題? 我不知何故記得我曾看到 VSCode 將不必要的類型規範顯示為灰色文本,但要么我搞亂了我的配置,要么這個功能消失了。

這對於更高級的情況非常有幫助,特別是因為 go 中的類型推斷正在穩步改進,並且為較舊的 go 版本編寫的程式碼可能會得到簡化。

根據文件設定

    "gopls": {
        "ui.diagnostic.analyses": {
            "infertypeargs": true
        }
    }
登入後複製

應該會導致未使用類型的視覺指示。但這對我來說並沒有出現。

解決方法

目前,此分析器只能透過不必要的類型參數內的程式碼操作使用:

x/tools/gopls:infertypeargs 不再產生診斷訊息 #63821 正在追蹤缺乏診斷訊息。此問題解決後,診斷訊息應重新出現在 VS Code 中。

infertypeargs 預設情況下處於啟用狀態,因此不需要進行設定。

以上是如何配置 vscode 以顯示 go 中不必要的(過度指定的)泛型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!