[−][src]Enum susy_multiaddr::Protocol
Protocol
describes all possible multiaddress protocols.
Variants
Dccp(u16)
Dns4(Cow<'a, str>)
Dns6(Cow<'a, str>)
Http
Https
Ip4(Ipv4Addr)
Ip6(Ipv6Addr)
P2pWebRtcDirect
P2pWebRtcStar
P2pWebSocketStar
Memory(u64)
Contains the "port" to contact. Similar to TCP or UDP, 0 means "assign me a port".
Onion(Cow<'a, [u8; 10]>, u16)
P2p(Multihash)
P2pCircuit
Quic
Sctp(u16)
Tcp(u16)
Udp(u16)
Udt
Unix(Cow<'a, str>)
For Unix
we use &str
instead of Path
to allow cross-platform usage of
Protocol
since encoding Paths
to bytes is platform-specific.
This means that the actual validation of paths needs to happen separately.
Utp
Ws
Wss
Methods
impl<'a> Protocol<'a>
[src]
pub fn from_str_parts<I>(iter: I) -> Result<Self> where
I: Iterator<Item = &'a str>,
[src]
I: Iterator<Item = &'a str>,
Parse a protocol value from the given iterator of string slices.
The parsing only consumes the minimum amount of string slices necessary to produce a well-formed protocol. The same iterator can thus be used to parse a sequence of protocols in succession. It is up to client code to check that iteration has finished whenever appropriate.
pub fn from_bytes(input: &'a [u8]) -> Result<(Self, &'a [u8])>
[src]
Parse a single Protocol
value from its byte slice representation,
returning the protocol as well as the remaining byte slice.
pub fn write_bytes<W: Write>(&self, w: &mut W) -> Result<()>
[src]
Encode this protocol by writing its binary representation into
the given Write
impl.
pub fn acquire<'b>(self) -> Protocol<'b>
[src]
Turn this Protocol
into one that owns its data, thus being valid for any lifetime.
Trait Implementations
impl<'a> PartialEq<Protocol<'a>> for Protocol<'a>
[src]
impl<'a> Clone for Protocol<'a>
[src]
fn clone(&self) -> Protocol<'a>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<'a> From<IpAddr> for Protocol<'a>
[src]
impl<'a> From<Ipv4Addr> for Protocol<'a>
[src]
impl<'a> From<Ipv6Addr> for Protocol<'a>
[src]
impl<'a> From<Protocol<'a>> for Multiaddr
[src]
impl<'a> Eq for Protocol<'a>
[src]
impl<'a> Display for Protocol<'a>
[src]
impl<'a> Debug for Protocol<'a>
[src]
impl<'a> FromIterator<Protocol<'a>> for Multiaddr
[src]
fn from_iter<T>(iter: T) -> Self where
T: IntoIterator<Item = Protocol<'a>>,
[src]
T: IntoIterator<Item = Protocol<'a>>,
Auto Trait Implementations
Blanket Implementations
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Same for T
type Output = T
Should always be Self