Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Codec ¶
type Codec interface { // Type is the codec kind Type() arhatgopb.CodecType // NewEncoder creates a new Encoder which will encode messages to the Writer NewEncoder(w io.Writer) Encoder // NewEncoder creates a new Decoder which will decode messages from the Reader NewDecoder(r io.Reader) Decoder // Unmarshal non stream data Unmarshal(data []byte, out interface{}) error // Marshal v as non stream data Marshal(v interface{}) ([]byte, error) }
Codec knows how to encode/decode all kinds of data, including stream data
type Decoder ¶
type Decoder interface { // Decode one message from stream Decode(out interface{}) error }
Decoder for stream data decoding
type Encoder ¶
type Encoder interface { // Encode one message to stream Encode(any interface{}) error }
Encoder for stream data encoding
type Handler ¶
type Handler interface { // SetMsgSendFunc is called by controller when new connection established, handler // should use the latest message send func for SendMsg function call SetMsgSendFunc(sendMsg MsgSendFunc) // SendMsg send out of band message to the extension hub SendMsg(msg *arhatgopb.Msg) error // HandleCmd process one command per function call, payload is non stream data HandleCmd(ctx context.Context, id, seq uint64, kind arhatgopb.CmdType, payload []byte) (interface{}, error) }
Handler for controller
type MarshalFunc ¶ added in v0.3.0
type MsgSendFunc ¶ added in v0.4.0
type ResizeHandleFunc ¶ added in v0.4.0
type ResizeHandleFunc func(cols, rows uint32)
type UnmarshalFunc ¶ added in v0.3.0
Click to show internal directories.
Click to hide internal directories.