X-Git-Url: https://git.r.bdr.sh/rbdr/mobius/blobdiff_plain/29f329aedcdcf4e07a6dc3d9161439dd35ecfe11..6dabc6b44f27f0aa936a7f9518aa6bc1243d9001:/hotline/time.go?ds=inline diff --git a/hotline/time.go b/hotline/time.go index 3b87864..edc700d 100644 --- a/hotline/time.go +++ b/hotline/time.go @@ -2,12 +2,13 @@ package hotline import ( "encoding/binary" + "slices" "time" ) // toHotlineTime converts a time.Time to the 8 byte Hotline time format: // Year (2 bytes), milliseconds (2 bytes) and seconds (4 bytes) -func toHotlineTime(t time.Time) (b []byte) { +func toHotlineTime(t time.Time) (b [8]byte) { yearBytes := make([]byte, 2) secondBytes := make([]byte, 4) @@ -17,9 +18,9 @@ func toHotlineTime(t time.Time) (b []byte) { binary.BigEndian.PutUint16(yearBytes, uint16(t.Year())) binary.BigEndian.PutUint32(secondBytes, uint32(t.Sub(startOfYear).Seconds())) - b = append(b, yearBytes...) - b = append(b, []byte{0, 0}...) - b = append(b, secondBytes...) - - return b + return [8]byte(slices.Concat( + yearBytes, + []byte{0, 0}, + secondBytes, + )) }