package proto import "github.com/google/uuid" type LuxID struct{ uuid.UUID } const LUX_PROTO_ID_SIZE = 16 func NewLuxID() LuxID { return LuxID{uuid.New()} } func (id *LuxID) Read(rd *LuxBuffer) error { bytes, err := rd.ReadNext(16) if err != nil { return err } _id, err := uuid.FromBytes(bytes) if err != nil { return err } id.UUID = _id return nil } func (id *LuxID) Write(wd *LuxBuffer) { wd.WriteBytes(id.UUID[:]) } func (id *LuxID) String() string { return id.UUID.String() }