pub struct UnregisteredScheme<'scheme> { /* private fields */ }Expand description
A scheme that is not in the registered schemes.
This is case-insensitive, and this is reflected in the equality and hash functions.
Implementations§
Source§impl UnregisteredScheme<'_>
impl UnregisteredScheme<'_>
Sourcepub fn as_borrowed(&self) -> UnregisteredScheme<'_>
pub fn as_borrowed(&self) -> UnregisteredScheme<'_>
Returns a new unregistered scheme which is identical but has a lifetime tied to this unregistered scheme.
Sourcepub fn as_str(&self) -> &str
pub fn as_str(&self) -> &str
Returns a str representation of the scheme.
The case-sensitivity of the original string is preserved.
§Examples
use std::convert::TryFrom;
use uriparse::UnregisteredScheme;
let scheme = UnregisteredScheme::try_from("TEST-scheme").unwrap();
assert_eq!(scheme.as_str(), "TEST-scheme");Sourcepub fn into_owned(self) -> UnregisteredScheme<'static>
pub fn into_owned(self) -> UnregisteredScheme<'static>
Converts the UnregisteredScheme into an owned copy.
If you construct the scheme from a source with a non-static lifetime, you may run into lifetime problems due to the way the struct is designed. Calling this function will ensure that the returned value has a static lifetime.
This is different from just cloning. Cloning the scheme will just copy the references, and thus the lifetime will remain the same.
Sourcepub fn is_normalized(&self) -> bool
pub fn is_normalized(&self) -> bool
Returns whether the scheme is normalized.
A normalized scheme will be all lowercase.
This function runs in constant-time.
§Examples
use std::convert::TryFrom;
use uriparse::UnregisteredScheme;
let scheme = UnregisteredScheme::try_from("myscheme").unwrap();
assert!(scheme.is_normalized());
let mut scheme = UnregisteredScheme::try_from("MyScHeMe").unwrap();
assert!(!scheme.is_normalized());
scheme.normalize();
assert!(scheme.is_normalized());Sourcepub fn normalize(&mut self)
pub fn normalize(&mut self)
Normalizes the scheme so that it is all lowercase.
§Examples
use std::convert::TryFrom;
use uriparse::UnregisteredScheme;
let mut scheme = UnregisteredScheme::try_from("myscheme").unwrap();
scheme.normalize();
assert_eq!(scheme, "myscheme");
let mut scheme = UnregisteredScheme::try_from("MyScHeMe").unwrap();
scheme.normalize();
assert_eq!(scheme, "myscheme");Trait Implementations§
Source§impl AsRef<[u8]> for UnregisteredScheme<'_>
impl AsRef<[u8]> for UnregisteredScheme<'_>
Source§impl AsRef<str> for UnregisteredScheme<'_>
impl AsRef<str> for UnregisteredScheme<'_>
Source§impl<'scheme> Clone for UnregisteredScheme<'scheme>
impl<'scheme> Clone for UnregisteredScheme<'scheme>
Source§fn clone(&self) -> UnregisteredScheme<'scheme>
fn clone(&self) -> UnregisteredScheme<'scheme>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more