pub const MAX_INPUT_BYTES: usize = 16 * 1024 * 1024;
pub const MAX_MULTIPART_DEPTH: usize = 100;
pub const MAX_MULTIPART_PARTS: usize = 1024;
pub(super) const RFC5322_HARD_LINE_LEN: usize = 998;
pub(super) const fn hex_val(byte: u8) -> Option<u8> {
match byte {
b'0'..=b'9' => Some(byte - b'0'),
b'A'..=b'F' => Some(byte - b'A' + 10),
b'a'..=b'f' => Some(byte - b'a' + 10),
_ => None,
}
}
pub(super) fn trim_lwsp_end(value: &[u8]) -> &[u8] {
let mut end = value.len();
while end > 0 && (value[end - 1] == b' ' || value[end - 1] == b'\t') {
end -= 1;
}
&value[..end]
}