Package format

import "go/format"
Overview
Index
Examples

Overview ▾

包格式实现Go源代码的标准格式.

请注意,Go源代码的格式会随时间而变化,因此依赖一致格式的工具应执行gofmt二进制文件的特定版本,而不要使用此软件包. 这样,格式将保持稳定,并且无需在gofmt每次更改时重新编译工具.

例如,根据每个开发人员使用的Go版本,直接使用此软件包的提交前检查的行为会有所不同,从而导致检查固有地脆弱.

func Node 1.1

func Node(dst io.Writer, fset *token.FileSet, node interface{}) error

节点以规范的gofmt样式格式化节点,并将结果写入dst.

节点类型必须为* ast.File,* printer.CommentedNode,[] ast.Decl,[] ast.Stmt,或与ast.Expr,ast.Decl,ast.Spec或ast.Stmt兼容的分配. 节点不修改节点. 不会对表示部分源文件的节点的导入进行排序(例如,如果该节点不是* ast.File或* printer.CommentedNode不包装* ast.File的节点).

该函数可能会提早返回(在写入整个结果之前)并返回格式错误,例如由于AST错误.

Example

(6 + 2*3) / 4

func Source 1.1

func Source(src []byte) ([]byte, error)

源格式为标准gofmt格式的src,并返回结果或(I / O或语法)错误. src应该是语法上正确的Go源文件,或者是Go声明或语句的列表.

如果src是部分源文件,则将src的前导和尾随空格应用于结果(以使其与src具有相同的前导和尾随空格),并且将结果缩进与src的第一行相同的数量包含代码. 导入未针对部分源文件进行排序.

by  ICOPY.SITE