Skip to content

Commit 5de948d

Browse files
Zach Vonleralessio-perugini
authored andcommitted
Improvement from review
Co-authored-by: Alessio Perugini <alessioper.98@gmail.com>
1 parent 21ee5f8 commit 5de948d

File tree

1 file changed

+19
-25
lines changed

1 file changed

+19
-25
lines changed

commands/lib/search.go

Lines changed: 19 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -105,31 +105,25 @@ func matcherFromQueryString(query string) func(*librariesindex.Library) bool {
105105
return strings.Join(strs, " ")
106106
}
107107

108-
qualifiers := []struct {
109-
key string
110-
extractor func(*librariesindex.Library) string
111-
}{
112-
// The library name comes from the Library object.
113-
{"name", func(lib *librariesindex.Library) string { return lib.Name }},
114-
115-
// All other values come from the latest Release.
116-
{"architectures", func(lib *librariesindex.Library) string { return joinedStrings(lib.Latest.Architectures) }},
117-
{"author", func(lib *librariesindex.Library) string { return lib.Latest.Author }},
118-
{"category", func(lib *librariesindex.Library) string { return lib.Latest.Category }},
119-
{"dependencies", func(lib *librariesindex.Library) string {
120-
names := []string{}
121-
for _, dep := range lib.Latest.Dependencies {
122-
names = append(names, dep.GetName())
123-
}
124-
return joinedStrings(names)
125-
}},
126-
{"maintainer", func(lib *librariesindex.Library) string { return lib.Latest.Maintainer }},
127-
{"paragraph", func(lib *librariesindex.Library) string { return lib.Latest.Paragraph }},
128-
{"sentence", func(lib *librariesindex.Library) string { return lib.Latest.Sentence }},
129-
{"types", func(lib *librariesindex.Library) string { return joinedStrings(lib.Latest.Types) }},
130-
{"version", func(lib *librariesindex.Library) string { return lib.Latest.Version.String() }},
131-
{"website", func(lib *librariesindex.Library) string { return lib.Latest.Website }},
132-
}
108+
var qualifiers map[string]func(lib *librariesindex.Library) string = map[string]func(lib *librariesindex.Library) string{
109+
"name": func(lib *librariesindex.Library) string { return lib.Name },
110+
"architectures": func(lib *librariesindex.Library) string { return strings.Join(lib.Latest.Architectures, " ") },
111+
"author": func(lib *librariesindex.Library) string { return lib.Latest.Author },
112+
"category": func(lib *librariesindex.Library) string { return lib.Latest.Category },
113+
"dependencies": func(lib *librariesindex.Library) string {
114+
names := make([]string, len(lib.Latest.Dependencies))
115+
for i, dep := range lib.Latest.Dependencies {
116+
names[i] = dep.GetName()
117+
}
118+
return strings.Join(names, " ")
119+
},
120+
"maintainer": func(lib *librariesindex.Library) string { return lib.Latest.Maintainer },
121+
"paragraph": func(lib *librariesindex.Library) string { return lib.Latest.Paragraph },
122+
"sentence": func(lib *librariesindex.Library) string { return lib.Latest.Sentence },
123+
"types": func(lib *librariesindex.Library) string { return strings.Join(lib.Latest.Types, " ") },
124+
"version": func(lib *librariesindex.Library) string { return lib.Latest.Version.String() },
125+
"website": func(lib *librariesindex.Library) string { return lib.Latest.Website },
126+
}
133127

134128
queryTerms := matcherTokensFromQueryString(query)
135129

0 commit comments

Comments
 (0)