func()

in macho.go [88:114]


func (f *machoFile) goSymbols(stdlib bool) ([]string, error) {
	tab, err := f.pclnTable()
	if err != nil {
		return nil, err
	}
	imports := make([]string, 0, len(f.objFile.Symtab.Syms))
	for _, sym := range f.objFile.Symtab.Syms {
		if sym.Sect == 0 || int(sym.Sect) > len(f.objFile.Sections) {
			continue
		}
		sect := f.objFile.Sections[sym.Sect-1]
		if sect.Seg != "__TEXT" || sect.Name != "__text" {
			continue
		}
		if strings.HasPrefix(sym.Name, "type..") {
			continue
		}
		if !stdlib && isStdlib(sym.Name, sym.Value, tab) {
			continue
		}
		imports = append(imports, sym.Name)
	}
	if len(imports) == 0 {
		imports = nil
	}
	return imports, nil
}