26#ifndef LEXLEO_STREAM_ADAPTERS_API_H
27#define LEXLEO_STREAM_ADAPTERS_API_H
size_t(* stream_write_fn_t)(void *backend, const void *buf, size_t n, stream_status_t *st)
Backend write operation for a stream adapter.
size_t(* stream_read_fn_t)(void *backend, void *buf, size_t n, stream_status_t *st)
Backend read operation for a stream adapter.
stream_status_t(* stream_flush_fn_t)(void *backend)
Backend flush operation for a stream adapter.
stream_status_t stream_create(stream_t **out, const stream_vtbl_t *vtbl, void *backend, const stream_env_t *env)
Create a generic stream handle from adapter-provided backend bindings.
stream_status_t(* stream_close_fn_t)(void *backend)
Backend close operation for a stream adapter.
Public environment type for the stream port.
Borrower-visible public types for the stream port.
stream_status_t
Public status codes used by the stream port.
Runtime environment for the stream port.
Private handle structure for a stream_t.
Adapter dispatch table bound to a stream_t instance.