Enum parity_multiaddr::Protocol
source · pub enum Protocol<'a> {
Show 23 variants
Dccp(u16),
Dns4(Cow<'a, str>),
Dns6(Cow<'a, str>),
Http,
Https,
Ip4(Ipv4Addr),
Ip6(Ipv6Addr),
P2pWebRtcDirect,
P2pWebRtcStar,
P2pWebSocketStar,
Memory,
Onion(Cow<'a, [u8; 10]>, u16),
P2p(Multihash),
P2pCircuit,
Quic,
Sctp(u16),
Tcp(u16),
Udp(u16),
Udt,
Unix(Cow<'a, str>),
Utp,
Ws,
Wss,
}Expand description
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
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
Implementations
sourceimpl<'a> Protocol<'a>
impl<'a> Protocol<'a>
sourcepub fn from_str_parts<I>(iter: I) -> Result<Self>where
I: Iterator<Item = &'a str>,
pub fn from_str_parts<I>(iter: I) -> Result<Self>where
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.
sourcepub fn from_bytes(input: &'a [u8]) -> Result<(Self, &'a [u8])>
pub fn from_bytes(input: &'a [u8]) -> Result<(Self, &'a [u8])>
Parse a single Protocol value from its byte slice representation,
returning the protocol as well as the remaining byte slice.
Trait Implementations
sourceimpl<'a> FromIterator<Protocol<'a>> for Multiaddr
impl<'a> FromIterator<Protocol<'a>> for Multiaddr
sourcefn from_iter<T>(iter: T) -> Selfwhere
T: IntoIterator<Item = Protocol<'a>>,
fn from_iter<T>(iter: T) -> Selfwhere
T: IntoIterator<Item = Protocol<'a>>,
Creates a value from an iterator. Read more
sourceimpl<'a> PartialEq<Protocol<'a>> for Protocol<'a>
impl<'a> PartialEq<Protocol<'a>> for Protocol<'a>
impl<'a> Eq for Protocol<'a>
impl<'a> StructuralEq for Protocol<'a>
impl<'a> StructuralPartialEq for Protocol<'a>
Auto Trait Implementations
impl<'a> RefUnwindSafe for Protocol<'a>
impl<'a> Send for Protocol<'a>
impl<'a> Sync for Protocol<'a>
impl<'a> Unpin for Protocol<'a>
impl<'a> UnwindSafe for Protocol<'a>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more