1111//! # fn main() -> http_types::Result<()> {
1212//! #
1313//! use http_types::Response;
14- //! use http_types::trace ::{AllowOrigin, Origin };
14+ //! use http_types::security ::{TimingAllowOrigin, TimingOrigin };
1515//!
16- //! let mut origins = AllowOrigin ::new();
17- //! origins.push(Origin ::Wildcard);
16+ //! let mut origins = TimingAllowOrigin ::new();
17+ //! origins.push(TimingOrigin ::Wildcard);
1818//!
1919//! let mut res = Response::new(200);
2020//! origins.apply(&mut res);
2121//!
22- //! let origins = AllowOrigin ::from_headers(res)?.unwrap();
22+ //! let origins = TimingAllowOrigin ::from_headers(res)?.unwrap();
2323//! let origin = origins.iter().next().unwrap();
24- //! assert_eq!(origin, &Origin ::Wildcard);
24+ //! assert_eq!(origin, &TimingOrigin ::Wildcard);
2525//! #
2626//! # Ok(()) }
2727//! ```
@@ -43,26 +43,26 @@ use std::slice;
4343/// # fn main() -> http_types::Result<()> {
4444/// #
4545/// use http_types::Response;
46- /// use http_types::trace ::{AllowOrigin, Origin };
46+ /// use http_types::security ::{TimingAllowOrigin, TimingOrigin };
4747///
48- /// let mut origins = AllowOrigin ::new();
49- /// origins.push(Origin ::Wildcard);
48+ /// let mut origins = TimingAllowOrigin ::new();
49+ /// origins.push(TimingOrigin ::Wildcard);
5050///
5151/// let mut res = Response::new(200);
5252/// origins.apply(&mut res);
5353///
54- /// let origins = AllowOrigin ::from_headers(res)?.unwrap();
54+ /// let origins = TimingAllowOrigin ::from_headers(res)?.unwrap();
5555/// let origin = origins.iter().next().unwrap();
56- /// assert_eq!(origin, &Origin ::Wildcard);
56+ /// assert_eq!(origin, &TimingOrigin ::Wildcard);
5757/// #
5858/// # Ok(()) }
5959/// ```
6060#[ derive( Clone , Eq , PartialEq ) ]
61- pub struct AllowOrigin {
62- origins : Vec < Origin > ,
61+ pub struct TimingAllowOrigin {
62+ origins : Vec < TimingOrigin > ,
6363}
6464
65- impl AllowOrigin {
65+ impl TimingAllowOrigin {
6666 /// Create a new instance of `AllowOrigin`.
6767 pub fn new ( ) -> Self {
6868 Self { origins : vec ! [ ] }
@@ -83,11 +83,11 @@ impl AllowOrigin {
8383 for header in headers {
8484 for origin in header. as_str ( ) . split ( ',' ) {
8585 match origin. trim_start ( ) {
86- "*" => origins. push ( Origin :: Wildcard ) ,
86+ "*" => origins. push ( TimingOrigin :: Wildcard ) ,
8787 r#""null""# => continue ,
8888 origin => {
8989 let url = Url :: parse ( origin) . status ( 400 ) ?;
90- origins. push ( Origin :: Url ( url) ) ;
90+ origins. push ( TimingOrigin :: Url ( url) ) ;
9191 }
9292 }
9393 }
@@ -97,7 +97,7 @@ impl AllowOrigin {
9797 }
9898
9999 /// Append an origin to the list of origins.
100- pub fn push ( & mut self , origin : impl Into < Origin > ) {
100+ pub fn push ( & mut self , origin : impl Into < TimingOrigin > ) {
101101 self . origins . push ( origin. into ( ) ) ;
102102 }
103103
@@ -141,8 +141,8 @@ impl AllowOrigin {
141141 }
142142}
143143
144- impl IntoIterator for AllowOrigin {
145- type Item = Origin ;
144+ impl IntoIterator for TimingAllowOrigin {
145+ type Item = TimingOrigin ;
146146 type IntoIter = IntoIter ;
147147
148148 #[ inline]
@@ -153,8 +153,8 @@ impl IntoIterator for AllowOrigin {
153153 }
154154}
155155
156- impl < ' a > IntoIterator for & ' a AllowOrigin {
157- type Item = & ' a Origin ;
156+ impl < ' a > IntoIterator for & ' a TimingAllowOrigin {
157+ type Item = & ' a TimingOrigin ;
158158 type IntoIter = Iter < ' a > ;
159159
160160 // #[inline]serv
@@ -163,8 +163,8 @@ impl<'a> IntoIterator for &'a AllowOrigin {
163163 }
164164}
165165
166- impl < ' a > IntoIterator for & ' a mut AllowOrigin {
167- type Item = & ' a mut Origin ;
166+ impl < ' a > IntoIterator for & ' a mut TimingAllowOrigin {
167+ type Item = & ' a mut TimingOrigin ;
168168 type IntoIter = IterMut < ' a > ;
169169
170170 #[ inline]
@@ -176,11 +176,11 @@ impl<'a> IntoIterator for &'a mut AllowOrigin {
176176/// A borrowing iterator over entries in `AllowOrigin`.
177177#[ derive( Debug ) ]
178178pub struct IntoIter {
179- inner : std:: vec:: IntoIter < Origin > ,
179+ inner : std:: vec:: IntoIter < TimingOrigin > ,
180180}
181181
182182impl Iterator for IntoIter {
183- type Item = Origin ;
183+ type Item = TimingOrigin ;
184184
185185 fn next ( & mut self ) -> Option < Self :: Item > {
186186 self . inner . next ( )
@@ -195,11 +195,11 @@ impl Iterator for IntoIter {
195195/// A lending iterator over entries in `AllowOrigin`.
196196#[ derive( Debug ) ]
197197pub struct Iter < ' a > {
198- inner : slice:: Iter < ' a , Origin > ,
198+ inner : slice:: Iter < ' a , TimingOrigin > ,
199199}
200200
201201impl < ' a > Iterator for Iter < ' a > {
202- type Item = & ' a Origin ;
202+ type Item = & ' a TimingOrigin ;
203203
204204 fn next ( & mut self ) -> Option < Self :: Item > {
205205 self . inner . next ( )
@@ -214,11 +214,11 @@ impl<'a> Iterator for Iter<'a> {
214214/// A mutable iterator over entries in `AllowOrigin`.
215215#[ derive( Debug ) ]
216216pub struct IterMut < ' a > {
217- inner : slice:: IterMut < ' a , Origin > ,
217+ inner : slice:: IterMut < ' a , TimingOrigin > ,
218218}
219219
220220impl < ' a > Iterator for IterMut < ' a > {
221- type Item = & ' a mut Origin ;
221+ type Item = & ' a mut TimingOrigin ;
222222
223223 fn next ( & mut self ) -> Option < Self :: Item > {
224224 self . inner . next ( )
@@ -231,14 +231,14 @@ impl<'a> Iterator for IterMut<'a> {
231231}
232232
233233// Conversion from `AllowOrigin` -> `HeaderValue`.
234- impl ToHeaderValues for AllowOrigin {
234+ impl ToHeaderValues for TimingAllowOrigin {
235235 type Iter = option:: IntoIter < HeaderValue > ;
236236 fn to_header_values ( & self ) -> crate :: Result < Self :: Iter > {
237237 Ok ( self . value ( ) . to_header_values ( ) . unwrap ( ) )
238238 }
239239}
240240
241- impl Debug for AllowOrigin {
241+ impl Debug for TimingAllowOrigin {
242242 fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
243243 let mut list = f. debug_list ( ) ;
244244 for origin in & self . origins {
@@ -255,27 +255,27 @@ impl Debug for AllowOrigin {
255255// NOTE: this origin is different than the origin in the fetch spec. It needs to
256256// be its own type.
257257#[ derive( Debug , Clone , Eq , PartialEq ) ]
258- pub enum Origin {
258+ pub enum TimingOrigin {
259259 /// An origin URL.
260260 Url ( Url ) ,
261261 /// Allow all origins.
262262 Wildcard ,
263263}
264264
265- impl From < Url > for Origin {
265+ impl From < Url > for TimingOrigin {
266266 fn from ( url : Url ) -> Self {
267- Origin :: Url ( url)
267+ TimingOrigin :: Url ( url)
268268 }
269269}
270270
271- impl From < Origin > for HeaderValue {
272- fn from ( entry : Origin ) -> HeaderValue {
271+ impl From < TimingOrigin > for HeaderValue {
272+ fn from ( entry : TimingOrigin ) -> HeaderValue {
273273 unsafe {
274274 match entry {
275- Origin :: Url ( url) => {
275+ TimingOrigin :: Url ( url) => {
276276 HeaderValue :: from_bytes_unchecked ( format ! ( "{}" , url) . into_bytes ( ) )
277277 }
278- Origin :: Wildcard => {
278+ TimingOrigin :: Wildcard => {
279279 HeaderValue :: from_bytes_unchecked ( String :: from ( "*" ) . into_bytes ( ) )
280280 }
281281 }
@@ -290,43 +290,43 @@ mod test {
290290
291291 #[ test]
292292 fn smoke ( ) -> crate :: Result < ( ) > {
293- let mut origins = AllowOrigin :: new ( ) ;
294- origins. push ( Origin :: Wildcard ) ;
293+ let mut origins = TimingAllowOrigin :: new ( ) ;
294+ origins. push ( TimingOrigin :: Wildcard ) ;
295295
296296 let mut headers = Headers :: new ( ) ;
297297 origins. apply ( & mut headers) ;
298298
299- let origins = AllowOrigin :: from_headers ( headers) ?. unwrap ( ) ;
299+ let origins = TimingAllowOrigin :: from_headers ( headers) ?. unwrap ( ) ;
300300 let origin = origins. iter ( ) . next ( ) . unwrap ( ) ;
301- assert_eq ! ( origin, & Origin :: Wildcard ) ;
301+ assert_eq ! ( origin, & TimingOrigin :: Wildcard ) ;
302302 Ok ( ( ) )
303303 }
304304
305305 #[ test]
306306 fn multi ( ) -> crate :: Result < ( ) > {
307- let mut origins = AllowOrigin :: new ( ) ;
308- origins. push ( Origin :: Wildcard ) ;
309- origins. push ( Origin :: Url ( Url :: parse ( "https://mozilla.org/" ) ?) ) ;
307+ let mut origins = TimingAllowOrigin :: new ( ) ;
308+ origins. push ( TimingOrigin :: Wildcard ) ;
309+ origins. push ( TimingOrigin :: Url ( Url :: parse ( "https://mozilla.org/" ) ?) ) ;
310310
311311 let mut headers = Headers :: new ( ) ;
312312 origins. apply ( & mut headers) ;
313313
314- let origins = AllowOrigin :: from_headers ( headers) ?. unwrap ( ) ;
314+ let origins = TimingAllowOrigin :: from_headers ( headers) ?. unwrap ( ) ;
315315 let mut origins = origins. iter ( ) ;
316316 let origin = origins. next ( ) . unwrap ( ) ;
317- assert ! ( matches!( origin, Origin :: Wildcard ) ) ;
317+ assert ! ( matches!( origin, TimingOrigin :: Wildcard ) ) ;
318318
319319 let origin = origins. next ( ) . unwrap ( ) ;
320320 let rhs = Url :: parse ( "https://mozilla.org/" ) ?;
321- assert_eq ! ( origin, & Origin :: Url ( rhs) ) ;
321+ assert_eq ! ( origin, & TimingOrigin :: Url ( rhs) ) ;
322322 Ok ( ( ) )
323323 }
324324
325325 #[ test]
326326 fn bad_request_on_parse_error ( ) -> crate :: Result < ( ) > {
327327 let mut headers = Headers :: new ( ) ;
328328 headers. insert ( TIMING_ALLOW_ORIGIN , "server; <nori ate your param omnom>" ) ;
329- let err = AllowOrigin :: from_headers ( headers) . unwrap_err ( ) ;
329+ let err = TimingAllowOrigin :: from_headers ( headers) . unwrap_err ( ) ;
330330 assert_eq ! ( err. status( ) , 400 ) ;
331331 Ok ( ( ) )
332332 }
0 commit comments