func (s *Src) Filter(r *ws.Res) bool { if r.Flag&ws.FlagDir == 0 { if filepath.Ext(r.Name) == ".go" { r.Flag |= FlagGo } return false } if r.Parent.Flag&FlagGo != 0 { if r.Name != "testdata" && r.Name[0] != '_' { r.Flag |= FlagGo } return false } if r.Name == "pkg" || r.Name == "src" { for _, id := range s.srcids { if r.Id == id { r.Flag |= FlagGo break } } } return false }