codecs update
This commit is contained in:
@ -7157,94 +7157,6 @@ func (c Waypoint) WriteTo(w io.Writer) (n int64, err error) {
|
||||
return n, err
|
||||
}
|
||||
|
||||
// Int32VarIntVarIntArray a utility type for encoding/decoding packet.VarInt -> int32[packet.VarInt] slice.
|
||||
type Int32VarIntVarIntArray []int32
|
||||
|
||||
func (a Int32VarIntVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.VarInt(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *Int32VarIntVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.VarInt
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, int32(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// Int64VarLongVarIntArray a utility type for encoding/decoding packet.VarLong -> int64[packet.VarInt] slice.
|
||||
type Int64VarLongVarIntArray []int64
|
||||
|
||||
func (a Int64VarLongVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.VarLong(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *Int64VarLongVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.VarLong
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, int64(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// StringStringVarIntArray a utility type for encoding/decoding packet.String -> string[packet.VarInt] slice.
|
||||
type StringStringVarIntArray []string
|
||||
|
||||
@ -7252,9 +7164,8 @@ func (a StringStringVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.String(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
@ -7267,156 +7178,28 @@ func (a StringStringVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
|
||||
func (a *StringStringVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.String
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, string(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// StringVarIntArray a utility type for encoding/decoding packet.String -> string[packet.VarInt] slice.
|
||||
type StringVarIntArray []string
|
||||
|
||||
func (a StringVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
n += nn
|
||||
*a = make(StringStringVarIntArray, int(size))
|
||||
}
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.String(a[i]).WriteTo(w)
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
nn, err = (*packet.String)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *StringVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.String
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, string(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// Int8ByteVarIntArray a utility type for encoding/decoding packet.Byte -> int8[packet.VarInt] slice.
|
||||
type Int8ByteVarIntArray []int8
|
||||
|
||||
func (a Int8ByteVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.Byte(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *Int8ByteVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.Byte
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, int8(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// Int8VarIntArray a utility type for encoding/decoding packet.Byte -> int8[packet.VarInt] slice.
|
||||
type Int8VarIntArray []int8
|
||||
|
||||
func (a Int8VarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.Byte(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *Int8VarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.Byte
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, int8(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
@ -7428,9 +7211,8 @@ func (a Int64VarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.Long(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
@ -7443,68 +7225,28 @@ func (a Int64VarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
|
||||
func (a *Int64VarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.Long
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, int64(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// StringIdentifierVarIntArray a utility type for encoding/decoding packet.Identifier -> string[packet.VarInt] slice.
|
||||
type StringIdentifierVarIntArray []string
|
||||
|
||||
func (a StringIdentifierVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
n += nn
|
||||
*a = make(Int64VarIntArray, int(size))
|
||||
}
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.Identifier(a[i]).WriteTo(w)
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
nn, err = (*packet.Long)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *StringIdentifierVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.Identifier
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, string(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
@ -7516,9 +7258,8 @@ func (a UuidUUIDUUIDVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.UUID(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
@ -7531,23 +7272,309 @@ func (a UuidUUIDUUIDVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
|
||||
func (a *UuidUUIDUUIDVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
if nn, err := size.ReadFrom(r); err != nil {
|
||||
return nn, err
|
||||
} else {
|
||||
n += nn
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
*a = make(UuidUUIDUUIDVarIntArray, int(size))
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
var elem packet.UUID
|
||||
if nn, err := elem.ReadFrom(r); err != nil {
|
||||
nn, err = (*packet.UUID)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// Int32VarIntVarIntArray a utility type for encoding/decoding packet.VarInt -> int32[packet.VarInt] slice.
|
||||
type Int32VarIntVarIntArray []int32
|
||||
|
||||
func (a Int32VarIntVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.VarInt(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *Int32VarIntVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
*a = make(Int32VarIntVarIntArray, int(size))
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
nn, err = (*packet.VarInt)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// Int64VarLongVarIntArray a utility type for encoding/decoding packet.VarLong -> int64[packet.VarInt] slice.
|
||||
type Int64VarLongVarIntArray []int64
|
||||
|
||||
func (a Int64VarLongVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.VarLong(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *Int64VarLongVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
*a = make(Int64VarLongVarIntArray, int(size))
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
nn, err = (*packet.VarLong)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// Int8VarIntArray a utility type for encoding/decoding packet.Byte -> int8[packet.VarInt] slice.
|
||||
type Int8VarIntArray []int8
|
||||
|
||||
func (a Int8VarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.Byte(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *Int8VarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
*a = make(Int8VarIntArray, int(size))
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
nn, err = (*packet.Byte)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// StringVarIntArray a utility type for encoding/decoding packet.String -> string[packet.VarInt] slice.
|
||||
type StringVarIntArray []string
|
||||
|
||||
func (a StringVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.String(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *StringVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
*a = make(StringVarIntArray, int(size))
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
nn, err = (*packet.String)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// StringIdentifierVarIntArray a utility type for encoding/decoding packet.Identifier -> string[packet.VarInt] slice.
|
||||
type StringIdentifierVarIntArray []string
|
||||
|
||||
func (a StringIdentifierVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.Identifier(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *StringIdentifierVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
*a = make(StringIdentifierVarIntArray, int(size))
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
nn, err = (*packet.Identifier)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
|
||||
return n, err
|
||||
}
|
||||
|
||||
// Int8ByteVarIntArray a utility type for encoding/decoding packet.Byte -> int8[packet.VarInt] slice.
|
||||
type Int8ByteVarIntArray []int8
|
||||
|
||||
func (a Int8ByteVarIntArray) WriteTo(w io.Writer) (n int64, err error) {
|
||||
size := len(a)
|
||||
if nn, err := packet.VarInt(size).WriteTo(w); err != nil {
|
||||
return n, err
|
||||
}
|
||||
n += nn
|
||||
for i := 0; i < size; i++ {
|
||||
nn, err := packet.Byte(a[i]).WriteTo(w)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (a *Int8ByteVarIntArray) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
var size packet.VarInt
|
||||
nn, err := size.ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if size < 0 {
|
||||
return n, errors.New("array length less than zero")
|
||||
}
|
||||
|
||||
if cap(*a) >= int(size) {
|
||||
*a = (*a)[:int(size)]
|
||||
} else {
|
||||
*a = make(Int8ByteVarIntArray, int(size))
|
||||
}
|
||||
|
||||
for i := 0; i < int(size); i++ {
|
||||
nn, err = (*packet.Byte)(&(*a)[i]).ReadFrom(r)
|
||||
n += nn
|
||||
if err != nil {
|
||||
return n, err
|
||||
} else {
|
||||
n += nn
|
||||
}
|
||||
*a = append(*a, uuid.UUID(elem))
|
||||
}
|
||||
|
||||
return n, err
|
||||
|
Reference in New Issue
Block a user