Skip to main content

powhttp_sdk/
shared.rs

1use serde::{Serialize, Deserialize};
2
3/// Which side of the connection a message originated from.
4#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
5#[serde(rename_all = "snake_case")]
6pub enum Side {
7    Client,
8    Server,
9}
10
11/// A `u8` value paired with its human-readable name (e.g. a TLS alert level).
12#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
13#[serde(rename_all = "camelCase")]
14pub struct NamedU8 {
15    pub value: u8,
16    pub name: String,
17}
18
19/// A `u16` value paired with its human-readable name (e.g. a TLS cipher suite).
20#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
21#[serde(rename_all = "camelCase")]
22pub struct NamedU16 {
23    pub value: u16,
24    pub name: String,
25}
26
27/// A `u32` value paired with its human-readable name (e.g. an HTTP/2 error code).
28#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
29#[serde(rename_all = "camelCase")]
30pub struct NamedU32 {
31    pub value: u32,
32    pub name: String,
33}