Source File
middleware.go
Belonging Package
github.com/gotd/td/telegram
package telegramimport ()// InvokeFunc implements tg.Invoker as function.type InvokeFunc func(ctx context.Context, input bin.Encoder, output bin.Decoder) error// Invoke implements tg.Invoker.func ( InvokeFunc) ( context.Context, bin.Encoder, bin.Decoder) error {return (, , )}// Middleware returns new InvokeFunc for next invoker.type Middleware interface {Handle(next tg.Invoker) InvokeFunc}// MiddlewareFunc implements Middleware as function.type MiddlewareFunc func(next tg.Invoker) InvokeFunc// Handle implements Middleware.func ( MiddlewareFunc) ( tg.Invoker) InvokeFunc { return () }// chainMiddlewares composes new invoker in such order that first element in// chain is called first, and latest "next" argument will be "invoker".//// E.g. we have invoker and two middlewares, so order will be following:// 0, 1, (invoker), 1 (after "next"), 0 (after "next").//// See TestMiddlewareOrder or ExampleMiddleware.func ( tg.Invoker, ...Middleware) tg.Invoker {if len() == 0 {return}for := len() - 1; >= 0; -- {= [].Handle()}return}
![]() |
The pages are generated with Golds v0.6.7. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |