首頁  >  文章  >  後端開發  >  為什麼 Go 解析器未偵測到結構類型的文檔註解?

為什麼 Go 解析器未偵測到結構類型的文檔註解?

Susan Sarandon
Susan Sarandon原創
2024-11-07 04:39:02605瀏覽

Why are Doc Comments for Struct Types Not Detected by the Go Parser?

Go 解析器未偵測到結構型別的文件註解

問題是為什麼結構類型的文件註解未被偵測到Go 解析器和ast 包。提供的程式碼範例使用解析器迭代 AST 並列印出 func、類型和欄位聲明的文件。但是,結構類型的文檔並未列印。

答案解釋說,結構類型的文檔附加到 AST 中的 GenDecl 節點,而不是 TypeSpec 節點。這是因為 AST 將各個結構類型定義視為帶括號的類型定義版本的「收縮」。 go/doc 套件透過產生一個假的 GenDecl 節點並將其傳遞給 readType 函數(如果沒有與結構聲明相關的文件)來處理這種情況。

答案也解釋了為什麼這不是首選方法解析文件註釋,建議使用 go/doc 套件。

以上是為什麼 Go 解析器未偵測到結構類型的文檔註解?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn