def encode.go
bend-kit-http2@0.4.0.0 · hpack.bend:631
import bend-kit-http2@0.4.0.0/hpack.bend as Hpack
import Base
import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes
631def encode.go(xs: List<&2, Field>, +huff: Bool, st: State, acc: List<&1, Bytes.Bytes>) -> Maybe<&1, State & List<&1, Bytes.Bytes>>:
632 match xs:
633 case Nil{}:
634 Some{(st, acc)}
635 case Con{field, tail}:
636 Maybe.bind(&1, State & Bytes.Bytes, State & List<&1, Bytes.Bytes>, encode.field(field, huff, st), pair =>
637 with_encoded(Maybe<&1, State & List<&1, Bytes.Bytes>>, pair, state => bytes =>
638 encode.go(tail, huff, state, Con{bytes, acc})))