refactor unique() to be faster.

This commit is contained in:
fiatjaf
2023-11-30 01:38:48 -03:00
parent 82ad525b91
commit 8a2fa69cb9
3 changed files with 13 additions and 17 deletions

View File

@@ -14,6 +14,7 @@ import (
"time"
"github.com/microcosm-cc/bluemonday"
"golang.org/x/exp/slices"
"mvdan.cc/xurls/v2"
"github.com/nbd-wtf/go-nostr"
@@ -381,15 +382,15 @@ func previewNotesFormatting(input string) string {
}
func unique(strSlice []string) []string {
keys := make(map[string]bool)
list := []string{}
for _, entry := range strSlice {
if _, ok := keys[entry]; !ok {
keys[entry] = true
list = append(list, entry)
slices.Sort(strSlice)
j := 0
for i := 1; i < len(strSlice); i++ {
if strSlice[j] != strSlice[i] {
j++
strSlice[j] = strSlice[i]
}
}
return list
return strSlice[:j+1]
}
func trimProtocol(relay string) string {