use safer_ffi::prelude::*;
#[derive_ReprC(rename = "ns_headers")]
#[repr(opaque)]
pub struct NsHeaders {
inner: Vec<(String, String)>,
}
impl NsHeaders {
pub(crate) fn inner(&self) -> &Vec<(String, String)> {
&self.inner
}
}
#[ffi_export]
pub fn ns_headers_create() -> repr_c::Box<NsHeaders> {
Box::new(NsHeaders { inner: Vec::new() }).into()
}
#[ffi_export]
pub fn ns_headers_add(headers: &mut NsHeaders, name: char_p::Ref<'_>, value: char_p::Ref<'_>) {
headers.inner.push((name.to_string(), value.to_string()))
}
#[ffi_export]
pub fn ns_headers_free(headers: repr_c::Box<NsHeaders>) {
drop(headers)
}