Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Httpaf.Server_connectionSourceval create :
?config:Config.t ->
?error_handler:error_handler ->
'handle request_handler ->
'handle tcreate ?config ?error_handler ~request_handler creates a connection handler that will service individual requests with request_handler.
next_read_operation t returns a value describing the next operation that the caller should conduct on behalf of the connection.
read t bigstring ~off ~len reads bytes of input from the provided range of bigstring and returns the number of bytes consumed by the connection. read should be called after next_read_operation returns a `Read value and additional input is available for the connection to consume.
yield_reader t continue registers with the connection to call continue when reading should resume. yield_reader should be called after next_read_operation returns a `Yield value.
shutdown_reader t shuts down the read processor for the connection. All subsequent calls to next_read_operations will return `Close. shutdown_reader should be called after next_read_operation returns a `Read value and there is no further input available for the connection to consume.
val next_write_operation :
_ t ->
[ `Write of Bigstring.t IOVec.t list | `Yield | `Close of int ]next_write_operation t returns a value describing the next operation that the caller should conduct on behalf of the connection.
report_write_result t result reports the result of the latest write attempt to the connection. report_write_result should be called after a call to next_write_operation that returns a `Write buffer value.
`Ok n indicates that the caller successfully wrote n bytes of output from the buffer that the caller was provided by next_write_operation.`Closed indicates that the output destination will no longer accept bytes from the write processor.yield_writer t continue registers with the connection to call continue when writing should resume. yield_writer should be called after next_write_operation returns a `Yield value.
report_exn t exn reports that an error exn has been caught and that it has been attributed to t. Calling this function will switch t into an error state. Depending on the state t is transitioning from, it may call its error handler before terminating the connection.
is_closed t is true if both the read and write processors have been shutdown. When this is the case next_read_operation will return `Close _ and next_write_operation will do the same will return a `Write _ until all buffered output has been flushed.