欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何查看go語法樹

本篇內(nèi)容主要講解“如何查看go語法樹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“如何查看go語法樹”吧!

創(chuàng)新互聯(lián)專注于可克達(dá)拉網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供可克達(dá)拉營銷型網(wǎng)站建設(shè),可克達(dá)拉網(wǎng)站制作、可克達(dá)拉網(wǎng)頁設(shè)計、可克達(dá)拉網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造可克達(dá)拉網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供可克達(dá)拉網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

        我們知道,golang 的源碼經(jīng)過詞法分析和語法分析后,可以得到抽象語法樹ast,用戶可以遍歷抽象語法樹實現(xiàn)源碼層面的修改。 golang工具集很多都是在語法樹的基礎(chǔ)上進(jìn)行的比如go fmt、goimport、go vet等等。

       不太熟悉golang或者不太熟悉語法樹的同學(xué)來說,一顆語法樹包含哪些東西?語法樹的結(jié)構(gòu)是什么樣子?源代碼的每一部分如何與語法樹相對應(yīng),是大家疑問比較密集的地方。于是乎,筆者造了個輪子,可視化的方式展示語法樹,一鍵運行直接在瀏覽器打開生成的svg格式圖片。顏色區(qū)分比較重要的語法結(jié)構(gòu)。并且提供圖利。

例子:

比如我們要分析下面源碼

package main
import (  "fmt"  "github.com/xiazemin/golang/ast/ast_graph/exp/multi")
func main()  {  a:=1  b:=2  fmt.Println(a+b,add(a,b),multi.Multi(a,b),devide(a,b))
}
func devide(i,j int)int  {  return i/j}

我們可以這么做

package main
import "github.com/xiazemin/golang/ast/ast_graph/gen"
func main() {  path := "/Users/didi/goLang/src/github.com/xiazemin/golang/ast/ast_graph/exp/main.go"  dpath := "/Users/didi/goLang/src/github.com/xiazemin/golang/ast/ast_graph/"  gen.GenSvg(path, dpath, "tree")}

其中path是我們的源碼路徑,dpath是生成圖片路徑

到此,相信大家對“如何查看go語法樹”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

新聞名稱:如何查看go語法樹
路徑分享:http://chinadenli.net/article26/jiiijg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、網(wǎng)站維護(hù)用戶體驗、Google標(biāo)簽優(yōu)化、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)