gpt4 book ai didi

gofmt 保留换行符

转载 作者:IT王子 更新时间:2023-10-29 02:32:20 25 4
gpt4 key购买 nike

当使用 gofmt 格式化 go 源代码时,它会保留换行符,以便您可以将项目组合在一起。我对这实际上是如何实现的很感兴趣。我试着查看 github repo golang/go 中的源代码,但无法立即找到它。如果你看https://github.com/golang/go/blob/master/src/go/printer/printer.go#L979 :

// intersperse extra newlines if present in the source

打印机如何知道源代码中存在那些额外的换行符?有人能指出我正确的方向吗?

最佳答案

与大多数词法分析器不同,go 词法分析器包括经常被编译器的词法分析器删除或省略的标记。词法分析器发出的标记流包括注释标记、隐含的分号、换行符、换页符 (FF) 和其他空格。这允许使用相同的标记流来重新生成源代码,并创建编译器所需的结构,例如 AST。

关于gofmt 保留换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45631563/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com