sark-h2 0.29.4

Fiber-free HTTP/2 protocol primitives and manifold server for sark
use o3::{
    alloc,
    buffer::{pool, write::consume},
};

use crate::hpack::encode;

#[derive(Clone, Copy, Eq, PartialEq, Debug)]
pub enum Headers {
    Encoder(encode::Create),
    Blocks(alloc::Exhausted),
}

#[derive(Clone, Copy, Eq, PartialEq, Debug)]
pub enum Ingress {
    Input(alloc::Error),
    Events(alloc::Error),
    Decoder(alloc::Error),
    HeaderLayout(pool::LayoutError),
    Pool(alloc::Exhausted),
}

#[derive(Clone, Copy, Eq, PartialEq, Debug)]
pub enum Egress {
    Outbound(Outbound),
    Headers(Headers),
}

#[derive(Clone, Copy, Eq, PartialEq, Debug)]
pub enum Outbound {
    Buffer(alloc::Exhausted),
    Payloads(alloc::Error),
    Initial(consume::Error),
}