Documentation
¶
Index ¶
- Constants
- func ReadBigInt16(b *[]byte) (int16, bool)
- func ReadBigInt24(b *[]byte) (int32, bool)
- func ReadBigInt32(b *[]byte) (int32, bool)
- func ReadBigInt64(b *[]byte) (int64, bool)
- func ReadBigUint16(b *[]byte) (uint16, bool)
- func ReadBigUint24(b *[]byte) (uint32, bool)
- func ReadBigUint32(b *[]byte) (uint32, bool)
- func ReadBigUint64(b *[]byte) (uint64, bool)
- func ReadByte(b *[]byte) (byte, bool)
- func ReadBytes(b *[]byte, n int) []byte
- func ReadInt16(b *[]byte) (int16, bool)
- func ReadInt24(b *[]byte) (int32, bool)
- func ReadInt32(b *[]byte) (int32, bool)
- func ReadInt64(b *[]byte) (int64, bool)
- func ReadInt8(b *[]byte) (int8, bool)
- func ReadLittleInt16(b *[]byte) (int16, bool)
- func ReadLittleInt24(b *[]byte) (int32, bool)
- func ReadLittleInt32(b *[]byte) (int32, bool)
- func ReadLittleInt64(b *[]byte) (int64, bool)
- func ReadLittleUint16(b *[]byte) (uint16, bool)
- func ReadLittleUint24(b *[]byte) (uint32, bool)
- func ReadLittleUint32(b *[]byte) (uint32, bool)
- func ReadLittleUint64(b *[]byte) (uint64, bool)
- func ReadReaderBytes(in io.Reader, n int) ([]byte, error)
- func ReadReaderUint16(in io.Reader) (uint16, error)
- func ReadReaderUint24(in io.Reader) (uint32, error)
- func ReadReaderUint32(in io.Reader) (uint32, error)
- func ReadReaderUint8(in io.Reader) (uint8, error)
- func ReadUint16(b *[]byte) (uint16, bool)
- func ReadUint24(b *[]byte) (uint32, bool)
- func ReadUint32(b *[]byte) (uint32, bool)
- func ReadUint64(b *[]byte) (uint64, bool)
- func ReadUint8(b *[]byte) (uint8, bool)
- func Skip(b *[]byte, n int) bool
- func SkipReader(in io.Reader, n int) error
- func WriteBigInt16(b *[]byte, v int16)
- func WriteBigInt24(b *[]byte, v int32)
- func WriteBigInt32(b *[]byte, v int32)
- func WriteBigInt64(b *[]byte, v int64)
- func WriteBigUint16(b *[]byte, v uint16)
- func WriteBigUint24(b *[]byte, v uint32)
- func WriteBigUint32(b *[]byte, v uint32)
- func WriteBigUint64(b *[]byte, v uint64)
- func WriteByte(b *[]byte, v byte)
- func WriteBytes(b *[]byte, v ...byte)
- func WriteInt16(b *[]byte, v int16)
- func WriteInt24(b *[]byte, v int32)
- func WriteInt32(b *[]byte, v int32)
- func WriteInt64(b *[]byte, v int64)
- func WriteInt8(b *[]byte, v int8)
- func WriteLittleInt16(b *[]byte, v int16)
- func WriteLittleInt24(b *[]byte, v int32)
- func WriteLittleInt32(b *[]byte, v int32)
- func WriteLittleInt64(b *[]byte, v int64)
- func WriteLittleUint16(b *[]byte, v uint16)
- func WriteLittleUint24(b *[]byte, v uint32)
- func WriteLittleUint32(b *[]byte, v uint32)
- func WriteLittleUint64(b *[]byte, v uint64)
- func WriteUint16(b *[]byte, v uint16)
- func WriteUint24(b *[]byte, v uint32)
- func WriteUint32(b *[]byte, v uint32)
- func WriteUint64(b *[]byte, v uint64)
- func WriteUint8(b *[]byte, v uint8)
- func WriteWriterBytes(in io.Writer, bytes ...byte) error
- func WriteWriterUint16(in io.Writer, v uint16) error
- func WriteWriterUint24(in io.Writer, v uint32) error
- func WriteWriterUint32(in io.Writer, v uint32) error
- func WriteWriterUint8(in io.Writer, v uint8) error
- type Buffer
- func (b *Buffer) Bytes() []byte
- func (b *Buffer) BytesPointer() *[]byte
- func (b *Buffer) Empty() bool
- func (b *Buffer) ReadBytes(n int) []byte
- func (b *Buffer) ReadGMTUnixTime32() (time.Time, bool)
- func (b *Buffer) ReadInt() (int, bool)
- func (b *Buffer) ReadInt16() (int16, bool)
- func (b *Buffer) ReadInt24() (int32, bool)
- func (b *Buffer) ReadInt32() (int32, bool)
- func (b *Buffer) ReadInt64() (int64, bool)
- func (b *Buffer) ReadInt8() (int8, bool)
- func (b *Buffer) ReadUint16() (uint16, bool)
- func (b *Buffer) ReadUint24() (uint32, bool)
- func (b *Buffer) ReadUint32() (uint32, bool)
- func (b *Buffer) ReadUint64() (uint64, bool)
- func (b *Buffer) ReadUint8() (uint8, bool)
- func (b *Buffer) ReadVector(bitSize int) ([]byte, bool)
- func (b *Buffer) Size() int
- func (b *Buffer) Skip(n int) bool
- func (b *Buffer) WriteBytes(bytes ...byte)
- func (b *Buffer) WriteGMTUnixTime32(time time.Time)
- func (b *Buffer) WriteInt(v int)
- func (b *Buffer) WriteInt16(v int16)
- func (b *Buffer) WriteInt24(v int32)
- func (b *Buffer) WriteInt32(v int32)
- func (b *Buffer) WriteInt64(v int64)
- func (b *Buffer) WriteInt8(v int8)
- func (b *Buffer) WriteRandom(n int)
- func (b *Buffer) WriteUint16(v uint16)
- func (b *Buffer) WriteUint24(v uint32)
- func (b *Buffer) WriteUint32(v uint32)
- func (b *Buffer) WriteUint64(v uint64)
- func (b *Buffer) WriteUint8(v uint8)
- func (b *Buffer) WriteVector(v []byte, bitSize int)
- type Endianness
Constants ¶
const IntSize = intSize
IntSize is the size in bits of an int or uint value.
const NativeEndian = LittleEndian
Variables ¶
This section is empty.
Functions ¶
func ReadBigInt16 ¶ added in v0.8.0
ReadBigInt16 removes the first bytes from b and returns it as an int16 in big-endian order. The bool indicates whether the read was successful.
func ReadBigInt24 ¶ added in v0.8.0
ReadInt24 removes the first bytes from b and returns it as a int32 in big-endian order. The bool indicates whether the read was successful.
func ReadBigInt32 ¶ added in v0.8.0
ReadBigInt32 removes the first bytes from b and returns it as an int32 in big-endian order. The bool indicates whether the read was successful.
func ReadBigInt64 ¶ added in v0.8.0
ReadInt64 removes the first bytes from b and returns it as an int64 in big-endian order. The bool indicates whether the read was successful.
func ReadBigUint16 ¶ added in v0.8.0
Uint16BE removes the first bytes from b and returns it as an uint16 in big-endian order. The bool indicates whether the read was successful.
func ReadBigUint24 ¶ added in v0.8.0
ReadBigUint24 removes the first bytes from b and returns it as a uint32 in big-endian order. The bool indicates whether the read was successful.
func ReadBigUint32 ¶ added in v0.8.0
ReadBigUint32 removes the first bytes from b and returns it as an uint32 in big-endian order. The bool indicates whether the read was successful.
func ReadBigUint64 ¶ added in v0.8.0
ReadUint64 removes the first bytes from b and returns it as an uint64 in big-endian order. The bool indicates whether the read was successful.
func ReadByte ¶ added in v0.8.0
ReadByte removes the first byte from b and returns it as a byte. The bool indicates whether the read was successful.
func ReadBytes ¶
ReadBytes removes the first n bytes from b and returns it. If the read failed, returns nil.
func ReadInt16 ¶
ReadInt16 removes the first bytes from b and returns it as an int16 in native endian order. The bool indicates whether the read was successful.
func ReadInt24 ¶
ReadInt24 removes the first bytes from b and returns it as a int32 in native endian order. The bool indicates whether the read was successful.
func ReadInt32 ¶
ReadInt32 removes the first bytes from b and returns it as an int32 in native-endian order. The bool indicates whether the read was successful.
func ReadInt64 ¶
ReadInt64 removes the first bytes from b and returns it as an int64 in native-endian order. The bool indicates whether the read was successful.
func ReadInt8 ¶
ReadInt8 removes the first byte from b and returns it as an int8. The bool indicates whether the read was successful.
func ReadLittleInt16 ¶ added in v0.8.0
ReadLittleInt16 removes the first bytes from b and returns it as an int16 in little-endian order. The bool indicates whether the read was successful.
func ReadLittleInt24 ¶ added in v0.8.0
ReadInt24 removes the first bytes from b and returns it as a int32 in little-endian order. The bool indicates whether the read was successful.
func ReadLittleInt32 ¶ added in v0.8.0
ReadLittleInt32 removes the first bytes from b and returns it as an int32 in little-endian order. The bool indicates whether the read was successful.
func ReadLittleInt64 ¶ added in v0.8.0
ReadInt64 removes the first bytes from b and returns it as an int64 in little-endian order. The bool indicates whether the read was successful.
func ReadLittleUint16 ¶ added in v0.8.0
ReadLittleUint16 removes the first bytes from b and returns it as an uint16 in little-endian order. The bool indicates whether the read was successful.
func ReadLittleUint24 ¶ added in v0.8.0
ReadLittleUint24 removes the first bytes from b and returns it as a uint32 in little-endian order. The bool indicates whether the read was successful.
func ReadLittleUint32 ¶ added in v0.8.0
ReadLittleUint32 removes the first bytes from b and returns it as an uint32 in little-endian order. The bool indicates whether the read was successful.
func ReadLittleUint64 ¶ added in v0.8.0
ReadUint64 removes the first bytes from b and returns it as an uint64 in little-endian order. The bool indicates whether the read was successful.
func ReadReaderBytes ¶
ReadReaderBytes reads n byte from in. At the end of the file, io.EOF is returned.
func ReadReaderUint16 ¶
ReadReaderUint16 reads bytes from in and returns it as an uint16. At the end of the file io.EOF returned.
func ReadReaderUint24 ¶
ReadReaderUint24 reads bytes from in and returns it as an uint32. At the end of the file, io.EOF is returned.
func ReadReaderUint32 ¶
ReadReaderUint32 reads bytes from in and returns it as an uint32. At the end of the file io.EOF returned.
func ReadReaderUint8 ¶
ReadReaderUint8 reads a byte from in and returns is as an uint8. At the end of the file, io.EOF is returned.
func ReadUint16 ¶
ReadUint16 removes the first bytes from b and returns it as an uint16 in native endian order. The bool indicates whether the read was successful.
func ReadUint24 ¶
ReadUint24 removes the first bytes from b and returns it as a uint32 in native endian order. The bool indicates whether the read was successful.
func ReadUint32 ¶
ReadUint32 removes the first bytes from b and returns it as an uint32 in native-endian order. The bool indicates whether the read was successful.
func ReadUint64 ¶
ReadUint64 removes the first bytes from b and returns it as an uint64 in native-endian order. The bool indicates whether the read was successful.
func ReadUint8 ¶
ReadUint8 removes the first byte from b and returns it as an uint8. The bool indicates whether the read was successful.
func SkipReader ¶
ReadReaderSkip skips n bytes in in. At the end of the file, io.EOF is returned.
func WriteBigInt16 ¶ added in v0.8.0
WriteBigInt16 appends v at the end of b in big-endian order.
func WriteBigInt24 ¶ added in v0.8.0
WriteInt24 appends v at the end of b in big-endian order.
func WriteBigInt32 ¶ added in v0.8.0
WriteInt32 appends v at the end of b in big-endian order.
func WriteBigInt64 ¶ added in v0.8.0
WriteInt64 appends v at the end of b in big-endian order.
func WriteBigUint16 ¶ added in v0.8.0
WriteBigUint16 appends v at the end of b in big-endian order.
func WriteBigUint24 ¶ added in v0.8.0
WriteBigUint24 appends v at the end of b in big-endian order.
func WriteBigUint32 ¶ added in v0.8.0
WriteUint32 appends v at the end of b in big-endian order.
func WriteBigUint64 ¶ added in v0.8.0
WriteUint64 appends v at the end of b in big-endian order.
func WriteInt16 ¶
WriteInt16 appends v at the end of b in native-endian order.
func WriteInt24 ¶
WriteInt24 appends v at the end of b in native-endian order.
func WriteInt32 ¶
WriteInt32 appends v at the end of b in native-endian order.
func WriteInt64 ¶
WriteInt64 appends v at the end of b in native-endian order.
func WriteLittleInt16 ¶ added in v0.8.0
WriteLittleInt16 appends v at the end of b in little-endian order.
func WriteLittleInt24 ¶ added in v0.8.0
WriteInt24 appends v at the end of b in little-endian order.
func WriteLittleInt32 ¶ added in v0.8.0
WriteInt32 appends v at the end of b in little-endian order.
func WriteLittleInt64 ¶ added in v0.8.0
WriteInt64 appends v at the end of b in little-endian order.
func WriteLittleUint16 ¶ added in v0.8.0
WriteLittleUint16 appends v at the end of b in little-endian order.
func WriteLittleUint24 ¶ added in v0.8.0
WriteLittleUint24 appends v at the end of b in little-endian order.
func WriteLittleUint32 ¶ added in v0.8.0
WriteUint32 appends v at the end of b in little-endian order.
func WriteLittleUint64 ¶ added in v0.8.0
WriteUint64 appends v at the end of b in little-endian order.
func WriteUint16 ¶
WriteUint16 appends v at the end of b in native-endian order.
func WriteUint24 ¶
WriteUint24 appends v at the end of b in native-endian order.
func WriteUint32 ¶
WriteUint32 appends v at the end of b in native-endian order.
func WriteUint64 ¶
WriteUint64 appends v at the end of b in native-endian order.
func WriteWriterBytes ¶
WriteWriterBytes appends v at the end of in.
func WriteWriterUint16 ¶
WriteWriterUint16 appends v at the end of in.
func WriteWriterUint24 ¶
WriteWriterUint24 appends v at the end of in.
func WriteWriterUint32 ¶
WriteWriterUint32 appends v at the end of in.
Types ¶
type Buffer ¶
type Buffer struct {
// contains filtered or unexported fields
}
func NewWithSize ¶
NewWithSize creates a Buffer with a byte slice of length n.
func ReadAll ¶
ReadAll reads from r until an error or EOF and returns a Buffer from the data it read. A successful call returns err == nil, not err == EOF. Because ReadAll is defined to read from src until EOF, it does not treat an EOF from Read as an error to be reported.
func (*Buffer) BytesPointer ¶
BytesPointer returns a pointer to the underlying byte slice.
func (*Buffer) ReadBytes ¶
ReadBytes removes the first n bytes from b and returns it. If the read failed, returns nil.
func (*Buffer) ReadGMTUnixTime32 ¶
ReadGMTUnixTime32 removes the first bytes from b and returns it as an unix time. The bool indicates whether the read was successful.
func (*Buffer) ReadInt ¶
ReadInt removes the first bytes (depends on IntSize) from b and returns it as an int.
func (*Buffer) ReadInt16 ¶
ReadInt16 removes the first bytes from b and returns it as an int16. The bool indicates whether the read was successful.
func (*Buffer) ReadInt24 ¶
ReadInt24 removes the first bytes from b and returns it as a int32. The bool indicates whether the read was successful.
func (*Buffer) ReadInt32 ¶
ReadInt32 removes the first bytes from b and returns it as an int32. The bool indicates whether the read was successful.
func (*Buffer) ReadInt64 ¶
ReadInt64 removes the first bytes from b and returns it as an int64. The bool indicates whether the read was successful.
func (*Buffer) ReadInt8 ¶
ReadInt8 removes the first byte from b and returns it as an int8. The bool indicates whether the read was successful.
func (*Buffer) ReadUint16 ¶
ReadUint16 removes the first bytes from b and returns it as an uint16. The bool indicates whether the read was successful.
func (*Buffer) ReadUint24 ¶
ReadUint24 removes the first bytes from b and returns it as a uint32. The bool indicates whether the read was successful.
func (*Buffer) ReadUint32 ¶
ReadUint32 removes the first bytes from b and returns it as an uint32. The bool indicates whether the read was successful.
func (*Buffer) ReadUint64 ¶
ReadUint64 removes the first bytes from b and returns it as an uint64. The bool indicates whether the read was successful.
func (*Buffer) ReadUint8 ¶
ReadUint8 removes the first byte from b and returns it as an uint8. The bool indicates whether the read was successful.
func (*Buffer) ReadVector ¶
ReadVector reads the length of bytes then the bytes itself. The length type is depend on bitSize (eg.: uint8, uint16, uint24, uint32, uint64). Therefore, bitSize must be 8/16/24/32/64. If bitSize is an invalid number, this function panics.
func (*Buffer) WriteBytes ¶
WriteBytes appends bytes at the end of b.
func (*Buffer) WriteGMTUnixTime32 ¶
WriteGMTUnixTime32 appends time to b in 32 bit unix format.
func (*Buffer) WriteInt ¶
WriteInt append v at the end of b with size bitSize. The number of bytes depends on IntSize.
func (*Buffer) WriteInt16 ¶
WriteInt16 appends v at the end of b.
func (*Buffer) WriteInt24 ¶
WriteInt24 appends v at the end of b.
func (*Buffer) WriteInt32 ¶
WriteInt32 appends v at the end of b.
func (*Buffer) WriteInt64 ¶
WriteInt64 appends v at the end of b.
func (*Buffer) WriteRandom ¶
WriteRandom appends n random bytes to b. If failed to read random, this function panics. This function gets random numbers from `crypto/rand` package.
func (*Buffer) WriteUint16 ¶
WriteUint16 appends v at the end of b.
func (*Buffer) WriteUint24 ¶
WriteUint24 appends v at the end of b.
func (*Buffer) WriteUint32 ¶
WriteUint32 appends v at the end of b.
func (*Buffer) WriteUint64 ¶
WriteUint64 appends v at the end of b.
func (*Buffer) WriteUint8 ¶
WriteUint8 appends v at the end of b.
func (*Buffer) WriteVector ¶
WriteVector appends the length of bytes then the bytes itself. The length type is depend on bitSize (eg.: uint8, uint16, uint24, uint32, uint64). Therefore, bitSize must be 8/16/24/32/64. If bitSize is an invalid number, this function panics.
type Endianness ¶ added in v0.8.0
type Endianness byte
const ( LittleEndian Endianness = iota BigEndian )