mirror of
https://github.com/nbd-wtf/go-nostr.git
synced 2025-03-29 11:12:04 +01:00
simplifications in number of lines of code for serialization
This commit is contained in:
parent
771a2b6218
commit
c6b4867dd4
29
event.go
29
event.go
@ -88,23 +88,16 @@ func (evt *Event) Serialize() []byte {
|
||||
// so the order is kept. See NIP-01
|
||||
ser := make([]byte, 0)
|
||||
|
||||
// version: 0
|
||||
ser = append(ser, []byte{'[', '0', ','}...)
|
||||
|
||||
// pubkey
|
||||
ser = append(ser, '"')
|
||||
ser = append(ser, []byte(evt.PubKey)...)
|
||||
ser = append(ser, []byte{'"', ','}...)
|
||||
|
||||
// created_at
|
||||
ser = append(ser, []byte(fmt.Sprintf("%d", evt.CreatedAt.Unix()))...)
|
||||
ser = append(ser, ',')
|
||||
|
||||
// kind
|
||||
ser = append(ser, []byte(fmt.Sprintf("%d,", evt.Kind))...)
|
||||
|
||||
// tags
|
||||
ser = append(ser, '[')
|
||||
// the header portion is easy to serialize
|
||||
// [0,"pubkey",created_at,kind,[
|
||||
ser = append(ser, []byte(
|
||||
fmt.Sprintf(
|
||||
"[0,\"%s\",%d,%d,[",
|
||||
evt.PubKey,
|
||||
evt.CreatedAt.Unix(),
|
||||
evt.Kind,
|
||||
))...)
|
||||
// tags need to be escaped in general.
|
||||
for i, tag := range evt.Tags {
|
||||
if i > 0 {
|
||||
ser = append(ser, ',')
|
||||
@ -120,7 +113,7 @@ func (evt *Event) Serialize() []byte {
|
||||
}
|
||||
ser = append(ser, []byte{']', ','}...)
|
||||
|
||||
// content
|
||||
// content needs to be escaped in general as it is user generated.
|
||||
ser = quoteEscapeString(ser, evt.Content)
|
||||
ser = append(ser, ']')
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user