Generic provider traits and Capability contract between the model and platform backends. Depends only on net-lattice-core — never on net-lattice-model.
bitflags::bitflags!{/// Runtime-dependent operating system features that cannot be expressed
/// through Rust trait implementation alone.
////// Distinct from provider traits: a backend either implements
/// `RouteProvider` or it doesn't, and that's fixed at compile time.
/// Whether the *running* kernel has, say, VRF support enabled is a fact
/// about the current machine, not the crate — see ARCHITECTURE.md's
/// `net-lattice-platform` section.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]pubstructCapability: u64 {
const IPV6 = 1 << 0;
const VRF = 1 << 1;
const NAMESPACES = 1 << 2;
const MONITORING = 1 << 3;
}}