API Reference

PureHTTP2.jl's public API is organised into five layers. Each layer has a dedicated documentation page with docstrings and examples for every exported symbol.

  • Frames — wire format, frame header, per-type constructors, namespace submodules for frame types, flags, settings parameters, and error codes.
  • HPACK — encoder/decoder, dynamic table, low-level primitives. Cross-validated against the http2jp/hpack-test-case vector set in CI.
  • Streams — stream state machine, state transitions, header accessors.
  • Connection — connection lifecycle, preface handshake, frame dispatch.
  • Flow control — sliding windows, multi-stream controller, high-level senders and receivers.

Role coverage

PureHTTP2.jl's current public API is primarily server-role:

LayerRole
FramesRole-neutral
HPACKRole-neutral
StreamsMostly role-neutral (header accessors assume server-role reading request headers)
ConnectionCurrently server-role only
Flow controlRole-neutral

Client-role symmetry — specifically, sending the connection preface, processing a server's SETTINGS frame, and exercising the outbound APIs from a client context — is scheduled for Milestone 6. See ROADMAP.md.