Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
response_state.ml1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24type t = | Waiting | Fixed of Response.t | Streaming of Response.t * Body.Writer.t | Upgrade of Response.t * (unit -> unit) let output_state t ~writer : Output_state.t = match t with | Fixed _ -> Complete | Waiting -> if Serialize.Writer.is_closed writer then Complete else Waiting | Streaming(_, response_body) -> if Serialize.Writer.is_closed writer then Complete else if Body.Writer.requires_output response_body then Ready else Complete | Upgrade _ -> Ready let flush_response_body t = match t with | Streaming (_, response_body) -> Body.Writer.transfer_to_writer response_body | _ -> ()