Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Handler ¶
type Handler struct { Receiver reflect.Value // receiver of method Method reflect.Method // method stub Type reflect.Type // low-level type of method IsRawArg bool // whether the data need to serialize }
Handler represents a message.Message's handler's meta information.
type Option ¶
type Option func(options *options)
func WithNameFunc ¶
WithNameFunc override handler name by specific function such as: strings.ToUpper/strings.ToLower
type Service ¶
type Service struct { Name string // name of service Type reflect.Type // type of the receiver Receiver reflect.Value // receiver of methods for the service Handlers map[string]*Handler // registered methods Options options // options }
Service implements a specific service, some of it's methods will be called when the correspond events is occurred.
func NewService ¶
NewService creates a new service
func (*Service) ExtractHandler ¶
ExtractHandler extract the set of methods from the receiver value which satisfy the following conditions: - exported method of exported type - one or two arguments - the first argument is context.Context - the second argument (if it exists) is []byte or a pointer - zero or two outputs - the first output is [] or a pointer - the second output is an error