Documentation
¶
Index ¶
- Variables
- func SetLogger(newLogger zerolog.Logger)
- type Buffer
- type Client
- type Config
- type HandlerFunc
- type InterfaceDef
- type Message
- type MessageHandlerFunc
- type MsgDef
- type MsgDefinition
- type MsgHandler
- type NewDecoder
- type NewEncoder
- type Request
- type Response
- type RpcDef
- func (d RpcDef[Req, Resp]) Call(req Req) (Resp, error)
- func (d RpcDef[Req, Resp]) CallTimeout(req Req, timeout time.Duration) (Resp, error)
- func (d RpcDef[Req, Resp]) Handler() (reflect.Type, HandlerFunc)
- func (d *RpcDef[Req, Resp]) Register(handler func(Req) Resp)
- func (d RpcDef[Req, Resp]) ReqType() any
- func (d RpcDef[Req, Resp]) RespType() any
- type RpcDefinition
- type RpcHandler
- type UnionBuilder
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrTimeout = errors.New("timeout reached")
View Source
var ErrUvarintCorrupted = errors.New("failed to read uvarint is corrupted")
Functions ¶
Types ¶
type Buffer ¶
type Buffer struct {
// contains filtered or unexported fields
}
func NewBufferFrom ¶
func (*Buffer) ReadUint32 ¶
func (*Buffer) ReadUint64 ¶
func (*Buffer) WriteUint32 ¶
func (*Buffer) WriteUint8 ¶
type Client ¶
type Client[S, C any] struct { Handler S Call C // contains filtered or unexported fields }
func (*Client[S, C]) ReadEgress ¶
func (*Client[S, C]) ReadIngress ¶
type HandlerFunc ¶
type InterfaceDef ¶
type InterfaceDef[S, C any] struct { Service S Client C // contains filtered or unexported fields }
Interface Definition
func NewInterfaceDef ¶
func NewInterfaceDef[S, C any]() InterfaceDef[S, C]
func (InterfaceDef[S, C]) NewClient ¶
func (d InterfaceDef[S, C]) NewClient(config *Config) *Client[C, S]
Returns the client side of the interface
func (InterfaceDef[S, C]) NewServer ¶
func (d InterfaceDef[S, C]) NewServer(config *Config) *Client[S, C]
Returns the server side of the interface
type MessageHandlerFunc ¶
type MessageHandlerFunc func(req any)
type MsgDef ¶
type MsgDef[A any] struct { // contains filtered or unexported fields }
Message Definition
func (MsgDef[A]) SendGetSize ¶
Sends the message and returns the number of bytes sent
type MsgDefinition ¶
type MsgDefinition interface {
MsgType() any
}
type MsgHandler ¶
type MsgHandler interface {
Handler() (reflect.Type, MessageHandlerFunc)
}
type NewDecoder ¶
type NewEncoder ¶
type RpcDef ¶
type RpcDef[Req, Resp any] struct { // contains filtered or unexported fields }
RPC Definition
func (RpcDef[Req, Resp]) CallTimeout ¶
type RpcDefinition ¶
type RpcHandler ¶
type RpcHandler interface {
Handler() (reflect.Type, HandlerFunc)
}
type UnionBuilder ¶
type UnionBuilder struct {
// contains filtered or unexported fields
}
func NewUnion ¶
func NewUnion(structs ...any) *UnionBuilder
func (*UnionBuilder) Deserialize ¶
func (u *UnionBuilder) Deserialize(buf *Buffer) (any, error)
Click to show internal directories.
Click to hide internal directories.