From 95159e5585762c06c654945070ba54262b7dcec9 Mon Sep 17 00:00:00 2001 From: Jeff Halter <868228+jhalter@users.noreply.github.com> Date: Sat, 15 Jun 2024 11:13:16 -0700 Subject: Refactoring and cleanup * Split CLI client into separate project * Convert more functions to follow common Golang idioms e.g io.Reader, io.Writer * Use ldflags for versioning * Misc cleanup and simplification --- hotline/time.go | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'hotline/time.go') 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, + )) } -- cgit