from ../picotls/picotls import ptls_buffer_t, ptls_iovec_t from constants import quicly_stream_t type quicly_streambuf_sendvec_callbacks_t* {.importc, header: "quicly/streambuf.h", bycopy.} = object flatten_vec*: proc(vec: ptr quicly_sendbuf_vec_t, dst: pointer, off: csize_t, len: csize_t): cint {.cdecl.} discard_vec*: proc(vec: ptr quicly_sendbuf_vec_t) {.cdecl.} quicly_sendbuf_vec_t* {.importc, header: "quicly/streambuf.h", bycopy.} = object cb*: ptr quicly_streambuf_sendvec_callbacks_t `len`*: csize_t cbdata*: pointer VecList* {.importc, header: "quicly/streambuf.h", bycopy.} = object entries*: ptr quicly_sendbuf_vec_t size*: csize_t capacity*: csize_t quicly_sendbuf_t* {.importc, header: "quicly/streambuf.h", bycopy.} = object vecs*: VecList off_in_first_vec*: csize_t bytes_written*: uint64 quicly_streambuf_t* {.importc, header: "quicly/streambuf.h", bycopy.} = object egress*: quicly_sendbuf_t ingress: ptls_buffer_t proc quicly_streambuf_create*(stream: ptr quicly_stream_t, sz: csize_t): cint {.importc, header: "quicly/streambuf.h", cdecl.} proc quicly_streambuf_destroy*(stream: ptr quicly_stream_t, err: cint) {.importc, header: "quicly/streambuf.h", cdecl.} proc quicly_streambuf_egress_shutdown*(stream: ptr quicly_stream_t): cint {.importc, header: "quicly/streambuf.h", cdecl.} proc quicly_streambuf_egress_write*(stream: ptr quicly_stream_t, src: pointer, len: csize_t): cint {.importc, header: "quicly/streambuf.h", cdecl.} proc quicly_streambuf_egress_emit*(stream: ptr quicly_stream_t, off: csize_t, dst: pointer, len: csize_t, wrote_all: cint) {.importc, header: "quicly/streambuf.h", cdecl.} proc quicly_streambuf_egress_shift*(stream: ptr quicly_stream_t, delta: csize_t) {.importc, header: "quicly/streambuf.h", cdecl.} proc quicly_streambuf_ingress_receive*(stream: ptr quicly_stream_t, off: csize_t, src: pointer, len: csize_t): cint {.importc, header: "quicly/streambuf.h", cdecl.} proc quicly_streambuf_ingress_get*(stream: ptr quicly_stream_t): ptls_iovec_t {.importc, header: "quicly/streambuf.h", cdecl.} proc quicly_streambuf_ingress_shift*(stream: ptr quicly_stream_t, delta: csize_t) {.importc, header: "quicly/streambuf.h", cdecl.}