encoding.go 524 B

123456789101112131415161718192021222324252627
  1. package protocol
  2. import (
  3. "io"
  4. "github.com/v2ray/v2ray-core/common/alloc"
  5. )
  6. type RequestEncoder interface {
  7. EncodeHeader(*RequestHeader) *alloc.Buffer
  8. EncodeBody(io.Writer) io.Writer
  9. }
  10. type RequestDecoder interface {
  11. DecodeHeader(io.Reader) *RequestHeader
  12. DecodeBody(io.Reader) io.Reader
  13. }
  14. type ResponseEncoder interface {
  15. EncodeHeader(*ResponseHeader) *alloc.Buffer
  16. EncodeBody(io.Writer) io.Writer
  17. }
  18. type ResponseDecoder interface {
  19. DecodeHeader(io.Reader) *ResponseHeader
  20. DecodeBody(io.Reader) io.Reader
  21. }