analysis

package
v0.0.0-...-ec4e034 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 14, 2015 License: BSD-2-Clause Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BoolValue

func BoolValue(expr ast.Expr, info *types.Info) (bool, bool)

func EscapingObjects

func EscapingObjects(n ast.Node, info *types.Info) map[*types.Var]bool

func HasBreak

func HasBreak(n ast.Node) bool

func HasSideEffect

func HasSideEffect(n ast.Node, info *types.Info) bool

Types

type FuncInfo

type FuncInfo struct {
	HasDefer      bool
	Flattened     map[ast.Node]bool
	Blocking      map[ast.Node]bool
	GotoLabel     map[*types.Label]bool
	LocalCalls    map[*types.Func][][]ast.Node
	ContinueStmts []continueStmt
	// contains filtered or unexported fields
}

func (*FuncInfo) Visit

func (c *FuncInfo) Visit(node ast.Node) ast.Visitor

type Info

type Info struct {
	*types.Info
	Pkg           *types.Package
	IsBlocking    func(*types.Func) bool
	HasPointer    map[*types.Var]bool
	FuncDeclInfos map[*types.Func]*FuncInfo
	FuncLitInfos  map[*ast.FuncLit]*FuncInfo
	InitFuncInfo  *FuncInfo
	// contains filtered or unexported fields
}

func AnalyzePkg

func AnalyzePkg(files []*ast.File, fileSet *token.FileSet, typesInfo *types.Info, typesPkg *types.Package, isBlocking func(*types.Func) bool) *Info

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL