netstack3_core

Trait CoreContext

Source
pub trait CoreContext<I, BC>:
    StateContext<I, BC>
    + CounterContext<UdpCounters<I>>
    + TcpContext<I, BC>
    + IcmpEchoStateContext<I, BC>
    + IcmpStateContext
    + IpLayerContext<I, BC>
    + NudContext<I, EthernetLinkDevice, BC>
    + IpDeviceConfigurationContext<I, BC>
    + IpDeviceConfigurationHandler<I, BC>
    + IpSocketContext<I, BC>
    + DeviceIdContext<AnyDevice, DeviceId = DeviceId<BC>, WeakDeviceId = WeakDeviceId<BC>>
    + DeviceIdContext<EthernetLinkDevice, DeviceId = EthernetDeviceId<BC>, WeakDeviceId = EthernetWeakDeviceId<BC>>
    + RawIpSocketMapContext<I, BC>
    + RawIpSocketStateContext<I, BC>
    + MulticastForwardingStateContext<I, BC>
where I: IpExt, BC: IpBindingsContext<I>,
{ }
Expand description

A marker trait for core context implementations.

This trait allows bindings to express trait bounds on routines that have IP type parameters. It is an umbrella of all the core contexts that must be implemented by crate::context::UnlockedCoreCtx to satisfy all the API objects vended by crate::api::CoreApi.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§