diff --git a/src/http/headers/entry.rs b/src/http/headers/entry.rs deleted file mode 100644 index 2b5976e..0000000 --- a/src/http/headers/entry.rs +++ /dev/null @@ -1,21 +0,0 @@ -use super::{non_empty_list::{self, NonEmptyList}, HeaderName, HeaderValue}; - -#[derive(Debug, Clone)] -pub struct HeaderEntry { - pub(crate) key: HeaderName, - pub(crate) value: NonEmptyList, -} - -impl HeaderEntry { - pub fn take(self) -> HeaderValue { - self.value.take_first() - } - - pub fn iter(&self) -> non_empty_list::Iter { - self.value.iter() - } - - pub fn into_iter(self) -> non_empty_list::IntoIter { - self.value.into_iter() - } -} \ No newline at end of file diff --git a/src/http/headers/headers.rs b/src/http/headers/headers.rs index 74c865b..1f55e14 100644 --- a/src/http/headers/headers.rs +++ b/src/http/headers/headers.rs @@ -2,7 +2,13 @@ use core::str; use private::Sealed; -use super::{entry::HeaderEntry, non_empty_list::NonEmptyList, value::HeaderValue, HeaderName}; +use super::{non_empty_list::NonEmptyList, value::HeaderValue, HeaderName}; + +#[derive(Debug, Clone)] +struct HeaderEntry { + pub(crate) key: HeaderName, + pub(crate) value: NonEmptyList, +} #[derive(Default, Debug, Clone)] pub struct Headers { @@ -28,7 +34,7 @@ impl Headers { match key.find(&self) { Some(idx) => { let entry = self.entries.get(idx)?; - entry.iter().next() + entry.value.iter().next() } None => None, } @@ -38,7 +44,7 @@ impl Headers { let iter = key .find(&self) .map(|idx| &self.entries[idx]) - .map(|x| x.iter()); + .map(|x| x.value.iter()); GetAll { iter } } @@ -95,7 +101,7 @@ impl Headers { match key.find(&self) { Some(idx) => { let entry = self.entries.remove(idx); - Some(entry.take()) + Some(entry.value.take_first()) } None => None, } @@ -213,7 +219,7 @@ impl<'a> Iterator for Iter<'a> { let entry = self.entries.get(self.index)?; self.index += 1; - Some((&entry.key, entry.iter())) + Some((&entry.key, entry.value.iter())) } } @@ -240,7 +246,7 @@ impl Iterator for IntoIter { let entry = self.entries.remove(0); let key = entry.key.clone(); - Some((key, entry.into_iter())) + Some((key, entry.value.into_iter())) } } diff --git a/src/http/headers/mod.rs b/src/http/headers/mod.rs index bcf60a9..a82e8d3 100644 --- a/src/http/headers/mod.rs +++ b/src/http/headers/mod.rs @@ -1,4 +1,3 @@ -mod entry; mod headers; mod name; pub(crate) mod non_empty_list;