def encode.field

bend-kit-http2@0.4.0.0 · hpack.bend:589

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

589def encode.field(f: Field, huff: Bool, +st: State) -> Maybe<&1, State & Bytes.Bytes>:
590  Field{+name, +value, mode} = f
591  match mode:
592    case 0:
593      +index = find.index(True{}, st, name, value)
594      encode.exact(U32.is_ne(index, 0), index, name, value, huff, st)
595    case 1:
596      encode.literal(1, name, value, huff, st)
597    case 2:
598      encode.literal(2, name, value, huff, st)
599    case _:
600      None{}

Uses (13)

Used by (1)