initial commit
This commit is contained in:
36
utils.go
Normal file
36
utils.go
Normal file
@ -0,0 +1,36 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"sort"
|
||||
|
||||
"git.tordarus.net/nyaanime/model"
|
||||
"git.tordarus.net/tordarus/tprint"
|
||||
)
|
||||
|
||||
func Map2Table[K comparable](title string, m map[K]int) string {
|
||||
table := tprint.NewTable(title, "priority")
|
||||
|
||||
entries := make([]model.Pair[K, int], 0, len(m))
|
||||
for name, priority := range m {
|
||||
entries = append(entries, model.Pair[K, int]{First: name, Second: priority})
|
||||
}
|
||||
sort.Slice(entries, func(i, j int) bool { return entries[i].Second > entries[j].Second })
|
||||
|
||||
for _, entry := range entries {
|
||||
table.AddRow(entry.First, entry.Second)
|
||||
}
|
||||
|
||||
return table.String()
|
||||
}
|
||||
|
||||
func GetAnimeEpisodesSortFunc(s []model.AnimeEpisode) func(i, j int) bool {
|
||||
return func(i, j int) bool {
|
||||
if s[i].Anime.ID < s[j].Anime.ID {
|
||||
return true
|
||||
} else if s[i].Anime.ID > s[j].Anime.ID {
|
||||
return false
|
||||
} else {
|
||||
return s[i].Episode <= s[j].Episode
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user