var ErrIdleTimeout … var ErrNotHandled … var ErrAsyncResponse … type Preempter … type PreempterFunc … func (f PreempterFunc) Preempt(ctx context.Context, req *Request) (interface{ … } var _ … type Handler … type defaultHandler … func (defaultHandler) Preempt(context.Context, *Request) (interface{ … } func (defaultHandler) Handle(context.Context, *Request) (interface{ … } type HandlerFunc … func (f HandlerFunc) Handle(ctx context.Context, req *Request) (interface{ … } var _ … type async … func newAsync() *async { … } func (a *async) done() { … } func (a *async) isDone() bool { … } func (a *async) wait() error { … } func (a *async) setError(err error) { … }