use bytes.Equal() instead of slices.Equal() on simdjson readers.

This commit is contained in:
fiatjaf
2025-03-05 22:37:39 -03:00
parent 535f62cec9
commit de358e641c
2 changed files with 16 additions and 16 deletions

View File

@@ -1,8 +1,8 @@
package nostr
import (
"bytes"
"fmt"
"slices"
"github.com/minio/simdjson-go"
)
@@ -32,23 +32,23 @@ func (event *Event) UnmarshalSIMD(iter *simdjson.Iter) error {
}
switch {
case slices.Equal(name, attrId):
case bytes.Equal(name, attrId):
event.ID, err = iter.String()
case slices.Equal(name, attrPubkey):
case bytes.Equal(name, attrPubkey):
event.PubKey, err = iter.String()
case slices.Equal(name, attrContent):
case bytes.Equal(name, attrContent):
event.Content, err = iter.String()
case slices.Equal(name, attrSig):
case bytes.Equal(name, attrSig):
event.Sig, err = iter.String()
case slices.Equal(name, attrCreatedAt):
case bytes.Equal(name, attrCreatedAt):
var ts uint64
ts, err = iter.Uint()
event.CreatedAt = Timestamp(ts)
case slices.Equal(name, attrKind):
case bytes.Equal(name, attrKind):
var kind uint64
kind, err = iter.Uint()
event.Kind = int(kind)
case slices.Equal(name, attrTags):
case bytes.Equal(name, attrTags):
var arr *simdjson.Array
arr, err = iter.Array(nil)
if err != nil {

View File

@@ -1,8 +1,8 @@
package nostr
import (
"bytes"
"fmt"
"slices"
"github.com/minio/simdjson-go"
)
@@ -33,15 +33,15 @@ func (filter *Filter) UnmarshalSIMD(iter *simdjson.Iter) error {
}
switch {
case slices.Equal(name, attrIds):
case bytes.Equal(name, attrIds):
if arr, err = iter.Array(arr); err == nil {
filter.IDs, err = arr.AsString()
}
case slices.Equal(name, attrAuthors):
case bytes.Equal(name, attrAuthors):
if arr, err = iter.Array(arr); err == nil {
filter.Authors, err = arr.AsString()
}
case slices.Equal(name, attrKinds):
case bytes.Equal(name, attrKinds):
if arr, err = iter.Array(arr); err == nil {
i := arr.Iter()
filter.Kinds = make([]int, 0, 6)
@@ -57,19 +57,19 @@ func (filter *Filter) UnmarshalSIMD(iter *simdjson.Iter) error {
}
}
}
case slices.Equal(name, attrSearch):
case bytes.Equal(name, attrSearch):
filter.Search, err = iter.String()
case slices.Equal(name, attrSince):
case bytes.Equal(name, attrSince):
var tsu uint64
tsu, err = iter.Uint()
ts := Timestamp(tsu)
filter.Since = &ts
case slices.Equal(name, attrUntil):
case bytes.Equal(name, attrUntil):
var tsu uint64
tsu, err = iter.Uint()
ts := Timestamp(tsu)
filter.Until = &ts
case slices.Equal(name, attrLimit):
case bytes.Equal(name, attrLimit):
var limit uint64
limit, err = iter.Uint()
filter.Limit = int(limit)