Http.serve.write.send.plan: def of bend-kit-http@0.38.2.0 Import: import bend-kit-http@0.38.2.0/http.bend as Http Lines 6960-6974 of bend-kit-http@0.38.2.0/http.bend: https://jend.leeeet.dev/read.txt?path=bend-kit-http@0.38.2.0/http.bend&start_line=6960&end_line=6974 import Base import bend-kit-http@0.38.2.0/completion.bend as Completion import bend-kit-time@0.3.0.0/time.bend as Time import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes def serve.write.send.plan( ~S: Type, ~write: S -> Writer -> Completion.Receipt -> IO(Writer & Completion.Receipt), ~dispose: S -> IO(Unit), observer: Completion.Receipt, receipt: Completion.Receipt, +settings: Limits, s: Socket, rest: Bytes.Bytes, +keep: Bool, +head: Bool, +status: U32, state: S, plan: WriterMode & Map<&2, List<&2, String>> ) -> IO(Maybe<&1, Socket & Turn>): Limits{max, cap, hm, bm, im, wm} = settings (mode, headers) = plan sent_headers = writer.connection(keep, headers) do IO>: now : Time.Duration <- Time.mono() +until : Time.Duration = Time.Duration.add(now, Time.Duration.of_ms(wm)) sent : Socket & Result<&1, &1, U32 & String, Unit> <- bounded.send(s, Bytes.from_string(response(status, sent_headers, "")), until) serve.write.open(~S, ~write, ~dispose, observer, receipt, status, settings, keep, rest, state, mode, frame.nobody(status, head), until, sent) Uses (29): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=IO https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=IO.bind https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Map https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Maybe https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Result https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Sigma https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Socket https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Unit https://jend.leeeet.dev/definition.txt?path=bend-kit-bytes@0.3.3.0/bytes.bend&name=Bytes https://jend.leeeet.dev/definition.txt?path=bend-kit-bytes@0.3.3.0/bytes.bend&name=from_string https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/completion.bend&name=Receipt https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=Limits https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=Turn https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=Writer https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=WriterMode https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=bounded.send https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=frame.nobody https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=response https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=serve.write.open https://jend.leeeet.dev/definition.txt?path=bend-kit-http@0.38.2.0/http.bend&name=writer.connection https://jend.leeeet.dev/definition.txt?path=bend-kit-time@0.3.0.0/time.bend&name=Duration https://jend.leeeet.dev/definition.txt?path=bend-kit-time@0.3.0.0/time.bend&name=Duration.add https://jend.leeeet.dev/definition.txt?path=bend-kit-time@0.3.0.0/time.bend&name=Duration.of_ms https://jend.leeeet.dev/definition.txt?path=bend-kit-time@0.3.0.0/time.bend&name=mono