文字
分享

  • import "go/build"

  • 概述

  • 索引

概述

Package build 收集有关 Go 包的信息。

Go Path

Go path 是包含 Go 源代码的目录树列表。它被咨询解决在标准 Go 树中找不到的导入。默认路径是 GOPATH 环境变量的值,被解释为适合于操作系统的路径列表(在 Unix 上,变量是冒号分隔的字符串;在 Windows 上是分号分隔的字符串;在 Plan 9上,是一个列表)。

Go path 中列出的每个目录必须具有规定的结构:

src/ 目录保存源代码。'src' 下面的路径决定了导入路径或可执行文件的名称。

pkg/directory 保存已安装的软件包对象。与 Go 树一样,每个目标操作系统和体系结构对都有自己的 pkg 子目录(pkg/GOOS_GOARCH)。

如果 DIR 是 Go 路径中列出的目录,那么在 DIR/src/foo/bar 中包含源文件的包可以作为“foo/bar”导入,并将其编译形式安装到“DIR/pkg/GOOS_GOARCH/foo/bar.a“(或者,对于gccgo,”DIR/pkg/gccgo/foo/libbar.a“)。

bin/directory 保存编译的命令。每个命令都是为其源目录命名的,但仅使用最后一个元素,而不是整个路径。也就是说,DIR/src/foo/quux 中源代码的命令安装在DIR/bin/quux中,而不是 DIR/bin/foo/quux 中。foo/ 被剥离,以便您可以将 DIR/bin 添加到 PATH 以获取已安装的命令。

  • func FilterPackage(pkg *Package, f Filter) bool

  • func Fprint(w io.Writer, fset *token.FileSet, x interface{}, f FieldFilter) error

  • func Inspect(node Node, f func(Node) bool)

  • func IsExported(name string) bool

  • func NotNilFilter(_ string, v reflect.Value) bool

  • func PackageExports(pkg *Package) bool

  • func Print(fset *token.FileSet, x interface{}) error

  • func SortImports(fset *token.FileSet, f *File)

  • func Walk(v Visitor, node Node)

  • type ArrayType

  • func (x *ArrayType) End() token.Pos

  • func (x *ArrayType) Pos() token.Pos

  • type AssignStmt

  • func (s *AssignStmt) End() token.Pos

  • func (s *AssignStmt) Pos() token.Pos

  • type BadDecl

  • func (d *BadDecl) End() token.Pos

  • func (d *BadDecl) Pos() token.Pos

  • type BadExpr

  • func (x *BadExpr) End() token.Pos

  • func (x *BadExpr) Pos() token.Pos

  • type BadStmt

  • func (s *BadStmt) End() token.Pos

  • func (s *BadStmt) Pos() token.Pos

  • type BasicLit

  • func (x *BasicLit) End() token.Pos

  • func (x *BasicLit) Pos() token.Pos

  • type BinaryExpr

  • func (x *BinaryExpr) End() token.Pos

  • func (x *BinaryExpr) Pos() token.Pos

  • type BlockStmt

  • func (s *BlockStmt) End() token.Pos

  • func (s *BlockStmt) Pos() token.Pos

  • type BranchStmt

  • func (s *BranchStmt) End() token.Pos

  • func (s *BranchStmt) Pos() token.Pos

  • type CallExpr

  • func (x *CallExpr) End() token.Pos

  • func (x *CallExpr) Pos() token.Pos

  • type CaseClause

  • func (s *CaseClause) End() token.Pos

  • func (s *CaseClause) Pos() token.Pos

  • type ChanDir

  • type ChanType

  • func (x *ChanType) End() token.Pos

  • func (x *ChanType) Pos() token.Pos

  • type CommClause

  • func (s *CommClause) End() token.Pos

  • func (s *CommClause) Pos() token.Pos

  • type Comment

  • func (c *Comment) End() token.Pos

  • func (c *Comment) Pos() token.Pos

  • type CommentGroup

  • func (g *CommentGroup) End() token.Pos

  • func (g *CommentGroup) Pos() token.Pos

  • func (g *CommentGroup) Text() string

  • type CommentMap

  • func NewCommentMap(fset *token.FileSet, node Node, comments []*CommentGroup) CommentMap

  • func (cmap CommentMap) Comments() []*CommentGroup

  • func (cmap CommentMap) Filter(node Node) CommentMap

  • func (cmap CommentMap) String() string

  • func (cmap CommentMap) Update(old, new Node) Node

  • type CompositeLit

  • func (x *CompositeLit) End() token.Pos

  • func (x *CompositeLit) Pos() token.Pos

  • type Decl

  • type DeclStmt

  • func (s *DeclStmt) End() token.Pos

  • func (s *DeclStmt) Pos() token.Pos

  • type DeferStmt

  • func (s *DeferStmt) End() token.Pos

  • func (s *DeferStmt) Pos() token.Pos

  • type Ellipsis

  • func (x *Ellipsis) End() token.Pos

  • func (x *Ellipsis) Pos() token.Pos

  • type EmptyStmt

  • func (s *EmptyStmt) End() token.Pos

  • func (s *EmptyStmt) Pos() token.Pos

  • type Expr

  • type ExprStmt

  • func (s *ExprStmt) End() token.Pos

  • func (s *ExprStmt) Pos() token.Pos

  • type Field

  • func (f *Field) End() token.Pos

  • func (f *Field) Pos() token.Pos

  • type FieldFilter

  • type FieldList

  • func (f *FieldList) End() token.Pos

  • func (f *FieldList) NumFields() int

  • func (f *FieldList) Pos() token.Pos

  • type File

  • func MergePackageFiles(pkg *Package, mode MergeMode) *File

  • func (f *File) End() token.Pos

  • func (f *File) Pos() token.Pos

  • type Filter

  • type ForStmt

  • func (s *ForStmt) End() token.Pos

  • func (s *ForStmt) Pos() token.Pos

  • type FuncDecl

  • func (d *FuncDecl) End() token.Pos

  • func (d *FuncDecl) Pos() token.Pos

  • type FuncLit

  • func (x *FuncLit) End() token.Pos

  • func (x *FuncLit) Pos() token.Pos

  • type FuncType

  • func (x *FuncType) End() token.Pos

  • func (x *FuncType) Pos() token.Pos

  • type GenDecl

  • func (d *GenDecl) End() token.Pos

  • func (d *GenDecl) Pos() token.Pos