tools: golang.org/x/tools/go/internal/cgo Index | Files

package cgo

import "golang.org/x/tools/go/internal/cgo"

Index

Package Files

cgo.go cgo_pkgconfig.go

func ProcessFiles Uses

func ProcessFiles(bp *build.Package, fset *token.FileSet, DisplayPath func(path string) string, mode parser.Mode) ([]*ast.File, error)

ProcessFiles invokes the cgo preprocessor on bp.CgoFiles, parses the output and returns the resulting ASTs.

func Run Uses

func Run(bp *build.Package, pkgdir, tmpdir string, useabs bool) (files, displayFiles []string, err error)

Run invokes the cgo preprocessor on bp.CgoFiles and returns two lists of files: the resulting processed files (in temporary directory tmpdir) and the corresponding names of the unprocessed files.

Run is adapted from (*builder).cgo in $GOROOT/src/cmd/go/build.go, but these features are unsupported: Objective C, CGOPKGPATH, CGO_FLAGS.

If useabs is set to true, absolute paths of the bp.CgoFiles will be passed in to the cgo preprocessor. This in turn will set the // line comments referring to those files to use absolute paths. This is needed for go/packages using the legacy go list support so it is able to find the original files.

Package cgo imports 13 packages (graph) and is imported by 3 packages. Updated 2019-07-18. Refresh now. Tools for package owners.