use matchit::Params; use openssl::x509::X509; use url::Url; use crate::context::Parameters; #[allow(clippy::module_name_repetitions)] #[derive(Clone)] pub struct HookContext { pub peer_address: Option, pub url: Url, pub parameters: Option, pub certificate: Option, } impl HookContext { #[must_use] pub fn new( peer_address: std::io::Result, url: Url, parameters: Option>, certificate: Option, ) -> Self { Self { peer_address: peer_address.ok(), url, parameters: parameters.map(|p| Parameters::from_parameters(&p)), certificate, } } }