Files
mautrix-telegram/pkg/gotd/transport/codec.go
T
2025-06-27 20:03:37 -07:00

20 lines
501 B
Go

package transport
import (
"io"
"go.mau.fi/mautrix-telegram/pkg/gotd/bin"
)
// Codec is MTProto transport protocol encoding abstraction.
type Codec interface {
// WriteHeader sends protocol tag if needed.
WriteHeader(w io.Writer) error
// ReadHeader reads protocol tag if needed.
ReadHeader(r io.Reader) error
// Write encode to writer message from given buffer.
Write(w io.Writer, b *bin.Buffer) error
// Read fills buffer with received message.
Read(r io.Reader, b *bin.Buffer) error
}