Trait GenericOverIp

Source
pub trait GenericOverIp<NewIp: Ip> {
    type Type;
}
Expand description

Marks types that are generic over IP version.

This should be implemented by types that contain a generic parameter I: Ip or A: IpAddress to allow them to be used with Ip::map_ip.

Implementations of this trait should generally be themselves generic over Ip. For example:

struct AddrAndSubnet<I: Ip> {
  addr: I::Addr,
  subnet: Subnet<I::Addr>
}

impl <I: Ip, NewIp: Ip> GenericOverIp<NewIp> for AddrAndSubnet<I> {
  type Type = AddrAndSubnet<NewIp>;
}

Required Associated Types§

Source

type Type

The type of Self when its IP-generic parameter is replaced with the type NewIp.

Implementations on Foreign Types§

Source§

impl<'s, NewIp: Ip, T: GenericOverIp<NewIp>> GenericOverIp<NewIp> for &'s T
where T::Type: 's,

Source§

type Type = &'s <T as GenericOverIp<NewIp>>::Type

Source§

impl<'s, NewIp: Ip, T: GenericOverIp<NewIp>> GenericOverIp<NewIp> for &'s mut T
where T::Type: 's,

Source§

type Type = &'s mut <T as GenericOverIp<NewIp>>::Type

Source§

impl<I: Ip> GenericOverIp<I> for Infallible

Source§

impl<I: Ip> GenericOverIp<I> for ()

Source§

impl<IpType: Ip> GenericOverIp<IpType> for bool

Source§

impl<IpType: Ip> GenericOverIp<IpType> for i8

Source§

impl<IpType: Ip> GenericOverIp<IpType> for i16

Source§

impl<IpType: Ip> GenericOverIp<IpType> for i32

Source§

impl<IpType: Ip> GenericOverIp<IpType> for i64

Source§

impl<IpType: Ip> GenericOverIp<IpType> for isize

Source§

impl<IpType: Ip> GenericOverIp<IpType> for u8

Source§

impl<IpType: Ip> GenericOverIp<IpType> for u16

Source§

impl<IpType: Ip> GenericOverIp<IpType> for u32

Source§

impl<IpType: Ip> GenericOverIp<IpType> for u64

Source§

impl<IpType: Ip> GenericOverIp<IpType> for usize

Source§

impl<IpType: Ip, R: GenericOverIp<IpType>, E: GenericOverIp<IpType>> GenericOverIp<IpType> for Result<R, E>

Source§

type Type = Result<<R as GenericOverIp<IpType>>::Type, <E as GenericOverIp<IpType>>::Type>

Source§

impl<IpType: Ip, T: GenericOverIp<IpType>> GenericOverIp<IpType> for Option<T>

Source§

type Type = Option<<T as GenericOverIp<IpType>>::Type>

Source§

impl<IpType: Ip, T: GenericOverIp<IpType>> GenericOverIp<IpType> for Vec<T>

Source§

type Type = Vec<<T as GenericOverIp<IpType>>::Type>

Source§

impl<P: Ip, A: GenericOverIp<P>, B: GenericOverIp<P>, C: GenericOverIp<P>, D: GenericOverIp<P>, E: GenericOverIp<P>, F: GenericOverIp<P>, G: GenericOverIp<P>, H: GenericOverIp<P>, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (A, B, C, D, E, F, G, H, I, J, K, L)

Source§

type Type = (<A as GenericOverIp<P>>::Type, <B as GenericOverIp<P>>::Type, <C as GenericOverIp<P>>::Type, <D as GenericOverIp<P>>::Type, <E as GenericOverIp<P>>::Type, <F as GenericOverIp<P>>::Type, <G as GenericOverIp<P>>::Type, <H as GenericOverIp<P>>::Type, <I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, B: GenericOverIp<P>, C: GenericOverIp<P>, D: GenericOverIp<P>, E: GenericOverIp<P>, F: GenericOverIp<P>, G: GenericOverIp<P>, H: GenericOverIp<P>, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (B, C, D, E, F, G, H, I, J, K, L)

Source§

type Type = (<B as GenericOverIp<P>>::Type, <C as GenericOverIp<P>>::Type, <D as GenericOverIp<P>>::Type, <E as GenericOverIp<P>>::Type, <F as GenericOverIp<P>>::Type, <G as GenericOverIp<P>>::Type, <H as GenericOverIp<P>>::Type, <I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, C: GenericOverIp<P>, D: GenericOverIp<P>, E: GenericOverIp<P>, F: GenericOverIp<P>, G: GenericOverIp<P>, H: GenericOverIp<P>, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (C, D, E, F, G, H, I, J, K, L)

Source§

type Type = (<C as GenericOverIp<P>>::Type, <D as GenericOverIp<P>>::Type, <E as GenericOverIp<P>>::Type, <F as GenericOverIp<P>>::Type, <G as GenericOverIp<P>>::Type, <H as GenericOverIp<P>>::Type, <I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, D: GenericOverIp<P>, E: GenericOverIp<P>, F: GenericOverIp<P>, G: GenericOverIp<P>, H: GenericOverIp<P>, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (D, E, F, G, H, I, J, K, L)

Source§

type Type = (<D as GenericOverIp<P>>::Type, <E as GenericOverIp<P>>::Type, <F as GenericOverIp<P>>::Type, <G as GenericOverIp<P>>::Type, <H as GenericOverIp<P>>::Type, <I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, E: GenericOverIp<P>, F: GenericOverIp<P>, G: GenericOverIp<P>, H: GenericOverIp<P>, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (E, F, G, H, I, J, K, L)

Source§

type Type = (<E as GenericOverIp<P>>::Type, <F as GenericOverIp<P>>::Type, <G as GenericOverIp<P>>::Type, <H as GenericOverIp<P>>::Type, <I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, F: GenericOverIp<P>, G: GenericOverIp<P>, H: GenericOverIp<P>, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (F, G, H, I, J, K, L)

Source§

type Type = (<F as GenericOverIp<P>>::Type, <G as GenericOverIp<P>>::Type, <H as GenericOverIp<P>>::Type, <I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, G: GenericOverIp<P>, H: GenericOverIp<P>, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (G, H, I, J, K, L)

Source§

type Type = (<G as GenericOverIp<P>>::Type, <H as GenericOverIp<P>>::Type, <I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, H: GenericOverIp<P>, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (H, I, J, K, L)

Source§

type Type = (<H as GenericOverIp<P>>::Type, <I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, I: GenericOverIp<P>, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (I, J, K, L)

Source§

type Type = (<I as GenericOverIp<P>>::Type, <J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, J: GenericOverIp<P>, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (J, K, L)

Source§

type Type = (<J as GenericOverIp<P>>::Type, <K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, K: GenericOverIp<P>, L: GenericOverIp<P>> GenericOverIp<P> for (K, L)

Source§

type Type = (<K as GenericOverIp<P>>::Type, <L as GenericOverIp<P>>::Type)

Source§

impl<P: Ip, L: GenericOverIp<P>> GenericOverIp<P> for (L,)

Source§

type Type = (<L as GenericOverIp<P>>::Type,)

Implementors§

Source§

impl<A, I: Ip> GenericOverIp<I> for SpecifiedAddr<A>

Source§

impl<A, I: Ip> GenericOverIp<I> for Subnet<A>

Source§

type Type = Subnet<<I as Ip>::Addr>

Source§

impl<A: GenericOverIp<I>, I: Ip, Z> GenericOverIp<I> for ZonedAddr<A, Z>

Source§

impl<A: GenericOverIp<I>, I: Ip, Z> GenericOverIp<I> for AddrAndZone<A, Z>

Source§

impl<A: IpAddress, I: Ip> GenericOverIp<I> for MulticastAddr<A>

Source§

impl<I: Ip> GenericOverIp<I> for Ipv4Addr

Source§

type Type = <I as Ip>::Addr

Source§

impl<I: Ip> GenericOverIp<I> for Ipv6Addr

Source§

type Type = <I as Ip>::Addr

Source§

impl<I: Ip, IpType> GenericOverIp<IpType> for IpVersionMarker<I>
where IpType: Ip,

Source§

impl<I: Ip, IpType> GenericOverIp<IpType> for PrefixLength<I>
where IpType: Ip,

Source§

type Type = PrefixLength<IpType>

Source§

impl<I: Ip, T> GenericOverIp<I> for IpInvariant<T>

Source§

impl<I: Ip, T, IpType> GenericOverIp<IpType> for IpMarked<I, T>
where IpType: Ip,

Source§

type Type = IpMarked<IpType, T>

impl<I: Ip, IpType> GenericOverIp<IpType> for UnicastSourceAndMulticastDestination<I>
where IpType: Ip,

impl<I: FidlRouteAdminIpExt, IpType> GenericOverIp<IpType> for RouteSetRequest<I>
where IpType: FidlRouteAdminIpExt + Ip,

impl<I: FidlRouteAdminIpExt, IpType> GenericOverIp<IpType> for RouteTableRequest<I>
where IpType: FidlRouteAdminIpExt + Ip,

impl<I: FidlRuleAdminIpExt, IpType> GenericOverIp<IpType> for RuleSetRequest<I>
where IpType: FidlRuleAdminIpExt + Ip,

impl<I: FidlRuleAdminIpExt, IpType> GenericOverIp<IpType> for RuleTableRequest<I>
where IpType: FidlRuleAdminIpExt + Ip,

impl<A, D, IpType: Ip> GenericOverIp<IpType> for ConnAddr<A, D>

impl<A, D, IpType: Ip> GenericOverIp<IpType> for ListenerAddr<A, D>
where A: GenericOverIp<IpType>, <A as GenericOverIp<IpType>>::Type:,

impl<A: IpAddress, IpType: Ip> GenericOverIp<IpType> for SocketIpAddr<A>
where IpType::Addr: IpAddress,

impl<A: IpAddress, IpType: Ip> GenericOverIp<IpType> for IpDeviceAddr<A>
where IpType::Addr: IpAddress,

impl<A: IpAddress, LI, IpType: Ip> GenericOverIp<IpType> for ListenerIpAddr<A, LI>
where IpType::Addr: IpAddress,

impl<A: IpAddress, NewIp: DualStackIpExt, LI, RI> GenericOverIp<NewIp> for DualStackConnIpAddr<A, LI, RI>

impl<I: DualStackIpExt, DS: GenericOverIp<I>, NDS: GenericOverIp<I>> GenericOverIp<I> for MaybeDualStack<DS, NDS>

impl<I: BroadcastIpExt, IpType> GenericOverIp<IpType> for WrapBroadcastMarker<I>
where IpType: BroadcastIpExt + Ip,

impl<IpType: Ip> GenericOverIp<IpType> for LocalAddressError

impl<IpType: Ip> GenericOverIp<IpType> for ZonedAddressError

impl<IpType: Ip> GenericOverIp<IpType> for SetDualStackEnabledError

impl<IpType: Ip> GenericOverIp<IpType> for ShutdownType

impl<IpType: Ip> GenericOverIp<IpType> for NotDualStackCapableError

impl<IpType: Ip> GenericOverIp<IpType> for NotSupportedError

impl<BT: BindingsTypes, IpType: Ip> GenericOverIp<IpType> for TimerId<BT>

impl<'a, I: DualStackIpExt, S: 'a + Clone + Debug + Default + Send + Sync, IpType> GenericOverIp<IpType> for WrapOtherStackIpOptions<'a, I, S>
where IpType: DualStackIpExt + Ip,

impl<'a, I: DualStackIpExt, S: 'a + Clone + Debug + Default + Send + Sync, IpType> GenericOverIp<IpType> for WrapOtherStackIpOptionsMut<'a, I, S>
where IpType: DualStackIpExt + Ip,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for MulticastInterfaceSelector<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for MulticastMembershipInterfaceSelector<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for SocketInfo<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for ConnInfo<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for ListenerInfo<A, D>
where IpType::Addr: IpAddress,

impl<I: IpExt, D: WeakDeviceIdentifier, IpType> GenericOverIp<IpType> for DatagramIpSpecificSocketOptions<I, D>
where IpType: IpExt + Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, S: DatagramSocketSpec + ?Sized, IpType> GenericOverIp<IpType> for IpOptions<I, D, S>
where IpType: IpExt + Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, S: DatagramSocketSpec, IpType> GenericOverIp<IpType> for SocketState<I, D, S>
where IpType: IpExt + Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, S: DatagramSocketSpec, IpType> GenericOverIp<IpType> for DatagramSocketSet<I, D, S>
where IpType: IpExt + Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, S: DatagramSocketSpec, IpType> GenericOverIp<IpType> for TxMetadata<I, D, S>
where IpType: IpExt + Ip,

impl<IpType: Ip> GenericOverIp<IpType> for ExpectedConnError

impl<IpType: Ip> GenericOverIp<IpType> for ExpectedUnboundError

impl<SE, IpType: Ip> GenericOverIp<IpType> for SendError<SE>

impl<D: WeakDeviceIdentifier, IpType: Ip> GenericOverIp<IpType> for EthernetTimerId<D>

impl<'a, I: IpExt, S, IpType> GenericOverIp<IpType> for TxPacket<'a, I, S>
where IpType: IpExt + Ip,

impl<I: Ip, IpType> GenericOverIp<IpType> for FilterTimerId<I>
where IpType: Ip,

impl<I: IpExt, B, IpType> GenericOverIp<IpType> for ForwardedPacket<I, B>
where IpType: IpExt + Ip,

impl<I: IpExt, B: ParseBuffer, IpType> GenericOverIp<IpType> for RawIpBody<I, B>
where IpType: IpExt + Ip,

impl<I: IpExt, DeviceClass, RuleInfo, IpType> GenericOverIp<IpType> for Hook<I, DeviceClass, RuleInfo>
where IpType: IpExt + Ip,

impl<I: IpExt, DeviceClass, RuleInfo, IpType> GenericOverIp<IpType> for Routine<I, DeviceClass, RuleInfo>
where IpType: IpExt + Ip,

impl<I: IpExt, DeviceClass, RuleInfo, IpType> GenericOverIp<IpType> for Routines<I, DeviceClass, RuleInfo>
where IpType: IpExt + Ip,

impl<I: IpExt, DeviceClass, RuleInfo, IpType> GenericOverIp<IpType> for Rule<I, DeviceClass, RuleInfo>
where IpType: IpExt + Ip,

impl<I: IpExt, IpType> GenericOverIp<IpType> for Tuple<I>
where IpType: IpExt + Ip,

impl<IpType: Ip> GenericOverIp<IpType> for TransportProtocol

impl<RuleInfo, IpType: Ip> GenericOverIp<IpType> for ValidationError<RuleInfo>

impl<I: IpExt, D: WeakDeviceIdentifier, BT: IcmpEchoBindingsTypes, IpType> GenericOverIp<IpType> for IcmpSocketId<I, D, BT>
where IpType: IpExt + Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, BT: IcmpEchoBindingsTypes, IpType> GenericOverIp<IpType> for IcmpSockets<I, D, BT>
where IpType: IpExt + Ip,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for AddableEntry<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for Entry<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, NewIp: BroadcastIpExt> GenericOverIp<NewIp> for NextHop<A>

impl<D, IpType: Ip> GenericOverIp<IpType> for AddableEntryEither<D>

impl<D, IpType: Ip> GenericOverIp<IpType> for EntryEither<D>

impl<DeviceId, I: Ip, Instant, IpType> GenericOverIp<IpType> for IpDeviceEvent<DeviceId, I, Instant>
where IpType: Ip,

impl<DeviceId, I: IpLayerIpExt, IpType> GenericOverIp<IpType> for IpLayerEvent<DeviceId, I>
where IpType: IpLayerIpExt + Ip,

impl<I: Ip, D, IpType> GenericOverIp<IpType> for RoutingTable<I, D>
where IpType: Ip,

impl<I: Ip, IpType> GenericOverIp<IpType> for MulticastForwardingTimerId<I>
where IpType: Ip,

impl<I: Ip, IpType> GenericOverIp<IpType> for FragmentTimerId<I>
where IpType: Ip,

impl<I: Ip, L: LinkDevice, D: WeakDeviceIdentifier, IpType> GenericOverIp<IpType> for NudTimerId<I, L, D>
where IpType: Ip,

impl<I: BroadcastIpExt, D, IpType> GenericOverIp<IpType> for ResolvedRoute<I, D>
where IpType: BroadcastIpExt + Ip,

impl<I: IpExt, BT: IcmpBindingsTypes, IpType> GenericOverIp<IpType> for IcmpState<I, BT>
where IpType: IpExt + Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, BT: RawIpSocketsBindingsTypes, IpType> GenericOverIp<IpType> for RawIpSocketId<I, D, BT>
where IpType: IpExt + Ip,

impl<I: IpExt, IpType> GenericOverIp<IpType> for ReceiveIpPacketMeta<I>
where IpType: IpExt + Ip,

impl<I: IpExt, IpType> GenericOverIp<IpType> for TransparentLocalDelivery<I>
where IpType: IpExt + Ip,

impl<I: IpDeviceIpExt, D: WeakDeviceIdentifier, A: IpAddressIdSpec, IpType> GenericOverIp<IpType> for IpDeviceTimerId<I, D, A>
where IpType: IpDeviceIpExt + Ip,

impl<I: IpLayerIpExt, D, IpType> GenericOverIp<IpType> for MulticastForwardingEvent<I, D>
where IpType: IpLayerIpExt + Ip,

impl<I: IpLayerIpExt, D: StrongDeviceIdentifier, BT: IpStateBindingsTypes, IpType> GenericOverIp<IpType> for IpStateInner<I, D, BT>
where IpType: IpLayerIpExt + Ip,

impl<I: IcmpIpExt, IpType> GenericOverIp<IpType> for RawIpSocketIcmpFilter<I>
where IpType: IcmpIpExt + Ip,

impl<I: IpCountersIpExt, C: CounterRepr, IpType> GenericOverIp<IpType> for IpCounters<I, C>
where IpType: IpCountersIpExt + Ip,

impl<I: MulticastRouteIpExt, IpType> GenericOverIp<IpType> for MulticastRouteKey<I>
where IpType: MulticastRouteIpExt + Ip,

impl<IpType: Ip> GenericOverIp<IpType> for IpLayerTimerId

impl<IpType: Ip> GenericOverIp<IpType> for ResolveRouteError

impl<IpType: Ip> GenericOverIp<IpType> for IpDeviceConfigurationUpdate

impl<L: LinkUnicastAddress, DeviceId, I: Ip, Instant, IpType> GenericOverIp<IpType> for Event<L, DeviceId, I, Instant>
where IpType: Ip,

impl<S: GenericOverIp<I>, I: Ip> GenericOverIp<I> for AddressStatus<S>

impl<T, I: Ip> GenericOverIp<I> for Mutex<T>
where T: GenericOverIp<I>,

impl<T, I: Ip> GenericOverIp<I> for RwLock<T>
where T: GenericOverIp<I>,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for SocketInfo<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for BoundInfo<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for ConnectionInfo<A, D>
where IpType::Addr: IpAddress,

impl<A: IpAddress, D, IpType: Ip> GenericOverIp<IpType> for SocketAddr<A, D>
where IpType::Addr: IpAddress,

impl<D, IpType: Ip> GenericOverIp<IpType> for UnboundInfo<D>

impl<D: WeakDeviceIdentifier, BT: TcpBindingsTypes, IpType: Ip> GenericOverIp<IpType> for TcpTimerId<D, BT>

impl<I: DualStackIpExt, D: WeakDeviceIdentifier, BT: TcpBindingsTypes, IpType> GenericOverIp<IpType> for DemuxState<I, D, BT>
where IpType: DualStackIpExt + Ip,

impl<I: DualStackIpExt, D: WeakDeviceIdentifier, BT: TcpBindingsTypes, IpType> GenericOverIp<IpType> for TcpSocketId<I, D, BT>
where IpType: DualStackIpExt + Ip,

impl<I: DualStackIpExt, D: WeakDeviceIdentifier, BT: TcpBindingsTypes, IpType> GenericOverIp<IpType> for TcpState<I, D, BT>
where IpType: DualStackIpExt + Ip,

impl<I: DualStackIpExt, D: WeakDeviceIdentifier, BT: TcpBindingsTypes, IpType> GenericOverIp<IpType> for WeakTcpSocketId<I, D, BT>
where IpType: DualStackIpExt + Ip,

impl<IpType: Ip> GenericOverIp<IpType> for AcceptError

impl<IpType: Ip> GenericOverIp<IpType> for BindError

impl<IpType: Ip> GenericOverIp<IpType> for ConnectError

impl<IpType: Ip> GenericOverIp<IpType> for ListenError

impl<IpType: Ip> GenericOverIp<IpType> for OriginalDestinationError

impl<IpType: Ip> GenericOverIp<IpType> for SetDeviceError

impl<IpType: Ip> GenericOverIp<IpType> for SetReuseAddrError

impl<IpType: Ip> GenericOverIp<IpType> for NoConnection

impl<I: Ip, IpType> GenericOverIp<IpType> for UdpPacketMeta<I>
where IpType: Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, BT: UdpBindingsTypes, IpType> GenericOverIp<IpType> for BoundSockets<I, D, BT>
where IpType: IpExt + Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, BT: UdpBindingsTypes, IpType> GenericOverIp<IpType> for UdpSocketId<I, D, BT>
where IpType: IpExt + Ip,

impl<I: IpExt, D: WeakDeviceIdentifier, BT: UdpBindingsTypes, IpType> GenericOverIp<IpType> for UdpState<I, D, BT>
where IpType: IpExt + Ip,

impl<IpType: Ip> GenericOverIp<IpType> for SendError

impl<B: SplitByteSlice, I: IpExt> GenericOverIp<I> for Ipv4Packet<B>

impl<B: SplitByteSlice, I: IpExt> GenericOverIp<I> for Ipv6Packet<B>

impl<I: IcmpIpExt, B: SplitByteSliceMut> GenericOverIp<I> for Icmpv4PacketRaw<B>

impl<I: IcmpIpExt, B: SplitByteSliceMut> GenericOverIp<I> for Icmpv6PacketRaw<B>