def event.read

bend-kit-llm@0.13.0.1 · llm.bend:533

import bend-kit-llm@0.13.0.1/llm.bend as Llm
import Base
import bend-kit-llm@0.13.0.1/sse.bend as Sse
import bend-kit-hairpin@0.13.0.1/hairpin.bend as Hairpin
import bend-kit-http@0.38.1.1/http.bend as Http
import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes

533def event.read(rd: Sse.Reader, x: Http.Stream & Result<&1, &1, Http.Err, Maybe<&1, Bytes.Bytes>>) -> Rn:
534  (h, r) = x
535  match r:
536    case Fail{e}:
537      RnOut{h, rd, Fail{ErrNet{Hairpin.ErrHttp{e}}}}
538    case Done{m}:
539      match m:
540        case None{}:
541          RnOut{h, rd, Done{None{}}}
542        case Some{b}:
543          RnNext{h, Sse.next(Sse.feed(rd, b))}

Uses (13)

Used by (1)