pub struct Authority { /* fields omitted */ }
Represents the authority component of a URI.
Attempt to convert an Authority
from Bytes
.
This function will be replaced by a TryFrom
implementation once the
trait lands in stable.
extern crate bytes;
use bytes::Bytes;
let bytes = Bytes::from("example.com");
let authority = Authority::from_shared(bytes).unwrap();
assert_eq!(authority.host(), "example.com");
Attempt to convert an Authority
from a static string.
This function will not perform any copying, and the string will be
checked if it is empty or contains an invalid character.
This function panics if the argument contains invalid characters or
is empty.
let authority = Authority::from_static("example.com");
assert_eq!(authority.host(), "example.com");
Get the host of this Authority
.
The host subcomponent of authority is identified by an IP literal
encapsulated within square brackets, an IPv4 address in dotted- decimal
form, or a registered name. The host subcomponent is case-insensitive.
abc://username:password@example.com:123/path/data?key=value&key2=value2#fragid1
|---------|
|
host
let authority: Authority = "example.org:80".parse().unwrap();
assert_eq!(authority.host(), "example.org");
Get the port of this Authority
.
The port subcomponent of authority is designated by an optional port
number in decimal following the host and delimited from it by a single
colon (":") character. A value is only returned if one is specified in
the URI string, i.e., default port values are not returned.
abc://username:password@example.com:123/path/data?key=value&key2=value2#fragid1
|-|
|
port
Authority with port
let authority: Authority = "example.org:80".parse().unwrap();
assert_eq!(authority.port(), Some(80));
Authority without port
let authority: Authority = "example.org".parse().unwrap();
assert!(authority.port().is_none());
Return a str representation of the authority
Converts this Authority
back to a sequence of bytes
Performs copy-assignment from source
. Read more
This method tests for self
and other
values to be equal, and is used by ==
. Read more
[−]
This method tests for !=
.
Case-insensitive equality
let authority: Authority = "HELLO.com".parse().unwrap();
assert_eq!(authority, "hello.coM");
assert_eq!("hello.com", authority);
This method tests for self
and other
values to be equal, and is used by ==
. Read more
[−]
This method tests for !=
.
This method tests for self
and other
values to be equal, and is used by ==
. Read more
[−]
This method tests for !=
.
This method tests for self
and other
values to be equal, and is used by ==
. Read more
[−]
This method tests for !=
.
This method tests for self
and other
values to be equal, and is used by ==
. Read more
[−]
This method tests for !=
.
This method tests for self
and other
values to be equal, and is used by ==
. Read more
[−]
This method tests for !=
.
This method tests for self
and other
values to be equal, and is used by ==
. Read more
[−]
This method tests for !=
.
Case-insensitive ordering
let authority: Authority = "DEF.com".parse().unwrap();
assert!(authority < "ghi.com");
assert!(authority > "abc.com");
This method returns an ordering between self
and other
values if one exists. Read more
[−]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
[−]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
[−]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
[−]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
This method returns an ordering between self
and other
values if one exists. Read more
[−]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
[−]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
[−]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
[−]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
This method returns an ordering between self
and other
values if one exists. Read more
[−]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
[−]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
[−]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
[−]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
This method returns an ordering between self
and other
values if one exists. Read more
[−]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
[−]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
[−]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
[−]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
This method returns an ordering between self
and other
values if one exists. Read more
[−]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
[−]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
[−]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
[−]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
This method returns an ordering between self
and other
values if one exists. Read more
[−]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
[−]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
[−]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
[−]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
This method returns an ordering between self
and other
values if one exists. Read more
[−]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
[−]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
[−]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
[−]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
Case-insensitive hashing
let a: Authority = "HELLO.com".parse().unwrap();
let b: Authority = "hello.coM".parse().unwrap();
let mut s = DefaultHasher::new();
a.hash(&mut s);
let a = s.finish();
let mut s = DefaultHasher::new();
b.hash(&mut s);
let b = s.finish();
assert_eq!(a, b);
Feeds this value into the given [Hasher
]. Read more
Feeds a slice of this type into the given [Hasher
]. Read more
The associated error which can be returned from parsing.
Parses a string s
to return a value of this type. Read more
Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more