From de358e641c8dd417c465261fe26d1dbc37e8bdf9 Mon Sep 17 00:00:00 2001 From: fiatjaf Date: Wed, 5 Mar 2025 22:37:39 -0300 Subject: [PATCH] use bytes.Equal() instead of slices.Equal() on simdjson readers. --- event_simdjson.go | 16 ++++++++-------- filter_simdjson.go | 16 ++++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/event_simdjson.go b/event_simdjson.go index 33ff197..4fc3bf9 100644 --- a/event_simdjson.go +++ b/event_simdjson.go @@ -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 { diff --git a/filter_simdjson.go b/filter_simdjson.go index e46170d..69fabd4 100644 --- a/filter_simdjson.go +++ b/filter_simdjson.go @@ -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)