package dream-httpaf
Internal: shared http/af stack for Dream (server) and Hyper (client)
Install
Dune Dependency
Authors
Maintainers
Sources
dream-1.0.0-alpha5.tar.gz
sha256=05bc7f6aff94893c151f3a5bcdee3328920c69b3763fac49ba27348dc7745901
md5=de6f6908ae899c9e85f2c751a0263932
doc/dream-httpaf.dream-h2/Dream_h2/Client_connection/index.html
Module Dream_h2.Client_connection
Source
Source
type t = {
mutable settings : Settings.t;
reader : Reader.frame;
writer : Writer.t;
config : Config.t;
streams : Scheduler.t;
mutable current_stream_id : Stream_identifier.t;
mutable max_pushed_stream_id : Stream_identifier.t;
mutable current_server_streams : int;
mutable receiving_headers_for_stream : Stream_identifier.t option;
mutable did_send_go_away : bool;
mutable unacked_settings : int;
pending_pings : (unit -> unit) Queue.t;
error_handler : error -> unit;
push_handler : Request.t -> (response_handler, unit) result;
hpack_encoder : Hpack.Encoder.t;
hpack_decoder : Hpack.Decoder.t;
}
Source
val handle_push_promise_headers :
t ->
((('a, 'b Stream.remote_state) Stream.active_state, Respd.active_request, 'c)
Stream.state,
'd,
'e)
Stream.stream ->
Headers.t ->
unit
Source
val handle_response_headers :
t ->
Scheduler.nonroot Scheduler.node ->
end_stream:bool ->
Respd.active_request ->
Headers.header list ->
unit
Source
val handle_headers :
t ->
end_stream:bool ->
Scheduler.nonroot Scheduler.node ->
Headers.t ->
unit
Source
val handle_headers_block :
t ->
?is_trailers:bool ->
Scheduler.nonroot Scheduler.node ->
Stream.partial_headers ->
int ->
Angstrom.bigstring ->
unit
Source
val handle_trailer_headers :
t ->
Scheduler.nonroot Scheduler.node ->
Stream.partial_headers ->
int ->
Angstrom.bigstring ->
unit
Source
val handle_first_response_bytes :
t ->
Scheduler.nonroot Scheduler.node ->
Respd.active_request ->
Frame.frame_header ->
Bigstringaf.t ->
unit
Source
val process_trailer_headers :
t ->
Scheduler.nonroot Scheduler.node ->
Respd.response_info ->
Frame.frame_header ->
Angstrom.bigstring ->
unit
Source
val create_and_add_stream :
t ->
error_handler:Respd.error_handler ->
(((Respd.response_info, Respd.response_info Stream.remote_state)
Stream.active_state,
Respd.active_request,
Respd.active_request Stream.remote_state)
Stream.state,
Respd.error,
Respd.error_handler)
Stream.stream
Source
val create_h2c :
?config:Config.t ->
?push_handler:(Request.t -> (response_handler, unit) result) ->
http_request:Httpaf.Request.t ->
error_handler:(error -> unit) ->
(Respd.response_handler * Respd.error_handler) ->
(t, string) result
Source
val request :
t ->
?flush_headers_immediately:bool ->
?trailers_handler:Respd.trailers_handler ->
Request.t ->
error_handler:Respd.error_handler ->
response_handler:Respd.response_handler ->
Body.Writer.t
Source
val next_write_operation :
t ->
[> `Close of int | `Write of Faraday.bigstring Faraday.iovec list | `Yield ]
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>