Files
2025-05-26 05:04:39 +03:00

46 lines
1.0 KiB
Go

package uio
type Sink interface {
Write(src []byte) (n int, err error)
WriteFully(src []byte) error
}
type BufferedSink interface {
Sink
WriteByte(b byte) error
WriteUByte(b uint8) error
WriteShortLE(v int16) error
WriteShortBE(v int16) error
WriteIntLE(v int32) error
WriteIntBE(v int32) error
WriteLongLE(v int64) error
WriteLongBE(v int64) error
WriteUShortLE(v uint16) error
WriteUShortBE(v uint16) error
WriteUIntLE(v uint32) error
WriteUIntBE(v uint32) error
WriteULongLE(v uint64) error
WriteULongBE(v uint64) error
WriteFloatLE(v float32) error
WriteFloatBE(v float32) error
WriteDoubleLE(v float64) error
WriteDoubleBE(v float64) error
// WriteShortByteArray writes a size-prefixed byte array.
// Structure: [ShortLE : size][size bytes data]
WriteShortByteArray(data []byte) error
// WriteByteArray writes a size-prefixed byte array.
// Structure: [IntLE : size][size bytes data]
WriteByteArray(data []byte) error
WriteShortString(s string) error
WriteString(s string) error
}