def loop

bend-kit-llm@0.13.0.1 · sse.bend:252

import bend-kit-llm@0.13.0.1/sse.bend as Sse
import Base

252# f: at least the lines left, plus one.
253def loop(f: Nat, l: Line, +len: U32) -> Reader & Next:
254  match f:
255    case 0n:
256      stop(l, len)
257    case 1n+p:
258      match l:
259        case LMore{a, +pos, cr, st}:
260          loop(p, line(a, len, pos, pos, cr, st), len)
261        case LWant{a, +pos, cr, st}:
262          stop(LWant{a, pos, cr, st}, len)
263        case LGot{a, +pos, cr, st, e}:
264          stop(LGot{a, pos, cr, st, e}, len)

Uses (8)

Used by (1)