pub struct HostSource { /* private fields */ }Expand description
A CSP host-source value: optional scheme, a Domain (which may
itself be a wildcard subdomain), optional port (concrete or *),
optional path.
Construct directly from a Domain for the common case, or via
HostSource::try_parse from a wire-format string.
Implementations§
Source§impl HostSource
impl HostSource
Sourcepub fn try_parse(s: &str) -> Result<Self, Error>
pub fn try_parse(s: &str) -> Result<Self, Error>
Parse a CSP host-source from its wire form
([scheme://]host[:port][/path]). Hosts with a leading *.
wildcard, port *, and arbitrary path tails are all accepted.
Sourcepub fn port(&self) -> Option<HostSourcePort>
pub fn port(&self) -> Option<HostSourcePort>
The optional port component.
Sourcepub fn path(&self) -> Option<&str>
pub fn path(&self) -> Option<&str>
The optional path component (kept verbatim, including the
leading /).
Sourcepub fn with_scheme(self, scheme: Protocol) -> Self
pub fn with_scheme(self, scheme: Protocol) -> Self
Attach a scheme component (rendered as <scheme>://…).
Sourcepub fn set_scheme(&mut self, scheme: Protocol) -> &mut Self
pub fn set_scheme(&mut self, scheme: Protocol) -> &mut Self
Attach a scheme component (rendered as <scheme>://…).
Sourcepub fn with_any_port(self) -> Self
pub fn with_any_port(self) -> Self
Attach the * (any-port) component.
Sourcepub fn set_any_port(&mut self) -> &mut Self
pub fn set_any_port(&mut self) -> &mut Self
Attach the * (any-port) component.
Trait Implementations§
Source§impl Clone for HostSource
impl Clone for HostSource
Source§fn clone(&self) -> HostSource
fn clone(&self) -> HostSource
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for HostSource
impl Debug for HostSource
Source§impl Display for HostSource
impl Display for HostSource
impl Eq for HostSource
Source§impl From<Domain> for HostSource
impl From<Domain> for HostSource
Source§impl From<HostSource> for SourceExpression
impl From<HostSource> for SourceExpression
Source§fn from(h: HostSource) -> Self
fn from(h: HostSource) -> Self
Converts to this type from the input type.
Source§impl FromStr for HostSource
impl FromStr for HostSource
Source§impl Hash for HostSource
impl Hash for HostSource
Source§impl PartialEq for HostSource
impl PartialEq for HostSource
Source§fn eq(&self, other: &HostSource) -> bool
fn eq(&self, other: &HostSource) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for HostSource
Source§impl<'a> TryFrom<&'a str> for HostSource
impl<'a> TryFrom<&'a str> for HostSource
Auto Trait Implementations§
impl !Freeze for HostSource
impl RefUnwindSafe for HostSource
impl Send for HostSource
impl Sync for HostSource
impl Unpin for HostSource
impl UnsafeUnpin for HostSource
impl UnwindSafe for HostSource
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more